Quick answer
A cache read token is context the model reuses from the prompt cache instead of processing again. It is billed at a lower rate than fresh input, which is why a long session with a stable prefix costs less per turn than its raw input count suggests. Cache reads appear as their own field in Claude Code logs.
How the cache works
The provider hashes the start of the request. If that prefix matches a recent request, it reuses the processed state. Everything after the first difference must be processed fresh.
| Event | Field | Cost |
|---|---|---|
| First time context is sent | Cache write | Higher than input |
| Later turn with same prefix | Cache read | Lower than input |
| Prefix changed | Cache write again | Higher |
| New session | No cache | Full input |
Raise the cache read share
- Keep the system prompt and project instructions stable.
- Put long, unchanging context first.
- Put the new request last.
- Avoid editing instruction files mid-session.
- Do not restart the session for every follow-up.
Read the number
In a healthy long session, cache reads often exceed fresh input. If the field is zero on every turn, something early in the prompt is changing, or your client is not enabling caching.
UsageAtlas shows cache read and fresh input separately so the ratio is visible per session.
Cache reads in the bill
A cache read is input the provider reused from a previous request instead of processing fresh. It is billed at a fraction of the normal input rate, which is why a session that looks enormous in token terms can cost far less than the headline number suggests.
| Field | Means | Billing effect |
|---|---|---|
| Input | Fresh tokens sent | Full input rate |
| Cache read | Reused prefix | Discounted |
| Cache write | Tokens stored for reuse | Surcharged once |
| Output | Generated tokens | Output rate |
Reads only happen when the prefix matches byte for byte. A changing timestamp at the top of the prompt prevents them entirely. The cache write guide covers the other half.
Questions, answered
Are cache read tokens free?
No. They are discounted relative to fresh input, but still billed.
Does a cache read change the answer?
No. The model sees the same context; the provider just avoids reprocessing it.
How long does a cache last?
It expires after a period of disuse that the provider controls. Short gaps keep it warm; long gaps force a rewrite.