Batch mode halves your LLM bill, but parse failures can take it all back

Running deferrable LLM work through a batch endpoint costs roughly half as much per task as running the same work synchronously, and on some tasks the saving is larger. Two things matter more than the mode switch, though: when models tie on quality, the cheapest option is sometimes a sync call on a different model, and unparseable output can quietly eat more of your spend than batching saves. This post walks through what the benchmark data shows on each.

The discount is real, and it is about half

The benchmark prices the same task in both modes, so the comparison is direct. Running GPT-5.5 on taxonomy matching through batch costs $0.09 per task against $0.21 synchronously, 59% less, for work that can wait [^1][^2]. Summarizing structured content through batch costs $0.03 per task against $0.09 synchronously, a 70% saving [^3][^4].

The low end of the range is smaller but still meaningful. Running Gemini 3.5 Flash on the same kind of taxonomy work through batch costs $0.07 per task against $0.12 synchronously, 43% less [^1][^2][^5]. So “about half” is a fair planning number, with the exact gap depending on the model and the task.

There is one caveat before you bake that number into a budget. Batching is a per-model capability, and the benchmark material does not report how many models support it versus how many do not. Inside a batch-when-possible pipeline, a model without batch support stays at its sync price, so check each model rather than assuming the discount applies across the fleet.

When quality ties, the mode decides the model

Batching can change which model you would pick. For taxonomy assignment, GPT-5.6 Sol scores 8.32 out of 10 (±0.23) and costs $0.15 per task in batch mode, though that cost is estimated because the cell has no qualifying usage history of its own [^1][^2]. GPT-5.6 Terra scores 8.23 out of 10 (±0.24) and costs $0.08 per task in batch mode, measured on this model’s own usage and repriced at current rates [^1][^2]. The confidence intervals overlap, so quality is a tie and Terra is the cheaper batch choice.

The reverse also happens: sync on one model can undercut batch on another. Evaluating content against community policy is effectively a tie across three siblings, with GPT-5.6 Luna at 9.31 out of 10 (±0.33) and $0.0006 per task in sync mode [^6][^7][^8][^9], GPT-5.6 Sol at 9.3 out of 10 (±0.31) and $0.0037 per task in batch mode [^6][^8], and GPT-5.6 Terra at 9.3 out of 10 (±0.31) and $0.0045 per task in batch mode [^6][^7][^8][^9]. The batch discount is relative to the same model’s sync price; it does not make a model cheaper than a model that was already cheaper.

The practical rule is to treat quality ties as mode decisions. Compare the cheapest cell for each candidate, whatever mode it runs in, and only then ask whether the wait is acceptable.

Parse loss is the bigger leak

The quieter cost is output you pay for and cannot use. On post-relevance scoring, unparseable output lost $25.76 of $91.47 spent, or 28.2% [^10][^11][^12][^13]. On vetted-site selection it lost $19.04 of $32.39, or 58.8% [^14][^15].

Put those next to the discounts above and the ordering is clear. On vetted-site selection the parse loss is larger than the roughly-half discount batching typically delivers, so on that task a pipeline that switched to batch and fixed nothing else would still lose more to bad output than it gained from the mode switch.

Two habits follow from this. Price production on usable output rather than on tokens billed, and treat failure-prone selection and scoring tasks as batch-with-enforcement: run them in batch where the work can wait, but validate the output and retry failures rather than absorbing the loss silently.

A short routing rule

Default deferrable work to batch and take the roughly-half saving on any model that supports it. Before choosing a model on that basis, check whether a competitor ties on quality at a lower price in either mode, because the mode is only a multiplier on that model’s own sync cost. Then look at parse rates on the task, since a high failure rate can dwarf everything else in the calculation.

Where to look next

The numbers here come from the live benchmark, which prices each task in both modes and reports the confidence intervals behind every score. Start at https://llm-bench.kapualabs.com/ to set the quality bar your system needs, then open the per-task pages on fronset.ai (for example https://fronset.ai/benchmark/task/topic-taxonomy-matching/) to compare batch against sync pricing for your own workload and decide whether the discount justifies the wait.