AI API Cost Calculator

Calculate and Compare
AI API Costs

Estimate your AI spending, compare model pricing, and understand what your real-world workloads actually cost.

11Pricing guides
8Models in calculator
Oct 2026Prices verified

How to Reduce Your OpenAI API Bill: 9 Moves That Actually Work

An OpenAI bill that's "too high" is almost never one problem. It's the same workload priced the expensive way at five or six independent decision points — wrong model, no caching, real-time everything, uncapped output, a long-context surcharge nobody noticed. The good news: each decision point has a fix, the fixes stack, and none of them require your product to get worse. Here are the nine moves that actually work, in the order we'd do them, priced on a real workload throughout.

Our reference workload: 1,100 tasks a month, each sending 60K input tokens and generating 6K output tokens, running on GPT-5.6 Sol at its $4/$20 promo rate. Priced naively — no caching, everything real-time — that's $0.36 per task, $396.00 a month. Watch it fall.

Move 1: Measure Per-Request Cost Before Touching Anything

Every optimization below is guesswork until each API call carries a price tag. The Responses API returns everything you need in its usage object: total input tokens, the cached-token portion, cache-write tokens on GPT-5.6 and later, output tokens, and reasoning tokens inside the output details. Log those five numbers with every request, multiply by your model's rates, and store the dollar figure next to the request ID. Within a day you'll know which endpoint, feature or customer is expensive — teams consistently discover that a tenth of their traffic produces half the bill. This is also the diagnostic behind our bill-shock checklist: you cannot fix a cost you cannot see.

Move 2: Turn On Prompt Caching (Properly)

Of our workload's 60K input tokens, 48K are the same system prompt, tool definitions and context on every task. Sent fresh at $4.00/1M, they cost $0.192 per task. Cached at GPT-5.6 Sol's $0.40/1M read rate, they cost $0.0192. Enabling caching — stable prefix first, nothing dynamic inside it — takes the task from $0.36 to $0.1872 and the month from $396.00 to $205.92. One move, 48% gone. The failure mode is structural, not financial: a timestamp or session ID in the prefix silently zeroes your hit rate, so verify cached tokens in the usage object after deploying. Our prompt caching guide covers the structure and the debugging.

Move 3: Re-Price Your Model Choice — the Promo Isn't the Price

GPT-5.6 Sol's $4/$20 is a promotion "available at least through November 21, 2026," with no published follow-on rate. GPT-6.1 Sol — the newer workhorse — lists at $2/$10 outright, with cached reads at $0.10. Same workload, same caching: 12K fresh x $2.00 + 48K cached x $0.10 + 6K output x $10.00 = $0.0888 per task, $97.68 a month. That's less than half the promo-priced bill, on a rate with no expiry date attached. Whenever you're budgeting on a promo rate, price the migration to the stable rate card beside it — promos are how bills double while usage stands still.

Move 4: Route the Easy Majority to the Budget Tier

Not every task deserves a workhorse. Classification, extraction, formatting, first-pass drafts and routing decisions run fine on GPT-6 Luna at $0.10/$0.50 — a twentieth of Sol's rates. If 60% of our 1,100 tasks are Luna-grade, the blend becomes 0.6 x $0.00468 + 0.4 x $0.0888 = $0.03833 per task: $42.16 a month. Routing is the single biggest lever in this article, and the discipline is simple: start every task type on the cheap model, run your eval set, and promote only the task types that measurably fail. Flagship-by-default is a pricing decision you made by accident.

Move 5: Move Everything That Can Wait to Batch or Flex

OpenAI's Batch API and Flex processing both take 50% off standard rates in exchange for turnaround measured in hours. Nightly evals, dataset labeling, report generation, embedding backfills — none of it has a human waiting. If 40% of the routed workload is batchable, the bill becomes $42.16 x (0.6 + 0.4 x 0.5) = $33.73 a month. Audit by consumer: if the output is read by a pipeline, a dashboard or tomorrow's standup, it's batch work wearing a real-time costume. The batch guide has the migration checklist.

Move 6: Cap Output — and Count Reasoning Tokens

Output is the expensive direction: five times input on Sol-class models, and on reasoning models the meter includes thinking tokens you never see. Our reference task generates 6K output tokens; capping responses at 4K with a sane max-output setting and a "answer, don't narrate" instruction saves 2K x $20.00/1M = $0.04 per task on GPT-5.6 Sol — $44.00 a month on this workload alone. Match reasoning effort to the task while you're there: high-effort reasoning on a formatting task is output spend with no customer.

Move 7: Never Trip the 272K Trap

On current GPT models, a single request with more than 272K input tokens reprices the entire request — input and cache at 2x, output at 1.5x. A 300K-token request with 10K output on GPT-6.1 Sol should cost 300K x $2.00 + 10K x $10.00 = $0.70; tripping the threshold makes it $1.20 + $0.15 = $1.35, a 93% surcharge for crossing an invisible line by 10%. Chunk documents under the threshold, retrieve instead of stuffing, and alert on any single request over 200K input tokens so the pattern surfaces before the invoice does.

Move 8: Kill Retries, Loops and Zombie Traffic

Failed work bills at the same rate as successful work. An agent that retries a doomed step four times pays five prices for zero output; our agent cost breakdown estimates retry spirals and runaway loops at roughly 20% of an unguarded agent's spend. Set hard step caps, abort when the same tool fails twice with the same error, budget retries per task, and log retried spend as its own line. Do the same for the quieter zombies: abandoned test keys, a staging environment pointed at production models, the cron job nobody remembers writing.

Move 9: Put a Calendar on Your Rate Card

The final move is administrative. Two of the prices in this article have dates on them: GPT-5.6 Sol's promo is guaranteed only through November 21, 2026, and if it reverted to its pre-promo list ($5/$30, cached $0.50), our cached reference workload would jump from $205.92 to $290.40 a month with zero change in usage. Keep a one-page register of every rate you depend on, its expiry if any, and the model you'd migrate to. Then re-run your numbers in the AI API Cost Calculator whenever a date passes or a provider announces a change — bills are cheapest to fix before they're issued.

The Stack, Summarized

StageMonthly billCumulative saving
Naive: GPT-5.6 Sol, no caching, all real-time$396.00—
+ Prompt caching (Move 2)$205.9248%
+ GPT-6.1 Sol at list price (Move 3)$97.6875%
+ Routing 60% of tasks to GPT-6 Luna (Move 4)$42.1689%
+ Batching 40% of the workload (Move 5)$33.7391%

From $396 to $33.73 — a 91% cut with the same tasks completed. Moves 6–9 don't appear as cascade steps because their savings depend on your failure modes and prompt shapes, but on real accounts they're routinely worth another 10–30%. The pattern underneath all nine: an API bill is an engineering output. It responds to measurement, structure and routing — not to hope.

FAQ

What is the fastest way to cut an OpenAI bill this week?

Measure per-request cost (Move 1) and enable prompt caching (Move 2). On any workload with a repeated prefix, caching alone typically removes 30–50% of the input bill within a day, and the measurement tells you whether routing or batching is your next-biggest lever.

Is GPT-6 Luna good enough for production work?

For classification, extraction, summarization, formatting and routing — the tasks that make up most production volume — usually yes, and it's the only way to find out is to run your eval set on it. Keep the workhorse for tasks where Luna measurably fails; that's what routing means.

Why did my bill jump even though my usage didn't?

Three usual causes: a promotional rate expired (GPT-5.6 Sol's is guaranteed only through November 21, 2026), a workload drifted over the 272K-token threshold and started repricing whole requests, or a retry loop got deployed. All three are visible in per-request cost logs — which is why measurement is Move 1.

Do Batch and Flex change output quality?

No — same models, same parameters, slower scheduling. The discount is for patience, not for a weaker model.

Rates are OpenAI's published October 2026 rate-card figures (GPT-5.6 Sol promo $4/$20, GPT-6.1 Sol $2/$10, GPT-6 Luna $0.10/$0.50 per 1M tokens), verified October 2026. Workload figures are illustrative examples computed from those rates. Rates change — confirm on OpenAI's pricing page before committing.

Popular posts from this blog

DeepSeek API Pricing Explained: What a Chatbot Actually Costs in 2026

OpenAI API Pricing Explained: Every Model, Every Hidden Cost

Claude Opus 5.5 API Pricing: Per-Token Costs and Workload Math