Drawpie
Game guides & tools

Beyond Token Pricing: The True Cost of Opus 5, Fable 5 and GPT-5.6 Sol in 2026

Beyond Token Pricing: The True Cost of Opus 5, Fable 5 and GPT-5.6 Sol in 2026
Photo by Siora Photography on Unsplash
Key takeaways
  • On list prices Claude Opus 5 costs $5 per million input tokens and $25 per million output, Claude Fable 5 costs $10 and $50, and GPT-5.6 Sol costs $5 and $30. Those three numbers set only part of the bill: reasoning tokens, cache state, request size and tool overhead move the total far more.
  • Reasoning tokens bill at the output rate on all three models, and Anthropic states plainly that the billed output count does not match the thinking you can actually see in the response.
  • Cache state changes what a single input token costs by up to 20x on the Claude models — from $0.50 per million on a cache read to $10.00 on a one-hour cache write on Opus 5.
  • A GPT-5.6 Sol request that crosses 272,000 input tokens reprices in full at 2x input and 1.5x output. Anthropic bills its whole 1M-token context at one flat rate.

Three frontier models, three headline prices: Claude Opus 5 at $5 per million input tokens and $25 per million output, Claude Fable 5 at $10 and $50, and GPT-5.6 Sol at $5 and $30. Read those numbers and Opus 5 — released on 24 July 2026 at exactly Opus 4.8’s prices — looks like the obvious value pick. Fable 5 costs exactly double Opus 5 on both sides of the ledger, and double Sol on input — though on output the gap narrows to 1.67x.

Then the invoice arrives and it does not match. The sticker price is the smallest variable in the equation. What actually decides your bill is how much reasoning the model does before answering, whether your prompt was in cache and which kind of cache, how big your requests are, and how many tokens your tools quietly add to every call. This piece walks the mechanics with the vendors’ own published rates. All prices checked 24 July 2026.

What do Opus 5, Fable 5 and GPT-5.6 Sol cost per token?

Here are the published list rates, side by side. Everything below is what these numbers leave out.

Claude Opus 5Claude Fable 5GPT-5.6 Sol
Input, per 1M$5.00$10.00$5.00
Cached input read, per 1M$0.50$1.00$0.50
Output, per 1M$25.00$50.00$30.00
Batch input / output, per 1M$2.50 / $12.50$5.00 / $25.00$2.50 / $15.00
Context window1M tokens1M tokens1.05M tokens
Max output, sync API128K tokens128K tokens128K tokens

Three things that table hides, before we get to the mechanics.

The Sol column is the short-context one. Every Sol figure above applies to requests of 272,000 input tokens or fewer. Past that line OpenAI publishes a second set — input $10, cached input $1, cache write $12.50, output $45, and batch $5 / $22.50 — and applies it to the whole request. More on that below; for now, read the Sol column as conditional.

The context windows are not directly comparable either. Claude’s 1M counts everything in the request and the answer Claude generates, thinking included. Sol’s 1.05M works the same way. So a 4,000-token answer leaves room for 996,000 input tokens on Claude and about 1,046,000 on Sol — a real difference that a “1M vs 1.05M” row understates.

And on capability, price is the live question. Our earlier GPT-5.6 Sol and Claude Fable 5 benchmark comparison found the two a single point apart on the composite index that measures them the same way — a gap too small to read as a ranking, and one where the Claude score included a fallback to Opus 4.8 on a share of tasks. Other harnesses compare them too, on their own methodologies. We could not find a public, reproducible like-for-like task success rate for all three, which is why this piece stays on the side of the ledger that is actually knowable.

Why doesn’t the sticker price predict the bill?

Because four things sit between the rate card and the invoice, and not one of them appears on the rate card:

  1. Reasoning tokens, which bill at the output rate and are mostly invisible to you.
  2. Cache state, which changes what one input token costs by up to 20x.
  3. Request size, which on Sol triggers a repricing cliff at 272,000 input tokens.
  4. Fixed overhead — tool definitions, server-side tool fees, session runtime — that never appears in a price-per-token comparison at all.

How much of the output bill is reasoning you never see?

Enough to be worth measuring before you compare prices: in the worked example below it is two-thirds of the output tokens and about a third of the entire bill. On all three models the tokens spent thinking are billed as output tokens, at the output rate, the most expensive line on the card. Neither vendor returns the raw reasoning text.

Anthropic is unusually direct about the consequence: the billed output token count does not match the thinking text visible in the response. You are billed for the full reasoning the model generated internally, not for the summary you get back. Set the display option to omit thinking and the field comes back empty, but the charge is identical.

Both vendors expose the split, under nearly the same path but a different leaf name — usage.output_tokens_details.thinking_tokens on Claude, and usage.output_tokens_details.reasoning_tokens on GPT-5.6 through the Responses API (usage.completion_tokens_details.reasoning_tokens if you are still on Chat Completions). It is the most useful number in the billing object and the one almost nobody reads.

The defaults matter here more than the prices. On Opus 5 thinking is on by default — a change from Opus 4.8, where omitting the parameter meant no thinking — and the effort parameter defaults to high on the Claude API. On Fable 5 adaptive thinking is always on and cannot be turned off at all. So on two of these three models, a request written with no thinking configuration whatsoever arrives with thinking switched on. That is not the same as thinking every time: Claude decides per request, and a simple lookup can come back with no thinking block at all. You are billed for what it actually generates — which is the argument for measuring rather than assuming, in either direction.

Stacked bar chart breaking down the cost of one modelled 12-request agent task across Claude Opus 5, Claude Fable 5 and GPT-5.6 Sol, using official token prices and an assumed token mix. Under those assumptions reasoning output is the largest slice for all three: $0.36 of $1.04 on Opus 5, $0.43 of $1.15 on Sol, and $0.72 of $2.09 on Fable 5 — roughly twice what the visible answer costs.

Work one agent task through and the shape is stark. Twelve requests, a 30,000-token prefix cached once and read eleven times, 2,500 fresh input tokens per request, 1,800 output tokens per request split 1,200 reasoning to 600 visible:

Line itemClaude Opus 5Claude Fable 5GPT-5.6 Sol
Cache write (once)$0.19$0.38$0.19
Cache reads (x11)$0.17$0.33$0.17
Fresh input$0.15$0.30$0.15
Reasoning output$0.36$0.72$0.43
Visible output$0.18$0.36$0.22
Task total$1.04$2.09$1.15

Read that table for its shape, not its totals. The prices are official; the token mix is our assumption, and the 2:1 reasoning-to-visible ratio in particular is a number we chose, not a property of any of these models. Segments are rounded to the cent and totals computed from unrounded figures, so the columns will not always sum by eye.

What the assumption buys you is a worked demonstration, not a law. Under it, reasoning is the largest single line item on all three models at 34–38% of the bill — roughly twice what the answer the user actually reads costs. Change the ratio and that ranking changes with it, which is exactly why the number to go and get is your own. Reasoning is also the line item you can move, by lowering effort.

Does a cheaper token mean a cheaper answer?

Not necessarily, because a token is not a fixed amount of text.

Anthropic documents that models from the Claude 4.7 generation onward use a newer tokenizer that produces roughly 30% more tokens for the same input than earlier Claude models — a note it repeats in the Fable 5 specification. That has nothing to do with the rate card and everything to do with the bill: if your cost model was calibrated on an older Claude model, the same documents now cost meaningfully more to send at an unchanged per-token price.

The cross-vendor version is measurable but not general. Both vendors ship a token-counting endpoint, so you can take your own corpus and get an exact token count from each — and you should, before you trust any comparison table. What does not exist is a published conversion ratio that holds across content types, so “$5 per million” on Opus 5 and “$5 per million” on Sol are not automatically the same price for the same paragraph. Measure yours; do not assume a constant.

Anthropic’s own launch framing for Opus 5 switches units in the same direction. Its benchmark claims are per task, not per token: within 0.5% of Fable 5’s peak on one coding benchmark at half the cost per task, and past Fable 5’s best result on an agentic desktop benchmark at just over a third of the cost. Those are vendor figures on vendor-chosen benchmarks and should be read as such — but the unit is the right one. Cost per finished task is what you pay. Cost per token is what you are quoted.

The launch post’s much-quoted 26% fewer tokens figure needs more care than it usually gets. It is a customer testimonial from an early-access legal-AI team, not an Anthropic benchmark, and the comparison is not like for like: it describes Opus 5 holding quality at lower reasoning levels against Opus 4.8 running at max reasoning. That is a real and useful observation about effort tuning. It is not evidence that Opus 5 emits 26% fewer tokens than Opus 4.8 on the same settings, and it should not be carried into a budget as if it were.

What does prompt caching actually cost?

More than “90% off”, and less, depending on which end of it you are standing.

Grouped bar chart of input token prices by cache state for Claude Opus 5, GPT-5.6 Sol and Claude Fable 5, with write tiers labelled by multiplier. On Opus 5 a cache read is $0.50 per 1M, base input $5, a 1.25x cache write $6.25 and a 2x longer-TTL write $10 — a 20x spread. Sol spans 12.5x from $0.50 to $6.25, publishes no 2x tier, and every Sol rate shown doubles above 272K input tokens.

Caching is normally sold as the read discount, and the read discount is genuine: a cache hit costs a tenth of base input on all three models. But writing to the cache costs more than not caching at all — 1.25x base input for a five-minute entry, 2x for a one-hour entry on the Claude models.

Input state, per 1MClaude Opus 5Claude Fable 5GPT-5.6 Sol
Cache read$0.50$1.00$0.50
Base input$5.00$10.00$5.00
Cache write, 1.25x$6.25$12.50$6.25
Cache write, longer TTL (2x)$10.00$20.00no 2x tier published
Cheapest-to-dearest spread20x20x12.5x

Those write rows are not like for like, and the difference is worth more than it looks. Anthropic sells two tiers priced by how long the entry lives: 1.25x for a five-minute entry, 2x for a one-hour one. OpenAI sells one tier at 1.25x for GPT-5.6, and its cached prefixes stay eligible for reuse for at least 30 minutes. So Sol’s single write buys six times the five-minute window at the same multiplier — on bursty traffic that repeats every ten or twenty minutes, that is a genuine structural advantage that no per-token table shows.

The break-even arithmetic on the Claude side is simple and routinely missed. A five-minute entry pays for itself after one read (1.25x + 0.1x beats 2x uncached); a one-hour entry needs two (2x + 0.2x beats 3x). Reach for the one-hour TTL on traffic that does not actually repeat within the hour and you have doubled your input cost to buy nothing.

Three more caching details with money attached:

  • Short prompts silently do not cache, and the threshold differs by vendor. The minimum cacheable prefix is 512 tokens on Opus 5 and Fable 5 — half of Opus 4.8’s 1,024 — but 1,024 tokens on GPT-5.6. Below it the request is processed without caching and no error is returned.
  • Read the two usage fields together, not just the read. A cold first call on Claude is not silent: an eligible prefix reports a non-zero cache_creation_input_tokens with a zero read, and an invalidated prefix looks the same — that pair is how you tell a fresh write from a hit. On GPT-5.6 the equivalent cache_write_tokens is softer, because implicit caching is documented as something the API may do rather than a guarantee; use an explicit breakpoint if you need the behaviour to be deterministic. Both fields at zero means no caching happened. Why differs by vendor: on Claude, caching is opt-in, so the usual causes are a missing cache_control, no eligible breakpoint, or a prefix under 512 tokens. GPT-5.6 caches prefixes implicitly, with no opt-in required, so there the usual cause is simply a prompt under 1,024 tokens or a prefix that did not repeat.
  • On Claude, changing effort invalidates cache. The resolved effort value is rendered into the prompt, so a request that lowers effort to save money can end up re-writing at 1.25x what it would have read at 0.1x. How much gets re-written depends on where your breakpoint sits: a thinking-configuration change invalidates from the messages level, and whether tools and system are hit too varies by model. Anthropic’s documentation demonstrates the messages case with a runnable example: a prefix that read cleanly from cache on the second request comes back billed as fresh cache-creation tokens on the third, with the effort level as the only change. OpenAI’s caching documentation makes no equivalent statement about its reasoning controls, so do not assume the behaviour transfers; measure it.
  • Steer per message, not per parameter. Guidance appended to the newest user message shifts thinking behaviour while leaving earlier cache breakpoints intact. A configuration change does not.

What happens when a request crosses 272,000 tokens?

On GPT-5.6 Sol, the price of the entire request changes. Anthropic charges one flat rate across its full 1M-token context; OpenAI applies 2x input and 1.5x output once a request exceeds 272,000 input tokens, and applies it to the whole request rather than to the tokens above the line.

Line chart of single-request cost as input grows from 50,000 to 996,000 tokens with a fixed 4,000 total billed output tokens, reasoning included. GPT-5.6 Sol steps from $1.48 to $2.90 at 272,000 input tokens, a 96% jump, and from there tracks two cents under Claude Fable 5, while Claude Opus 5 rises smoothly to $5.08. The lines stop at 996,000 because Claude’s 1M context window has to hold the answer as well as the prompt.

The step is sharp. Take a request with a fixed 4,000-token output and no caching. Read that output figure as total billed output — reasoning included, per the section above — not as 4,000 visible words:

Input tokensClaude Opus 5Claude Fable 5GPT-5.6 Sol
100,000$0.60$1.20$0.62
272,000$1.46$2.92$1.48
272,001 (one token more)$1.46$2.92$2.90
500,000$2.60$5.20$5.18
996,000$5.08$10.16$10.14

The table stops at 996,000 because that is where Claude stops: its 1M window has to hold the 4,000-token answer as well as the prompt. Sol’s 1.05M window would carry roughly 1,046,000 input tokens at the same output length.

One extra token adds 96% to that request. That percentage belongs to this example, not to the rule: a larger output share softens it, because output rises only 1.5x while input doubles. And past the line, the model that is half Fable 5’s price below it lands two cents under Fable 5 — while Opus 5, unchanged, costs half of both. The doubling hits the cache rates too: above 272K a Sol cache read costs $1 rather than $0.50, so the workaround for expensive input gets more expensive at exactly the point you need it. Long-document work, whole-repository context and unpruned agent histories all drift across 272K without anyone deciding to, which makes this the one threshold worth putting a hard guard on in code.

Which costs are not token costs at all?

The ones that never appear in a price-per-token comparison. Both vendors publish them; almost nobody adds them up.

Anthropic’s schedule — the closest thing to a hidden-fee list in the industry, and worth reading before you architect anything:

Line itemWhat it adds
Tool-use system prompt286 input tokens per request on Opus 5 with tool_choice of auto, 406 with any or a named tool
Bash tool definition325 input tokens per request, on top of the above
Text editor tool definition700 input tokens per request (published for Claude 4.x, not broken out per model)
Computer use735 tokens for the tool (again a Claude 4.x figure), plus 466–499 on the system prompt, plus every screenshot
Web search$10 per 1,000 searches, plus the tokens the results consume
Web fetchNo fee; you pay the tokens, and a research PDF can run to 125,000 of them. Model support is narrower than the other rows — the current supported list runs Fable 5, Opus 4.8, 4.7 and 4.6, Sonnet 5 and 4.6, plus the invitation-only Mythos models — and does not include Opus 5
Code executionFree when paired with the current web search or web fetch tools. Otherwise 1,550 free container-hours a month, then $0.05 per hour, billed in a five-minute minimum
Managed Agents$0.08 per session-hour of runtime, on top of all token charges
Fast mode2x the base rate on Opus 5 — $10 and $50 — and not combinable with batch
US-only inference1.1x on every token category, including cache reads and writes

OpenAI’s, for the same shape of workload:

Line itemWhat it adds
Web search$10 per 1,000 calls, plus token costs — the same headline rate as Anthropic’s
File search$2.50 per 1,000 calls
Code Interpreter / containers$0.03–$1.92 per 20-minute session, by container size
Regional data residency1.1x, on models released from 5 March 2026

The two lists are not row-for-row equivalent, and that is the point: you cannot settle this from either vendor’s rate card alone.

Add the first three Anthropic rows together and an Opus 5 agent with bash and the text editor enabled carries roughly 1,311 tokens of fixed definition on every single call — an estimate, not an official Opus 5 figure, because only the 286-token tool-use prompt and the 325-token bash definition are published against Opus 5 by name; the 700 for the text editor is the Claude 4.x number used as a proxy. At 500 calls a day that is about 19.7 million input tokens a month — roughly $98 on Opus 5 if none of it is cached. Put the tool block behind a cache breakpoint and the reads come to about $10, plus a write each time the entry expires and has to be laid down again. It is the clearest example of why the two sections above are the same problem: the overhead is not large, but whether you pay 1x or 0.1x for it is a design decision nobody is prompted to make. Worth noting in the other direction, Opus 5’s tool-use system prompt costs 286 tokens where Opus 4.7’s cost 675, so some of this overhead is genuinely shrinking.

So which model is actually cheapest for your workload?

There is no single answer, and anyone giving you one is quoting the rate card. But the mechanics above collapse into four decisions that matter more than the model choice:

  • Set effort explicitly. It defaults to high on Opus 5 on the Claude API — the middle of five levels (low, medium, high, xhigh, max), with two above it that typically spend more tokens. Effort does not change the rate you pay — only how much the model generates at it. Anthropic’s own migration guidance for Opus 5 is to sweep downward, because low and medium perform unusually well on this model.
  • Measure your reasoning share before you compare prices, using thinking_tokens on Claude or reasoning_tokens on GPT-5.6. Then size the lever honestly: in the worked example above, reasoning is about 35% of the bill, so cutting it 20% saves roughly 7% overall — real money, but less than the 9% that moving from Sol to Opus 5 saves at the same token mix, and far less than the ~50% from moving off Fable 5. Effort tuning and model choice are complementary levers, not substitutes.
  • Pick the cache TTL from your actual repeat rate, not from optimism, and check your prefix clears the minimum — 512 tokens on Opus 5 and Fable 5, 1,024 on GPT-5.6.
  • Put a hard guard at 272K input tokens if you are on Sol — it doubles the cache rates as well as the base ones — and remember that a Claude request at 900K costs the same per token as one at 9K, but has to fit the answer inside the same 1M window.

Then compare. For a pure price-per-token starting point across the current field, our LLM API cost calculator runs your own monthly volumes against the official rates, and the three-way Kimi K3, Fable 5 and GPT-5.6 Sol price comparison covers where the cheaper end of the market sits. Neither replaces measuring your own token mix — which, as the numbers above show, is where the money was hiding all along.

Prices in this piece are the published list rates on 24 July 2026 and change frequently. Re-check them before they drive a budget.

How we verified this

Every price and mechanic below was read on 24 July 2026 (UTC) from the vendors’ own documentation, not from third-party trackers.

PRICES, per 1M tokens. Anthropic: Claude Opus 5 input $5 / cache read $0.50 / 5-minute cache write $6.25 / 1-hour cache write $10 / output $25; Claude Fable 5 $10 / $1 / $12.50 / $20 / $50; batch $2.50-$12.50 and $5-$25. Opus 5 released 24 July 2026 at Opus 4.8’s prices; 1M context, 128K max output on the synchronous API, training cutoff May 2026. OpenAI, GPT-5.6 Sol, short context (<=272K input): input $5 / cached $0.50 / cache write $6.25 / output $30, batch $2.50 / $0.25 / $3.125 / $15. Long context (>272K), applied to the whole request: $10 / $1 / $12.50 / $45, batch $5 / $0.50 / $6.25 / $22.50. Context 1,050,000, max output 128,000, knowledge cutoff 16 February 2026.

WHERE THE TWO VENDORS ARE NOT COMPARABLE, and where earlier drafts of this piece got it wrong. Cache write tiers are not like for like: Anthropic sells two priced by TTL (1.25x for 5 minutes, 2x for 1 hour); OpenAI sells one at 1.25x whose entries stay eligible for at least 30 minutes, documented as the only supported TTL on GPT-5.6. Calling Sol’s $6.25 a “5-minute” write is a category error, so the chart labels write tiers by multiplier. Caching itself differs: opt-in on Claude, implicit on GPT-5.6 with no cache_control required, which is why the two-zero-usage-fields diagnosis is split by vendor and why the cold-start signal is stated as deterministic only for Claude. Minimum cacheable prefix is 512 tokens on Opus 5 and Fable 5, 1,024 on GPT-5.6. Claude’s 1M context window includes the output it generates, thinking included, so a 4,000-token answer caps input at 996,000 - the cost-versus-input chart stops there rather than at 1M, where Sol’s 1.05M window would still allow about 1,046,000.

FIGURES THAT CARRY A NARROWER SCOPE THAN THEY LOOK. 128K max output is the synchronous Messages API number; the Batches API reaches 300K behind the output-300k-2026-03-24 beta header. The 700-token text editor and 735-token computer-use definitions are published against “Claude 4.x”, not per model; only the 286/406 tool-use system prompt and the 325-token bash definition are published against Opus 5 by name, so the 1,311-token overhead total - and the $98 and $10 monthly figures resting on it - is an estimate using the 700 as a proxy, and is labelled as one. The web fetch supported-model list also covers the invitation-only Mythos models. The OpenAI container fee is quoted exactly as published, per 20-minute session by container size; we did not add proration or minimum-billing detail we could not confirm there. Effort levels are described as spending more tokens rather than costing more, because effort does not change the per-token rate. Adaptive thinking on by default is not reasoning tokens on every request: Claude decides per request and may return no thinking block at all.

REASONING TOKENS are billed as output by both vendors, and neither returns the raw reasoning text. The usage path differs by API: thinking_tokens on Claude; reasoning_tokens on GPT-5.6, under output_tokens_details on the Responses API and completion_tokens_details on Chat Completions. That changing effort invalidates cache is documented by Anthropic with a runnable example - we describe the mechanism but not its sample token count, since that page states its numbers vary between runs. OpenAI’s caching documentation makes no equivalent claim about its reasoning controls, so the body scopes that finding to Claude.

WHAT IS ASSUMED RATHER THAN MEASURED. The 12-request worked example uses official prices with a token mix we chose - 30,000-token cached prefix, 2,500 fresh input tokens per request, 1,800 output tokens split 1,200 reasoning / 600 visible. The 2:1 reasoning-to-visible ratio in particular is an assumption, not a model property, and changing it changes which line item is largest; the chart title says “under these assumptions” for that reason. The 96% repricing jump likewise belongs to the charted 4,000-token output - a larger output share softens it, since output rises 1.5x where input doubles - so that chart title says “this Sol request”. Segments and shares are rounded to the cent while totals come from unrounded figures, so displayed columns need not sum by eye.

WHAT WE DELIBERATELY DO NOT CLAIM. No cost-per-successful-task figure: we could not find a public, reproducible like-for-like task success rate for all three models. No per-word price: both vendors ship token-counting endpoints so any specific corpus can be measured exactly, but no published constant converts between their tokenizers, and Anthropic separately documents that Claude 4.7-generation models produce roughly 30% more tokens for the same text than earlier Claude models. No capability ranking: on the composite index that measures Sol and Fable 5 the same way they sit a point apart, with the Claude score including an Opus 4.8 fallback on a share of tasks - too small a gap to read as a ranking, and short of the confidence intervals a “statistical tie” would need. Anthropic’s launch benchmarks are labelled as vendor figures, and its much-quoted “26% fewer tokens” is flagged as a customer testimonial comparing Opus 5 at lower reasoning levels against Opus 4.8 at max reasoning, not a same-settings measurement.

LLM prices change often. Everything here is correct on the date stamped and should be re-checked before it drives a budget.