Batch LLM API price calculator

Paste a row that looks like your data, say how many of them you have, and pick a model. The tokens are counted with that model's own tokenizer and priced on the same rate card that bills a real job.

How the figures are worked out

Tokens are counted, not guessed

Your input is rendered through the chat template of the model you picked and then tokenized, which is exactly what the machine serving your job does. Two models given the same text produce different token counts, and the difference is large enough to matter: a template that adds a default system prompt can more than double a short row.

Two numbers, because a job has two

Estimated bill is your rows times the output they actually produce. That is what the invoice settles at.

Held at approval is your rows times the per-row output cap. Approving a job places a hold for the most it could cost, and the hold is released down to the real cost when the job finishes. A real job's cap is measured from a sample of your own rows unless you set max_output_tokens yourself. Here it starts at twice your typical answer, and you can change it.

Where this errs on the expensive side

An image is charged at the model's per-image token ceiling, because this page has not seen your picture. A real job reads the image and counts its true size, so a real bill lands at or under what you see here.

Input is priced at the full rate until you say part of it is a shared prefix. Repeated prefixes hit the prefix cache and bill at a quarter of the input rate, so a job with a long fixed system prompt costs meaningfully less than the default figure.

The floor

Every model carries a minimum job price, the median cost of starting a machine for it. A job whose tokens come to less than that is charged the floor, because approving it starts a real machine either way. A large job clears the floor and never sees it.

What this is not

An estimate from typical rows. Your real job is priced on your real file: every row is read, every image and clip is measured, and the quote you approve is computed from that. Nothing is charged before you approve it.

Submit a job Pricing details