The discount is a cache hit
A cheaper cache read helps only when the client actually reuses the context. Claude Code’s September rollout of Fable 5.1 shows how a working agent can finish its task while missing the economics used to justify it.
A model’s cache discount depends on the client’s request construction, so the useful cost comparison follows a complete tool loop and separates cache reads, writes and uncached input.
01A finished change with an unexpected bill
On 3 September 2026, Claude Code 2.1.260 shipped a repair for Fable 5.1 prompt caching. Its release note describes Fable 5.1 context attached after tool results being sent again as uncached input. The same release stopped mid-session effort changes from invalidating the cache and added explanations for cache misses to the cost display. These are the vendor’s reported fixes, rather than a measurement of the amount any customer overpaid.8
Imagine an engineer asking a coding agent to migrate a service. The agent reads the repository, edits a handler, runs tests and returns to the model with the results. The change passes review. The engineer then sees more uncached input than expected, despite choosing a model advertised as cheaper for long agent runs. This is a hypothetical workload; we have no billing trace from such a team.
The migration could still succeed. A test runner checks the application; it does not establish how the preceding model request was billed. An operator looking only at the patch and the total session cost could miss which repeated block moved from the discounted category into ordinary input.
02The rate card has several input lines
Fable 5.1 launched on 1 September with $10 input and $50 output per million tokens; cache reads were $0.25. Anthropic’s launch notes also named the model’s default 1M context window. Capacity and price describe different things: being able to include a large repository does not establish that later requests reuse it cheaply.3
The table preserves the rates recorded for this September article. A cache write has its own price, and new material can remain ordinary input. Anthropic estimated savings of about 25 percent for typical workloads and up to about 45 percent for highly agentic ones. Those were workload estimates, not a discount applied to every token or an independently reproduced result.45
| Line | Fable 5.1 | Other Claude models (typical) |
|---|---|---|
| Base input | $10 | varies by model |
| Output | $50 | varies by model |
| 5m cache write | $12.50 (1.25×) | 1.25× base input |
| 1h cache write | $20 (2×) | 2× base input |
| Cache read / hit | $0.25 (0.025×) | 0.1× base input |
03The client arrived before the repair
Claude Code 2.1.257 made Fable 5.1 the default Fable model on 1 September at 17:53 UTC. That describes the Fable selection, not every session’s model: an explicit choice or a different route can change what actually runs. The 2.1.258 and 2.1.259 notes did not announce the subsequent Fable cache repair.91011
The repair followed in 2.1.260 on 3 September at 23:48 UTC, roughly 54 hours after that default was introduced. This interval identifies a release exposure window. It does not tell us when individual installations updated, which clients were running, or how much of their context followed the affected path.89
For the imagined migration, the important distinction is the context after a tool result. The note does not say that every input token lost caching. An earlier stable prefix could still be reused while an affected attachment was repeatedly billed as ordinary input. Treating the whole session as a cache miss would exaggerate what the published evidence establishes.8
| Tag | Published (UTC) | Fable-relevant change |
|---|---|---|
| v2.1.257 | 1 Sep 17:53 | Fable 5.1 default Fable model; $0.25 cache reads in the note |
| v2.1.258 | 1 Sep 22:33 | Monterey + remote session fixes; no cache line |
| v2.1.259 | 2 Sep 22:33 | managed MCP, headless deny; no Fable cache line |
| v2.1.260 | 3 Sep 23:48 | tool-result context cached again; effort no longer busts cache |
04Follow the repeated block
Think of one repository summary that the client needs again after a test run. Its place in the assembled request determines whether it belongs to the reusable prefix or to material outside the cache boundary. Identical prose visible in a terminal transcript does not by itself reveal that boundary. Anthropic’s current caching guide describes prefix reuse and separately reports reads, cache creation and uncached input in API usage.20
In our hypothetical migration, hold the task and the repeated block constant. One arrangement includes that block in the reusable prefix; another sends it as uncached input on each return from a tool. The diagram isolates that distinction. It is an explanation of the reported failure’s location, not a reconstruction of Claude Code’s complete internal prompt.
05A large difference on one line
Suppose, for arithmetic only, that the affected reusable block is 150,000 tokens and is read forty more times. That makes six million repeated tokens. At the September Fable 5.1 cache-read rate, those reads cost $1.50; at the base input rate, they cost $60. The difference is $58.50 on that chosen line. The block size and repetition count are assumptions, not observations from the bug.4
The example excludes the initial cache write, new input, generated output, retries and unrelated parts of the prompt. It also assumes the block would otherwise qualify for reuse. A shorter affected attachment produces a smaller difference; an expiring or changing prefix introduces another reason to pay for work again. None of those variables can be recovered from a release note alone.
For a current trace, the documentation checked on 18 October 2026 points to /usage (/cost is an alias). Its Prompt cache (main) line shows misses and cache warmth for the main conversation, excluding subagents, on v2.1.251 or later; likely-cause text needs v2.1.260. Follow that clue into the current caching guide before attributing a miss to the September defect. The displayed dollar figure is an estimate, not an invoice or a measure of subscription allowance. 21 22 23
06What a useful comparison would show
For a proposed check, use a disposable copy of the migration and record the actual client build, model, task and usage breakdown. Compare the same work through a tool result, a resumed session and an effort change. Keep the produced diff and acceptance result with the cost. We have not run that comparison here; its purpose would be to connect a billing change to the request path rather than to a different amount of work.
In the September sequence, 2.1.260 was the first release in this record that explicitly named the Fable tool-result cache fix. That historical floor is not a recommendation to install an old build today. The broader purchasing decision remains workload-specific: a smaller bill helps only if the resulting change is accepted without enough extra retries or review to erase the saving.8
→So what
- For a model whose advertised savings depend on reuse, retain the client version and the cache-read, write and uncached-input breakdown with one representative completed task.
- When costs move after an update, compare the same request path and acceptance result before attributing the difference to model pricing.
- Treat the September rates and 2.1.260 repair here as historical evidence. Check the current client and commercial terms before a new rollout.
?What would change our mind
- A vendor analysis showing that very little context followed the affected September path would reduce the likely practical impact; the release note gives no such distribution.
- A repeatable comparison with matched accepted changes, complete usage and retry costs could show that another factor dominated the bill. That would change the operational explanation for that workload.
- A clarification narrowing or correcting the 2.1.260 note would change the historical account. We have no fleet-level token delta or independent reproduction.
- 3Claude Platform release notes — 1 Sep 2026 (Fable 5.1)read 2026-10-18
- 4Anthropic — Claude API pricing (Fable 5.1 cache reads $0.25)read 2026-10-18
- 5Anthropic — Claude Fable product page (25% / ~45% estimates)read 2026-10-18
- 8github — claude-code v2.1.260read 2026-10-18
- 9github — claude-code v2.1.257read 2026-10-18
- 10github — claude-code v2.1.258read 2026-10-18
- 11github — claude-code v2.1.259read 2026-10-18
- 20Anthropic — current prompt caching guide; prefix and usage-category explanationread 2026-10-18
- 21Claude Code costs — current Session and Prompt cache diagnostics, checked 18 Oct 2026read 2026-10-18
- 22Claude Code commands — /usage and /cost alias, checked 18 Oct 2026read 2026-10-18
- 23Claude Code prompt caching — current miss causes and cache performance, checked 18 Oct 2026read 2026-10-18