Writing shorter prompts is the first economy everyone tries after they hear about crowded context windows. No file attached, no background, no example. The first answer misses the point, the second fixes half of it, and by the fourth you have typed more than you withheld.
The idea
A The unit text is split into before a model reads it. Anthropic puts English at roughly four characters per token, so 100 tokens run to 60 or 80 words. is what all of this is counted in: what you send, what comes back, and what your bill or usage limit measures. The two directions are not the same good. Input is bulk, cheap per unit, and reusable across turns. Output is made one token at a time, costs several times more, and is never reusable. A retry buys both again, so the only saving worth chasing is one fewer exchange.
ONE TURN sized by rate
your instruction .............. you ........... x1 the smallest
line on the bill
files + command output ........ the agent ..... x1 little each,
huge in bulk
every earlier turn, re-read ... session length . x1 paid again on
every message
the answer .................... the model ..... x5 most expensive
thing here
------------------------------------------------------------------
A RETRY = all four rows, a second time.How it works
A token is not even fixed inside one vendor. Anthropic documents its newer models using a newer tokenizer that produces about 30 percent more tokens for identical text, and calls its own count an estimate (both checked 13 August 2026). Identical text, newer model, a bigger number on the meter.
Reuse is the part worth understanding, and the part people lose by accident.
- What gets reused is a prefix, not a set of facts. The request is matched from the front, so a hit means everything up to some point was identical to a recent request.
- Anthropic's cache orders it as tools, then instructions, then messages. A change at any level discards that level and everything after it.
- A hit reads at about a tenth of the input rate. The entry lives an hour on a Claude subscription, and five minutes on an API key or on usage credits.
So reuse rewards a stable opening and a varying end. Put a timestamp or today's shifting notes near the front and you pay full price every time while feeling thrifty. Below a minimum length nothing is cached at all. That floor runs from 512 to 4,096 tokens and tracks the model's version rather than its size, so a current small model can have a higher floor than an older large one: Haiku 4.5 needs 4,096 tokens before anything caches, where Opus 5 starts at 512. No error tells you that you missed.
What to do
- Judge input by exchanges, not by length. A paragraph of constraint that prevents one retry has paid for itself before you send it.
- Put your stable material in the instruction file.
CLAUDE.mdin Claude Code, andAGENTS.mdor.cursor/rules/in Cursor, are read at the start and then sit at the front of every request, which is what makes them the opening a discount can land on. Claude Code reads that file once at launch, so an edit mid-session does not take effect: change it, then start a new session. - When you want a short answer, constrain the artifact rather than the thinking. Ask for the three lines that change, or one file, or a table with named columns. "Be brief" cuts the part that told you whether to trust the rest.
Where it breaks
The economy runs the other way too. Attaching the whole repository is not spending input well. It is the crowded context window with a bill attached, and it makes the answer worse as it makes the session expensive.
The cache discount is not a plan. It runs on a timer measured in minutes to an hour depending on how you pay, you cannot see whether you got it, and most products decide the details for you. A workflow that only works when the cache hits does not work.
On a flat subscription none of this reaches you as money. The units are your usage limit and your afternoon, and the shape is identical.