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#

ProviderBatch discountAlso worth knowing
OpenAI50% off nearly every model, results within 24hFlex tier: same 50% off, synchronous-ish, for supported models
Anthropic50% off input and outputStacks with prompt-cache pricing
Google (Gemini)50% offFlex matches Batch; Priority costs 1.8x
xAI20% off — only grok-4.3 and grok-4.20 variantsgrok-4.6 / 4.5 get no batch discount
Fireworks50% off serverless ratesPriority ~1.5x, Fast ~2x
Mistral50% offStated in their FAQ
DeepSeekNo batch API — but off-peak halves everythingPeak 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.