professional headshot photo of Mr Palumbo

Anatomy of a Token Bill: Where 11.8 Billion AI Tokens Go

I spend most of my days building software with an AI coding agent, so out of curiosity I added up a month of it: 11.8 billion tokens across roughly 31,700 API calls. That is a large number, but the breakdown surprised me. 96% of it is one category I never used to think about.

This is a plain-English tour of what those numbers actually mean. If you use these tools or pay for them, it is worth knowing how to read the bill.

11.8B
tokens / 30 days
31,705
API calls
96%
cache reads
408M
avg / active day
01 · The vocabulary

Four kinds of tokens

A token is a chunk of text, roughly three quarters of a word. Every request to a language model is metered in tokens. Not all tokens are the same, and they do not all cost the same. They fall into four buckets:

  • Input - fresh text the model reads for the first time.
  • Output - everything the model writes back: its answer, the code it produces, the tool calls it makes.
  • Cache creation - the first time a large chunk of context is sent, it is written into a short-lived cache so it does not have to be re-sent on the next turn.
  • Cache read - on every following turn, that stored context is read back from the cache instead of being reprocessed from scratch.
The notebook analogy Input is telling someone something new. Output is their reply. Cache creation is them jotting it into a notebook. Cache read is them glancing at that notebook on every future turn - so they stay oriented without making you repeat the whole conversation each time.
02 · A real month

What the usage actually looks like

Here is every day of my last thirty. There are quiet stretches, a climb through heavy build weeks, and one 1.42-billion-token day when I had several projects going at once. Across 29 active days it averaged about 408 million tokens a day.

Daily token usage, mid-June to mid-July 2026 0 0.5B 1.0B 1.5B 06-18: 45 M tokens 06-20: 27 M tokens 06-21: 47 M tokens 06-22: 39 M tokens 06-23: 59 M tokens 06-24: 512 M tokens 06-25: 508 M tokens 06-26: 585 M tokens 06-27: 605 M tokens 06-28: 380 M tokens 06-30: 394 M tokens 07-01: 667 M tokens 07-02: 190 M tokens 07-03: 475 M tokens 07-04: 228 M tokens 07-05: 118 M tokens 07-06: 400 M tokens 07-07: 621 M tokens 07-08: 249 M tokens 07-09: 404 M tokens 07-10: 493 M tokens 07-11: 588 M tokens 07-12: 428 M tokens 07-13: 679 M tokens 07-14: 737 M tokens 07-15: 136 M tokens 07-16: 113 M tokens 07-17: 675 M tokens 07-18: 1424 M tokens 1.42B 06-18 06-23 06-27 07-02 07-06 07-10 07-14 07-18
Daily total tokens across all four types, mid-June to mid-July 2026. Hover any bar for the exact figure. The lone highlighted day is the 1.42-billion-token peak.
03 · The shape

Where the 96% goes

Split those 11.8 billion tokens by type and one category takes up almost all of it. The four buckets span four orders of magnitude, so a plain bar chart would show a single stripe - here they are on a log scale, where each step is ten times the last:

Token composition over 30 days (log scale) Cache read 11.3B 95.9% Cache create 457M 3.9% Output 28M 0.24% Input 3M 0.03% log scale - each gridline is 10× the last
The same 30 days, split by token type. Watch the scale. Cache reads are hundreds to thousands of times larger than the rest.
Type30-day totalShare
Cache read11,336,000,00095.9%
Cache create457,000,0003.9%
Output27,900,0000.24%
Input3,000,0000.03%

Cache read is so large because of how a coding agent works. In a long session, the same large context - the codebase it is reading, the conversation so far, the definitions of every tool it can call - has to be present on every single turn. Hundreds of turns over a context approaching a million tokens adds up to billions of cache reads from a single afternoon's work.

04 · The receipts

How I measured this

These are my own numbers, not a vendor benchmark. My AI coding agent keeps a local log of every session, and each turn records exactly how many tokens fell into each of the four buckets. I summed those per-turn records by day across a 30-day window (29 days had activity), deduping by request id so nothing is counted twice. I did not estimate or sample anything. I added up the logs.

Here is the daily data behind every chart above. Download it and check my work:

One caveat: this is one user and one tool over one month. The exact numbers are mine. I would expect the general shape to hold for anyone using an agent like this, but I have not verified that.

05 · The point

Why this is good news

That lopsided split is not waste. It is the reason this kind of work is affordable. Providers deliberately price the buckets differently: a cache read costs roughly a tenth of a normal input token, while writing to the cache costs a small premium. So the 96% of my month that is cache read is billed at about a tenth of what it would cost if every turn re-sent the whole context cold. Without caching, the same work would cost on the order of ten times more.

It also changes what "usage" honestly means. The tokens that represent real building - the model's output plus the new context it writes to cache - came to about 485 million of the 11.8 billion. That is the signal I actually watch across my projects. The other 11.3 billion is the model re-reading context so it stays oriented. It is cheap, and it tracks how long I worked more than how much I produced.

The takeaway Once you know what the four buckets are, a big token number stops being alarming. Most of my 11.8 billion is cache reads, and cache reads are cheap.