Claude Code Sends Up to 75,000 Tokens Before It Reads Your Prompt — Here's How to Cut That
A recent test by AI consulting firm Systima compared token usage between Claude Code and the open-source alternative OpenCode, and found that Claude Code sends roughly 32,800 tokens before it even processes your first instruction — a number that climbed to 75,000 tokens in real-world sessions with more tools and context loaded (as reported by DigitalToday).
If you’re paying per token or watching your weekly usage limits, that’s not a rounding error — it’s context you’re paying for before you’ve asked a single question.
Where the overhead actually comes from
Every Claude Code session loads several things into context before your prompt is processed:
- The system prompt and built-in tool definitions (Read, Edit, Bash, and so on)
- Any
CLAUDE.mdfiles in scope — global, project, and local - Schemas for every connected MCP server, even ones you don’t use in that session
- Available skills and slash command definitions
None of this is wasted by design — it’s what lets Claude Code act autonomously without you re-explaining your stack every message. But it does mean the overhead scales with how much you’ve configured, not with what you’re actually asking it to do.
Why this matters right now
This lands at an interesting moment: Anthropic has been extending Claude Fable 5 access and keeping Claude Code’s weekly rate limits 50% higher on paid plans (through July 19, per Simon Willison) — likely a response to exactly this kind of usage pressure. Higher baseline token cost per session means users burn through weekly limits faster, so tightening your own setup buys you more working sessions within whatever limit you’re on.
How to cut your own overhead
Trim CLAUDE.md files. Long-standing instructions get stale. Delete rules that no longer apply, and keep the file scoped to what actually changes Claude’s behavior — not general context it could infer from the code.
Disconnect MCP servers you’re not using this session. Every connected server adds its tool schemas to the loaded context, whether or not you touch it. Toggle off servers you don’t need for the current task.
Use /compact before context balloons, not after. Compacting a conversation early keeps the working context smaller for every subsequent message, rather than letting it accumulate for an entire long session.
Prefer scoped skills over always-on instructions. If a workflow only applies occasionally, put it in a skill invoked on demand rather than a standing CLAUDE.md rule loaded into every session regardless of relevance.
The takeaway
None of this is a bug — it’s the tradeoff for an agent that can read your codebase and act without hand-holding. But if you’re hitting weekly limits sooner than expected, your CLAUDE.md files and MCP connections are the first place to look, not your prompts.