LLM batch API discounts, compared
Updated August 20, 2026 · All prices verified against official provider pages.
If any part of your workload can wait, you are probably overpaying for it. Every major provider sells the exact same models at a steep discount for asynchronous processing — same weights, same quality, half the price.
The discounts#
| Provider | Batch discount | Also worth knowing |
|---|---|---|
| OpenAI | 50% off nearly every model, results within 24h | Flex tier: same 50% off, synchronous-ish, for supported models |
| Anthropic | 50% off input and output | Stacks with prompt-cache pricing |
| Google (Gemini) | 50% off | Flex matches Batch; Priority costs 1.8x |
| xAI | 20% off — only grok-4.3 and grok-4.20 variants | grok-4.6 / 4.5 get no batch discount |
| Fireworks | 50% off serverless rates | Priority ~1.5x, Fast ~2x |
| Mistral | 50% off | Stated in their FAQ |
| DeepSeek | No batch API — but off-peak halves everything | Peak is only 01:00–04:00 and 06:00–10:00 UTC |
DeepSeek deserves the special mention: there is no batch endpoint, but every hour outside two UTC windows bills at exactly half price automatically — input, cached input, and output alike. A scheduler is worth real money there.
What belongs in a batch#
The batch tier fits anything without a user waiting on the other end:
- Evals and regression suites — usually the first big win; teams run these daily at synchronous rates without noticing.
- Backfills and migrations — re-tagging, re-summarizing, re-embedding a corpus.
- Nightly pipelines — report generation, classification, enrichment, moderation queues.
- Data extraction at scale — the "run this prompt over 2M rows" jobs.
A surprising amount of "interactive" spend is actually batchable: if the result lands in a database and gets read later, it qualifies.
The fine print#
- Signal it and verify it. Batch usage is marked on the response (e.g.
service_tier: "batch"at OpenAI). If your cost tracking prices everything at standard rates, batch traffic shows up 2x too expensive — price from the response's reported tier. - Deadlines are soft ceilings. "Within 24 hours" is the contract; most batches complete much faster, but architect for the ceiling.
- Discount stacking differs. Anthropic's batch discount stacks with cache pricing; on the GPT-5.6 family, batch halves the cache-write fee too. Check the per-model pages for the exact stacked rates.
Finding your batchable spend#
The prerequisite for moving spend to batch is knowing which feature
generates it — an aggregate bill can't tell you that your eval suite is 30%
of the invoice. That per-feature split is exactly what
Marginal gives you: tag each call with feature, and the batchable
share of your bill becomes a number instead of a hunch.
Browse current model prices or run your workload through the cost calculator.
List prices are the easy part.
Marginal tracks what you actually spend — every LLM call priced at that day's rates and sliced by customer, feature, or any field you define. Integration is one track() call.