AI agents · OpenClaw · self-hosting · automation

Quick Answer

Baseten for Batch Processing and Spot GPUs: An Evaluation

Published:

The short answer

Baseten handles batch work well for models you deploy yourself, but it has no batch discount and no spot GPUs. Its async inference queues requests to any dedicated deployment for up to 72 hours and posts results to your webhook, billed at the normal per-minute replica price. For the cheapest batch run:

  1. Model available through a provider Batch API? Use it — OpenAI, Anthropic and Gemini charge 50% of standard price.
  2. Custom or fine-tuned model, spiky jobs? Modal — per-second billing, preemptible GPUs, scale to zero.
  3. Custom model, steady overnight volume, you want managed serving? Baseten async inference.
  4. Lowest raw GPU price and you run the stack? RunPod Community Cloud pods.

This page is a spoke of our Baseten evaluation. For list GPU prices across platforms see Baseten pricing compared to other ML infrastructure tools.

Baseten async inference: what it does

PropertyBaseten async inference (Nov 4, 2026)
Works onAny dedicated deployment, no code changes
Not available onModel APIs (per-token endpoints)
Max time in queueDefault 10 minutes, up to 72 hours (max_time_in_queue_seconds)
Max time per attempt1 hour, with a configurable retry policy
Prioritypriority 0, 1 or 2 (0 runs first; default 0)
Result deliveryWebhook to your HTTPS endpoint, with signature verification
Output storageNone — if every webhook delivery fails, the output is lost
StreamingNot supported
PriceNormal per-minute replica billing; no batch discount

The queue is decoupled from scaling: requests can sit in the queue while the deployment has zero replicas, and the queue processor’s calls trigger the autoscaler. That makes a nightly job cheap to keep idle all day — set min_replica: 0 and let the queue wake the model.

Two operational rules: persist outputs yourself (in the webhook receiver or from the model’s postprocess()), and check the errors array in each payload before accepting data.

Spot GPUs: Baseten does not sell them

Baseten’s instance reference lists one on-demand price per instance — H100 $0.10833/minute (about $6.50/hour), H200 $0.125 ($7.50), B200 $0.16633 (about $9.98), A100 $0.06667 (about $4.00) — and no spot or preemptible tier. Lower prices come from Pro and Enterprise contracts, and Enterprise can run in your own cloud, where you could use your provider’s committed spend.

If interruptible capacity is the point:

  • Modal — every function is preemptible by default and restarts on the same input after a preemption; GPU functions cannot be made non-preemptible. Its list price already reflects that (H100 $0.001097/second, about $3.95/hour). Checkpoint long jobs.
  • RunPod — Community Cloud pods are cheaper than Secure Cloud (H100 SXM $2.69 vs $3.99/hour on October 28, 2026).

Provider Batch APIs: the 50% option

APIDiscountCompletion windowLimits
OpenAI Batch50%Within 24 hoursSeparate, higher rate-limit pool; 200 MB input file; one model per file
Anthropic Message Batches50%Most within 1 hour; expire after 24 hours100,000 requests or 256 MB per batch; results kept 29 days; not ZDR-eligible
Gemini Batch50%Target 24 hours2 GB input file
Together BatchUp to 50% — only whisper-large-v3 listed as discounted24-hour best effort50,000 requests, 100 MB file; failed requests not billed; files kept 7 days

With batch pricing, Claude Sonnet 5.5 drops from $2/$10 to $1/$5 per million tokens and GPT-6.1 Terra from $1/$5 to $0.50/$2.50 — see current API prices. For most evaluation, classification and enrichment jobs that is cheaper than any rented GPU, with no serving to run.

When Baseten is the right batch platform

  • Your own model: a fine-tune, a custom vision or audio pipeline, or an open model with a custom engine — none of which a provider Batch API can run.
  • Mixed traffic: the same deployment serves real-time requests by day and async batch by night; async requests compete with sync requests through predict_concurrency and priority.
  • Data stays in your cloud: Baseten Enterprise self-hosted deployments.

When it is not

  • Short or one-off jobs: per-minute billing and paid cold starts favour Modal’s per-second meter.
  • Popular open or closed models: a 50%-off Batch API beats any GPU rental on price and effort.
  • Interruptible workloads that can checkpoint: Modal or RunPod Community Cloud cost less per GPU-hour.

How to evaluate in a day

  1. Run 1,000 representative requests through a provider Batch API (if the model exists there) and record cost per request.
  2. Deploy the same model on Baseten with min_replica: 0, submit the same 1,000 through /async_predict, and read the cost from baseten org billing usage.
  3. Repeat on Modal with the same engine.
  4. Compare cost per successful output, including cold starts and failed attempts.

Last verified: November 4, 2026.

Sources