Skip to main content
Home
GrN.dk

Main navigation

  • Articles
  • Cases
  • Services
  • Your Digital Project Manager
  • About Greg Nowak
  • Image Gallery
  • Contact
User account menu
  • Log in

Join my community / free newsletter — sign up here

Breadcrumb

  1. Home

Not Every AI Job Needs an Instant Answer: Batch the Backlog

Illustrated infographic summarizing: Not Every AI Job Needs an Instant Answer: Batch the Backlog

By Greg Nowak. Last updated 2026-07-28.

Most AI integrations start with the same pattern: send a request, wait for the answer, continue. That is appropriate when a customer is chatting with an assistant, an employee is drafting a live reply, or another system is blocked.

It is harder to justify when 40,000 product classifications simply need to be ready by tomorrow morning.

Classification, enrichment, evaluation, summarisation, and data-cleanup jobs are still important. They just are not interactive. Running every one of them through a synchronous API means paying for responsiveness the business may never use.

A backlog tells you something about the architecture

OpenAI's guidance on managing AI investments recommends matching commercial and processing options to proven demand. The useful point for project teams is that token price alone does not tell you whether a workflow is economical. What matters is the cost of reaching an accepted outcome, including failures, latency, retries, and human review.

So the first design question should not only be which model can do the job. It should also be when the result is genuinely needed. A five-second response and a next-morning result are different service levels. There is no good reason to force both through the same processing path.

Batch processing trades immediate availability for lower-cost asynchronous delivery. All three major providers now document versions of that trade:

  • OpenAI: The Batch API accepts asynchronous jobs with a 24-hour completion window and discounted pricing. Its batch object includes lifecycle states, input and output file identifiers, an error file, and separate counts for completed, failed, and total requests.
  • Anthropic: The Message Batches API is priced at 50% of standard API rates. Anthropic says most batches finish in under an hour, although processing may take up to 24 hours. One batch can contain as many as 100,000 requests or 256 MB, whichever limit is reached first.
  • Google: Gemini batch processing is documented at 50% of the equivalent standard interactive cost, with a target turnaround of 24 hours. Smaller jobs can be submitted inline; larger ones can use JSONL input files. The feature currently applies to the generateContent API.

If a workload can wait, asynchronous processing should at least be considered during the architecture review.

What the workload looks like Sensible starting point What must be in place
A person or system is waiting Synchronous processing A latency target, timeout handling, and useful failure feedback
The result is needed later today or overnight Batch candidate Deadline monitoring, reconciliation, and selective retries
A large classification, enrichment, or evaluation run repeats regularly Strong batch candidate Stable job IDs, validation, quality checks, and cost reporting
The payload contains sensitive data with strict retention requirements Decide after a controls review Confirmed endpoint storage, retention, region, and deletion rules
Most work can wait, but occasional requests are urgent Batch queue with a synchronous fallback Explicit urgency criteria and an auditable override
A practical routing guide: the business deadline suggests the processing path, while operational and data requirements decide whether that path is acceptable.

The discount is only one part of the decision

Cheaper processing is attractive, but it cannot override the rules for handling the data. Changing the processing mode may also change where inputs and outputs are stored and how long they remain available.

OpenAI's endpoint controls table lists /v1/batches as retaining application state until deletion and as ineligible for Zero Data Retention. By comparison, /v1/responses and /v1/chat/completions are listed as eligible, subject to the documented limitations.

Anthropic says batch request and response data may be stored for up to 29 days after the batch is created. Results remain available during that period, and completed batches can be deleted through the API.

Moving a synchronous call into a batch is therefore more than a pricing change. The team needs to review the payload, provider, endpoint, region, project settings, and deletion process. Depending on the dataset, the right answer may be to keep the synchronous route, redact fields before submission, or exclude that workload from batching.

Submitting a file is the easy part

A JSONL upload does not make a dependable batch system. The real work sits around the provider call: choosing eligible records, tracking them through processing, and importing the results without losing or duplicating anything.

  1. Define the service level. Record the business deadline, expected volume, data sensitivity, model requirement, and acceptable fallback. “Non-urgent” should be a deliberate category, not an assumption buried in code.
  2. Give every job and item a stable ID. The source identifier must survive export, submission, download, retry, and reconciliation. Otherwise, a perfectly valid model response can still be unusable to the business.
  3. Validate locally. Check required fields, encoding, request size, supported endpoints, model availability, and provider limits before uploading. A malformed file is faster to diagnose before it reaches the provider.
  4. Keep a submission record. Store the internal job ID, provider batch ID, submission time, requested completion window, model, prompt version, item count, and expected cost basis. That record becomes essential when a job is late or an output is questioned.
  5. Monitor the full lifecycle. The worker needs to detect validation failures, completion, expiry, cancellation, and partial failures. An overdue job should trigger an alert before it misses the business deadline.
  6. Reconcile item by item. Compare the expected IDs with successful outputs and errors. A completed batch does not prove that every request succeeded. OpenAI's batch object, for example, reports completed and failed counts separately.
  7. Retry only what should be retried. Resubmit retryable failures with a recorded reason and retry count. Re-running the whole batch wastes money and may duplicate downstream updates.
  8. Check the outputs. Schema validation, allowed-value checks, sampling, and task-specific evaluations still apply. Asynchronous delivery changes the mechanics, not the quality threshold.
  9. Report cost per accepted outcome. Track input and output usage alongside failures, retries, rejected outputs, and review effort. A lower token rate is useful only if the resulting work is accepted.

This does not have to become a large platform. A straightforward Python or PHP queue can handle the pattern: a scheduler selects eligible records, a producer creates validated requests, a provider adapter submits them, and a reconciliation worker imports the results. Keeping provider-specific details behind adapters also makes it easier to compare OpenAI, Anthropic, and Google without rebuilding the surrounding business workflow.

Keep a lane open for genuinely urgent work

Batching works best as a routing decision, not a wholesale migration. An overnight catalogue refresh can wait. A correction that is holding up an order may need an immediate response.

The application should retain a synchronous fallback, but the urgency rules need teeth. If every caller can mark a request urgent, the batch queue will gradually empty and the saving will disappear. Log who or what selected the urgent path, why it was needed, and how often the override occurs. Frequent exceptions usually point to a poorly chosen service level or a process that genuinely needs interactive capacity.

Start with the AI calls already in production

The practical first step is an inventory: what each call does, daily volume, actual latency requirement, provider, endpoint, data class, failure rate, and current spend. Most organisations will find a mixed portfolio. Some calls should stay synchronous. Some may suit another supported processing mode. Others belong in a nightly or scheduled batch.

Run a controlled pilot with representative records and the same acceptance criteria for both paths. Compare completion time, successful reconciliation, quality, retries, review effort, and cost per accepted output. Once those figures are understood, the queue can become the default for that workload.

The aim is not to make useful AI work slower. It is to stop paying for immediacy when immediacy has no business value, while putting the monitoring, validation, retention controls, and fallback route in place to operate the cheaper path safely.

If that review has been sitting on the backlog, Greg can help map the existing calls, identify credible batch candidates, and turn the decision into a working Python or PHP queue with the operational safeguards around it.

Related on GrN.dk

  • A Voice Agent Is Only Ready When the Human Handoff Works
  • Background AI Tasks Need Queues, Not Just Longer API Calls
  • OpenAI Is Retiring Agent Builder: Save the Workflow, Not Just Prompts

Need help with this kind of work?

Review your AI processing mix Get in touch with Greg.

Sources

  • How to manage AI investments in the agentic era
  • OpenAI Batch API reference
  • Claude batch processing documentation
  • Gemini Batch API documentation
  • OpenAI API data controls by endpoint
Last modified
2026-07-28

Tags

  • AI automation
  • Batch API
  • OpenAI integration
  • cost optimization
  • python

Review Greg on Google

Greg Nowak Google Reviews

 

Written recommendations from Trafik og Veje, Aarhus Municipality (2011) and AgroTech (2010) — read them on LinkedIn.

Illustrated infographic summarizing: From Supplier PDFs to Product Data: Where AI Needs a Second Check
From Supplier PDFs to Product Data: Where AI Needs a Second Check
2026-09-07

Supplier files need more than extraction. Here’s how to check coverage, match SKUs, resolve unclear units and prices, and test product data before a catalogue import.

Illustrated infographic summarizing: Shorter TLS Certificates: Will Your Renewal Setup Keep Up?
Shorter TLS Certificates: Will Your Renewal Setup Keep Up?
2026-09-06

Shorter TLS certificates leave less room for renewal problems. Check domain validation, scheduling, deployment and the certificate your customers actually receive.

Illustrated infographic summarizing: Your AI Image Has Content Credentials. Will Your Website Keep Them?
Your AI Image Has Content Credentials. Will Your Website Keep Them?
2026-09-05

AI image credentials can disappear during routine website processing. Learn how to test your CMS, optimizer, CDN, and publishing workflow end to end.

Illustrated infographic summarizing: What Are Customers Asking? Let AI Find the Patterns in Support Tickets
What Are Customers Asking? Let AI Find the Patterns in Support Tickets
2026-09-04

AI-based ticket analysis can uncover recurring complaints, product defects and gaps in documentation—without the company needing yet another chatbot.

Illustrated infographic summarizing: OpenAI Has Machine Identity Now. Which Jobs Should Lose API Keys?
OpenAI Has Machine Identity Now. Which Jobs Should Lose API Keys?
2026-09-03

OpenAI’s X.509 workload identity can replace API keys for the right workloads. This practical framework helps teams decide where to start safely.

Illustrated infographic summarizing: WordPress 7.1 Exposes AI-Ready Actions. Who Gets to Run Them?
WordPress 7.1 Exposes AI-Ready Actions. Who Gets to Run Them?
2026-09-02

WordPress 7.1 helps AI agents discover and invoke site abilities. Here is how to keep exposure, authentication and permission firmly separate.

Illustrated infographic summarizing: From Sales Meeting to CRM: Automate Follow-Up Without Compromising Data Quality
From Sales Meeting to CRM: Automate Follow-Up Without Compromising Data Quality
2026-09-01

How to use AI for meeting notes and follow-up while fixed rules protect CRM data, customer matching and the sales pipeline from errors and premature changes.

Illustrated infographic summarizing: Your AI Gateway Can Name the User. Decide What That Log Is For
Your AI Gateway Can Name the User. Decide What That Log Is For
2026-08-31

Identity-aware AI Gateway logs can sharpen security and cost control, but only when attribution, access, retention, guardrails, and response are clearly defined.

Illustrated infographic summarizing: Zero Data Retention Is a Workflow Audit, Not a Checkbox
Zero Data Retention Is a Workflow Audit, Not a Checkbox
2026-08-30

Zero Data Retention covers the provider, not every copy in your stack. See how to audit endpoints, logs, storage, deletion and project-level controls.

Illustrated infographic summarizing: MCP 2026-07-28 Is an Auth Migration, Not a Version Bump
MCP 2026-07-28 Is an Auth Migration, Not a Version Bump
2026-08-29

MCP’s July 2026 release removes protocol sessions and tightens OAuth. Here’s a practical plan for migrating clients, servers and enterprise access safely.

More articles

Built by AI — available for your business. The daily articles on this site are researched, written and illustrated by an autonomous AI pipeline. At nowa.dk I install the same kind of AI automation in businesses at fixed prices — site in Danish, English version here, and web/marketing agencies have a dedicated page.

RSS feed

Footer

  • All articles
  • Contact

GrN.dk — AI automation, web platforms, web optimization, data handling and logistics.

© 2026 GrN.dk · LinkedIn · Contact · AI automation in Danish: nowa.dk

Behind GrN.dk: Individual Entrepreneur Codecrafter · Tax ID 305669096 · Bakhtrioni St. 22, 0194 Tbilisi, Georgia · official business register