OpenAI Decisions API Pricing: $0.10/M Input, Zero Output Fees
I spent a morning with the Decisions API docs so you don't have to. Here's the price: $0.10 per million input tokens on gpt-6-luna — and that is the entire bill. No output-token charges, no cache-read charges, no cache-write charges. You pay for input tokens only. For classification-style workloads that used to burn most of their budget generating JSON labels, that's a 60–76% cut in my worked examples below. The catch, and there's always a catch: it only runs on Luna, it will not write you a single word of text — and since the October 22, 2026 GA, the old beta perk of free caching is gone: cache hits are discounted but cache writes are billed, at Luna's standard rates.
What the Decisions API actually is
OpenAI's dedicated POST /v1/decisions endpoint went generally available on October 22, 2026. New since the public beta: prompt caching (discounted cache reads, billed cache writes), up to 400 questions per request (was 200), hosted image URLs, native JSON input, conversation history, and a native GPT-Live integration. It doesn't generate prose. It returns typed answers — three kinds:
- predicate — the probability (0 to 1) that a condition holds ("does this photo show damage?"),
- choice — one of the options you supply, plus per-option probabilities and a confidence field (ticket routing: billing / technical / shipping),
- score — a probability-weighted average over your ordered severity levels (can land between levels, e.g. 1.1 between "workaround available" and "fully blocked").
OpenAI claims it's roughly 10× faster than the Responses API — their claim, no independent benchmark published yet. The design center is obvious: content moderation, request routing, quality gating, agent-step gating. Anywhere you were paying a model to emit structured JSON that you immediately parsed into a number, this endpoint skips the middleman.
The price, in one table
Against standard Luna pricing (from the official pricing page, via our data layer verified October 10, 2026):
| Billing line | Luna standard (Chat Completions) | Decisions API (/v1/decisions) |
|---|---|---|
| Input | $0.10 / 1M | $0.10 / 1M |
| Cached input read | $0.01 / 1M | $0.01 / 1M |
| Cache write | $0.125 / 1M | $0.125 / 1M |
| Output | $0.50 / 1M | $0 |
Two multipliers survive the transition: the long-context input multiplier (2× input above 272K tokens) and regional processing premiums still apply on Decisions requests. Since GA, caching works like standard Luna — cache hits are discounted, cache writes are billed — with one nuance from the official guide: shared input gets an implicit cache breakpoint, and only a 1,024+ token shared prefix qualifies; question content doesn't count toward the prefix. Prices verified October 23, 2026 — always confirm on the official Decisions guide.
The math that matters: when output is the bill, deleting it is the discount
Take a content moderation pipeline: 1,000,000 requests a month, 400 input tokens each (instructions + the item), 120 output tokens of structured label JSON per request on standard Luna:
- Standard Luna: 400M input × $0.10 = $40; 120M output × $0.50 = $60. $100/month.
- Decisions API: 400M input × $0.10 = $40; output $0. $40/month.
That's $60 saved every month — 60% cheaper — for the same 1M classifications. Now crank the output up: a ticket router that returned 250-token explanations. Standard Luna: $40 input + $125 output = $165/month. Decisions: $40/month. 76% cheaper. The rule is simple: the fatter your output was, the bigger the discount. If your classifier already answered in 20 tokens, this API buys you lunch money; if it was emitting 250-token explanations, it buys you a vacation.
When Decisions is NOT the answer
- One model.
gpt-6-lunais the only option. If Luna can't clear your accuracy bar, no discount helps. - It never writes text. Need explanations, summaries, or JSON in your own schema? OpenAI points you to Structured Outputs on the Responses API — where output tokens still bill.
- Dependent decisions cost extra requests. Independent questions can share one request; a decision that depends on an earlier answer needs a separate request, and each request re-bills its input.
- Answers can be refusals. Check the answer type before reading numbers, or your pipeline learns this the fun way.
- Images go inline or by URL. Hosted HTTP/HTTPS image URLs are now accepted alongside inline base64 data URLs —
file_idreferences are not. Either way, remember them when you estimate input tokens.
The bottom line
For years the dirty secret of classification pipelines was that the label cost more than the evidence: a $0.10/M input rate attached to a $0.50/M output rate, with outputs you never showed anyone. The Decisions API deletes that line item. If your workload is "read a lot, answer a little" — and most moderation, routing, and gating workloads are — run your own numbers. The input side hasn't changed, so the only question is how much output you were buying.
This link loads the article's moderation example into the Luna calculator with output set to zero — which is exactly Decisions billing. Flip output back up to 120 to see the standard-Luna number.
Model it on the calculatorFAQ
Is the Decisions API generally available?
Yes — it went GA on October 22, 2026, adding prompt caching, up to 400 questions per request, hosted image URLs, native JSON input, and a GPT-Live integration.
Which models work with it?
One: gpt-6-luna, per the official guide.
Does prompt caching matter on Decisions?
Yes, now. GA added prompt caching: cache hits get Luna's discounted read rate ($0.01/M) and cache writes are billed ($0.125/M), same as standard Luna. Note the flip side: standard Luna's cached reads were already $0.01/M, so a heavily-cached standard workload narrows the gap on the input side — the savings stay concentrated in the output line.
Sources: OpenAI Decisions API guide (pricing and endpoint details, read October 23, 2026 — confirms GA, cache-read/cache-write rates at standard Luna levels, 400 questions/request); OpenAI API pricing page (standard Luna rates). Luna standard rates also cross-checked against this site's pricing data layer, verified October 23, 2026.