AI Agent Token Costs: What You Actually Pay For
Measured across 157,670 real Claude Code turns, visible output is 12% of the bill, cache reads are 48%, and most of the tokens you pay for are never shown to you.

Everyone optimises how much the model writes. Writing is about an eighth of the bill.

The short answer
The money is in the context you resend on every turn, and in the reasoning you are billed for but never see. We instrumented one workstation and recorded the usage object on 157,670 deduplicated Claude Code API responses between 26 April and 26 July 2026, frozen at 08:25 UTC on the final day. Recorded, not estimated.
In that corpus, visible output accounts for 12.1% of the Opus 4.8 spend. Cache reads take 48%. Cache writes take 39%, and genuinely uncached input is the rounding error at under 1%.
That is one workstation running one kind of work, so treat the ratios as a shape rather than a universal constant. The shape is what matters, and the shape is not what most people are told to optimise.

What you are actually billed for
An agent turn is not a chat message. Every turn resends the entire working context, the system prompt, the tool definitions, the files already read, and the whole prior transcript. If that mechanic is new to you, we unpacked it in how the context window actually works.
Anthropic's prompt caching docs, verified 26 July 2026, price those resends on three separate tiers. A cache write at the 5 minute TTL costs 1.25 times the base input rate, a write at the 1 hour TTL costs 2 times, and a cache read costs 0.1 times. Setting a breakpoint is free, per the same docs, so you are only charged for tokens actually written or read.
Here is the anatomy of a real bill, using our measured shares.
| Token type | Share of measured bill | Rate vs base input | What it actually is |
|---|---|---|---|
| Cache reads | 48% | 0.1x | context resent and matched on a later turn |
| Cache writes | 39% | 1.25x at 5 min, 2x at 1 hour | context stored so the next turn can read it cheap |
| Output | 12.1% | 5x on Opus 5 | visible text plus billed reasoning |
| Uncached input | under 1% | 1x | the rare cold miss |
Read that table twice. The cheapest per-token line item is the biggest line on the invoice, because volume beats rate.

Most of your output tokens are invisible

Read it on platform.claude.com
Reasoning tokens are billed as output at the standard output rate. Anthropic's extended thinking documentation states plainly that you are billed for the full thinking tokens while the API returns a condensed summary, so the number you pay for and the number you can read are different numbers.
The important corollary, from Anthropic's adaptive thinking docs, is that billed thinking does not change with the display setting. Turning the reasoning panel off makes your terminal quieter and your invoice identical.
We can see the gap from the outside. On prose-only turns, our corpus records 2.7 visible characters per billed output token on Opus 5, against roughly 4.0 characters per token for plain English text. Around a third of what you paid for as output never reached your screen.
That is not a scandal. It is the product working as designed, and depth of reasoning is a dial you control through effort levels rather than through display flags.
Cache reads are the real bill

Read it on platform.claude.com
A cache read is cheap and constant. The context being read grows all session, and it is read again on every single turn, so the cheap thing compounds into the dominant thing.
This is also why idle time costs money. Anthropic's prompt caching docs, verified 26 July 2026, put the default cache lifetime at five minutes, refreshed each time the cached content is used. Let a session sit longer than that and the next turn pays a fresh write at 1.25 times the input rate instead of a read at 0.1 times. A coffee break is a billable event in an agent workflow.
Anthropic's own Claude Code cost documentation puts enterprise usage at around $13 per developer per active day and $150 to $250 per developer per month, with 90% of users staying under $30 per active day. Our corpus sits in that range at $0.25 per turn on Opus 4.8. The variable is turn count multiplied by context size, not verbosity.
Opus 5 writes more and costs about the same
Claude Opus 5 is noticeably chattier than Opus 4.8. On matched turns in our corpus, Opus 5 averages 3,882 output tokens against 2,582 for Opus 4.8, a 50% increase, with non-overlapping bootstrap 95% intervals. That is a real behavioural difference, not sampling noise.
Now the part people get wrong. Anthropic's published pricing table, verified 26 July 2026, gives Opus 5 and Opus 4.8 an identical price card, $5 per million input tokens and $25 per million output tokens, with matching cache tiers. If output is only 12.1% of the bill, a 50% jump in output moves the total by roughly 6%.
We re-priced the entire two-month workload under each model's rates. Opus 5 lands about 5% above Opus 4.8. If you liked the older model's economics, as we argued in our Opus 4.8 field notes, the new one is not the budget event it looks like.
| Model | Input per MTok | 5 min cache write | 1 hour cache write | Cache read | Output per MTok |
|---|---|---|---|---|---|
| Claude Opus 5 | $5.00 | $6.25 | $10.00 | $0.50 | $25.00 |
| Claude Opus 4.8 | $5.00 | $6.25 | $10.00 | $0.50 | $25.00 |
| Claude Fable 5 | $10.00 | n/a | n/a | n/a | $50.00 |
| Claude Sonnet 5, intro through 31 Aug 2026 | $2.00 | n/a | n/a | n/a | $10.00 |
| Claude Sonnet 5, from 1 Sep 2026 | $3.00 | n/a | n/a | n/a | $15.00 |
| Claude Haiku 4.5 | $1.00 | n/a | n/a | n/a | $5.00 |
The cache multipliers are structural, so you can derive every row from its base input rate. Anthropic's docs carry the Sonnet 5 introductory rate and the $3 and $15 that replace it on 1 September 2026.
The expensive model is the one with the high input rate
See the price table on platform.claude.com
Because input dominates, the model that hurts is the one with the high input rate, not the one with the biggest output number. Claude Fable 5 is $10 per million input against Opus 5's $5, per Anthropic's pricing table, and that doubled input rate lands on the 87% of your bill that is cache traffic.
Re-priced against our same two-month workload, Fable 5 comes out about 1.9 times the Opus 5 cost. Almost exactly its input multiplier, which is the whole point. We covered where that capability is worth paying for in our Fable 5 assessment.
Downward, the logic inverts nicely. At $2 per million input on introductory pricing, Sonnet 5 cuts the dominant line item by 60% against the Opus tier, and our matched-turn data shows it writing slightly less per turn than Opus 4.8 rather than more.
Two levers that work, one that does not

Read it on platform.claude.com
The lever that does not work is asking for shorter answers. You are optimising 12% of the bill while degrading the thing you are actually buying, which is the reason we called this pattern out in the AI token diet trap.
The two that work:
- Cut what gets resent. Fewer files in context, narrower reads, compact before the transcript bloats, and end a session instead of letting it idle past the TTL
- Match the model to the input rate. Route routine agent turns to a cheaper input tier and reserve the expensive tier for the turns where accuracy pays
Both are context discipline, not prompt discipline. The practical mechanics live in our Claude Code context management guide.
How to measure your own spend
See the API reference on platform.claude.com
Do not trust anyone's ratios, including ours. Every API response carries a usage object, and it is the ground truth for your own workload.
- Log
usageon every response, not a sample, and deduplicate by response id before you aggregate - Split input into four buckets, cache read, 5 minute write, 1 hour write, and uncached, because they price differently
- Multiply each bucket by its own rate rather than reporting raw token counts, since counts hide the 50x spread between a cache read and an output token
- Compare visible characters against billed output tokens to see how much reasoning you are funding
Two afternoons of instrumentation will tell you more than every pricing blog on the internet, including this one.
FAQ
Does hiding the thinking output lower my bill?
No. Anthropic's adaptive thinking docs state that billed thinking tokens do not change with the display setting, only what is returned to you changes.
Is Claude Opus 5 more expensive than Opus 4.8?
Barely. It shares a price card with Opus 4.8 at $5 and $25 per million tokens per Anthropic's pricing table, and although our corpus shows it writing 50% more per turn, re-pricing the same workload puts it about 5% higher overall.
Should I switch to Sonnet 5 to save money?
For routine agent turns, probably. Anthropic's pricing table lists introductory rates of $2 per million input through 31 August 2026, which attacks the biggest line on your invoice rather than the smallest.
Does asking for shorter answers save money?
Almost none. Output was 12.1% of our measured bill, so halving it moves the total by about six percent while making the work worse.
Why did my bill spike on a day I barely worked?
Long idle gaps. Anthropic's docs put the default cache lifetime at five minutes, so once it expires the next turn rewrites the whole context at 1.25 times the input rate instead of reading it at 0.1 times.
What is a normal monthly spend?
Anthropic's Claude Code cost docs cite around $13 per developer per active day and $150 to $250 per month, with 90% of users under $30 per active day. Heavy agentic use runs well above that.
The bill is a context problem
Your invoice is not a measure of how much the model said. It is a measure of how many times you made it re-read your project.
Everything here was measured on one workstation over three months, across 157,670 API responses from 26 April to 26 July 2026. It does not establish an industry benchmark, and it is not a vendor forecast. It establishes where the money went for us, in enough detail that you can check whether the same is true for you.
Then price your work accordingly, because per-turn tooling cost is now a real line in a design engagement, not a rounding error. We covered how to handle that in pricing AI-augmented design work.
Want the working version of this, every week? Join the Brainy creator list.
Get StartedNot ready to hire? Run the free Business Genome, an 11-dimension diagnostic for your venture.
Get your free GenomeGet new papers by email
New Brainy papers in your inbox. Confirm once, unsubscribe anytime.





