I thought 80% of my token usage was re-sent context
In my agentic AI sessions, 85-98% of token spend was overhead. Here are the changes that actually reduced it.
I thought 80% of my token usage was re-sent context. That felt uncomfortable enough to measure.
The actual range: 85-98%. Higher the longer the session runs.
I built a small parser to read the exact usage fields Anthropic embeds in session files, across ten sessions and roughly six weeks of heavy agentic workflows.
Overall average: 88.5% cache reads.
My longest session was 4 hours and 186 turns. It consumed 16.2 million effective input tokens. The literal fresh text I typed across all 186 turns was 357 tokens.
The rest was the model re-reading what was already in context.
How It Happens
Every turn resends full history plus everything loaded at session start: project docs, instructions, memory files.
On turn 1 that was about 23k tokens. By turn 186 it was around 127k tokens per turn because each assistant response is appended and then resent.
Per-turn cost grew 6x.
A session that runs twice as long does not cost twice as much. It costs significantly more.
What This Means
In agentic AI workflows, the dominant cost driver is usually not what you ask now. It is what is already loaded.
If you carry 15k tokens of context, you pay for it on every single turn.
What I Changed
- Compact mid-session.
I now compact around turn 25-30. On the 186-turn session, this would have reduced subsequent per-turn cache reads by an estimated 60-70%, roughly 9 million tokens not re-read.
- Trim auto-loaded context files.
I cut instruction files by around 30%. Smaller session-start context gets multiplied across every turn.
- End with a handover note, not an endless session.
I close sessions with a short handover: what was decided, what remains open, and where files live. Next session starts fresh instead of inheriting bloated history.
- Split entry context from details.
Keep the always-loaded entry file minimal. Load detailed files on demand.
- Route simple tasks to smaller models.
Not the largest lever, but still meaningful. Cheaper model classes handle repetitive tasks well.
Caveat
This was based on ten sessions from one workflow. It is a practical finding, not a formal study.
The pattern was strong enough to act on: in agentic systems, you usually pay for what stays loaded, not what you type.
Measure first, then optimize.