LLM Batch Cost Estimator

A 10,000-row CSV job with a 500-token system prompt, 150 tokens per row and 100 output tokens on GPT-4.1 costs about $21.00 at standard prices, $13.50 with the prompt cache and $10.50 with the Batch API (prices checked 2026-10-15).

Token counts are estimates from text length, not exact tokenizer counts. Treat the total as a guide and test a few rows on the API first.

Prices checked on . Prices change often. Check the official pricing page before you rely on this number. All amounts are in US dollars.

OpenAI · Anthropic · Google · Mistral · DeepSeek

Did this solve your problem?
Prefer us on Google

How to use

  1. Choose a CSV file or paste the rows. The file is read in your browser and never uploaded. Tick the columns the prompt should use.
  2. Write a system prompt and a row template. Put a column name in braces, such as {review}, and each row fills it in.
  3. Set the output as a fixed token count per row, or paste a JSON schema to size a sample answer. Pick a model and read the total, the cost per row and the table of cache and batch savings.

How it works

Input tokens per row = tokens of the system prompt (plus the schema, if you paste one) + tokens of the row template after the column values are filled in. Tokens are estimated from the text length, not counted with each vendor tokenizer.

Estimation ratios: Claude models use 2.5 characters or 0.555 words per token (Anthropic documentation), all other models use 4 characters or 0.6 to 0.8 words per token. The larger of the character and word estimates is used, so the figure leans high.

Output tokens per row = the number you enter, or the tokens of a sample JSON answer built from your schema (strings of the length you set, three array items, first enum value) when a schema is given.

Total = sum over rows of (input tokens × input price + output tokens × output price) ÷ 1,000,000. Prices are US dollars per million tokens from the LLM API Cost Calculator.

Prompt cache: the system prompt repeats in every request, so the first request writes it to the cache and the other rows read it at the cached input price. Batch API: the vendor batch prices apply, which are 50% of standard. Both can be combined where the vendor allows it.

Not included: cache write surcharges, minimum cacheable prompt sizes, long-prompt tiers, retries, reasoning tokens, tool fees and taxes.

FAQ

Are the token counts exact?

No. They are estimates from text length, with a different ratio for Claude and for other models. Real counts differ by tokenizer and language, often by 10% or more. For an exact count of one prompt use the Token Counter, or send a few rows to the API and read the usage numbers.

Is my CSV uploaded?

No. The file is read by your browser and the estimate runs on your device. Nothing is sent to a server.

How is the cache saving calculated?

Only the part that is identical in every request, the system prompt and the schema, can hit the cache. The first request misses and the remaining rows hit. Row text is always billed at the normal input price. Vendors set a minimum prompt size for caching, so a very short system prompt may not cache at all.

How much does the Batch API save?

Batch prices are half of standard on the pages checked, with results returned within about a day instead of immediately. Models without a batch price are shown at the standard rate and marked.

How does a JSON schema change the cost?

The schema is added to the input of every request, and the answer is sized from a sample JSON object built from it. Real answers vary, so set the string length and array size close to what your data produces.

Why does a large file take a moment?

Every row is filled into the template and sized one by one in your browser. Files with hundreds of thousands of rows can take several seconds.