Why Claude Sonnet 5 can appear to drain Code limits faster
There is a real technical reason Sonnet 5 can consume more tokens for the same material than Sonnet 4.6. When Anthropic launched Sonnet 5 on 30 June 2026, it disclosed that the model uses an updated tokenizer. The tradeoff is that the same input can become roughly 1.0 to 1.35 times as many tokens depending on the content type .
That does not mean Sonnet 5 is simply less efficient. Anthropic designed the model to be considerably more agentic: it can investigate code, use terminals and other tools, sustain longer engineering work, check its own output, and follow complex tasks further toward completion. Those capabilities can save human effort, but they can also mean more reasoning, more tool calls, more file reads, and more accumulated context during a substantial Claude Code session.
Anthropic explicitly said it increased rate limits across Chat, Cowork, Claude Code, and the Claude Platform when Sonnet 5 launched to accommodate the higher token usage associated with higher effort levels. The company also allows users to choose effort based on the project, rather than treating maximum reasoning as the correct default for every job.
Primary source: Anthropic’s Claude Sonnet 5 announcement .
The hidden problem is cumulative context
Claude Code’s current documentation gives a useful explanation
of what happens on each turn. The model receives three broad
categories of information:
the conversation so far, project context, and your new
prompt
.
Project context can include your
CLAUDE.md
instructions and files Claude has already read.
The conversation history usually grows fastest. Imagine a debugging session where Claude has opened twenty files, produced several diffs, run tests, read error logs, and discussed failed approaches. Your next message might contain only six words, but that six-word instruction can sit on top of a much larger context carried forward from the earlier work.
| Context source | Why it can grow |
|---|---|
| Conversation history | Previous instructions, explanations, diffs, tool results, and debugging discussion remain part of the working session. |
| Files Claude has read | Large source files, generated code, logs, lockfiles, and other project material can expand the context. |
| CLAUDE.md | Project instructions are supplied repeatedly so Claude continues following your working rules. |
| Agentic work | Searching, testing, creating files, running commands, and other multi-step actions can generate additional context. |
| Effort level | Higher reasoning effort can increase the amount of work the model performs before and between actions. |
Anthropic explains both the Claude Code context mechanics and broader usage factors in Models, usage, and limits in Claude Code and Usage limit best practices .
1. Use /clear when you move to a different task
This is the simplest fix and, according to Anthropic, one of the most effective. If you have finished one problem and are moving to another unrelated problem, do not keep paying to carry the first conversation through every later turn.
Run
/clear
before the new task. Claude Code removes the chat history while
preserving your project-level instructions and files on disk.
You are giving the next task a clean conversation rather than
making it inherit an unrelated debugging trail.
Simple decision rule
If my next request would make complete sense in a brand-new
Claude Code session, use /clear before sending it.
Do not clear blindly.
/clear
removes the conversation and cannot be undone. If you still
need decisions or findings from the current session, save
them first or use
/compact
instead.
Command behavior: Anthropic’s Claude Code usage guide .
2. Use /compact when the task is still the same
Sometimes starting over would be counterproductive. You may be halfway through a difficult refactor, still need the decisions made earlier in the session, and want Claude to continue without carrying every raw exchange indefinitely.
That is what
/compact
is for. Claude Code summarizes the existing conversation into a
shorter representation, frees context space, and retains the
essential state needed to continue. Claude Code can also
compact automatically as a session approaches its context
limit, but you do not have to wait until the window is nearly
full.
- Use /clear
- You are starting a different task and the old chat is no longer useful.
- Use /compact
- You are continuing the same task but the session has become long and expensive.
- Use /context
- You want to inspect what Claude Code currently has loaded before deciding what to remove or compress.
This distinction matters because context-window pressure and plan usage are related but not identical. Compaction helps reduce what the model must continue carrying, while clearing is the stronger reset when the old information has no value at all.
Context commands: Models, usage, and limits in Claude Code .
3. Stop loading more code than Claude needs
Token waste can begin before Claude writes a single line. If you paste an entire source file, enormous build log, lockfile, database dump, or stack trace into the conversation, that material can remain in context for the rest of the session.
Anthropic’s Claude Code guidance recommends pointing Claude at
the relevant file and location instead of pasting everything.
A bare file path lets Claude inspect what it needs. Anthropic
also notes that using the
@
file shortcut can inject the complete file and its associated
CLAUDE.md
tree into context, so a normal path can be more economical when
you do not need the entire file loaded immediately.
-
Name the exact file and function. Say “inspect
validateTokeninsrc/auth.ts” instead of pasting the whole authentication layer. -
Trim logs before pasting them. Keep the error and the surrounding lines that explain it; remove thousands of unrelated successful entries.
-
Keep large generated material on disk. Let Claude open what it needs instead of turning an entire lockfile, data export, or build artifact into permanent conversation history.
-
Keep CLAUDE.md focused. Anthropic recommends keeping it tight because the file is supplied repeatedly. Its current guidance suggests roughly 200 lines as a useful ceiling rather than allowing old, irrelevant instructions to accumulate indefinitely.
Prompt caching can make repeated instructions cheaper than raw
token counts suggest, but cached content still occupies
context-window space. A bloated
CLAUDE.md
can therefore hurt even when its direct billing cost is partly
reduced.
File and project-context guidance: Anthropic’s Claude Code usage guide .
4. Make Claude plan expensive changes before it executes them
A few hundred planning tokens can be cheaper than thousands of tokens spent generating the wrong implementation, reviewing it, reverting it, explaining the mistake, and generating a second implementation.
Anthropic recommends planning before changes that touch more than a couple of files. You can use Plan Mode or simply ask Claude to name the files it intends to edit and explain what it will change in each one before it writes code.
A low-waste preflight prompt
Before editing anything, identify the root cause, list the
files you need to inspect or change, explain the minimum
change required in each file, and state how you will verify
the fix. Do not modify code until the plan is internally
consistent.
The same principle applies to model and effort selection. Anthropic describes Sonnet as the appropriate model for the large majority of coding work, while Haiku is suited to quick mechanical jobs and Opus to genuinely difficult debugging, architecture, or broad refactors. Sonnet 5 itself also supports different effort levels, and Anthropic notes that effort level affects usage.
In other words, the goal is not to force every coding request into the cheapest possible setting. It is to spend extra reasoning only where extra reasoning prevents more expensive mistakes.
Planning and model-selection guidance: Models, usage, and limits in Claude Code and Anthropic’s Sonnet 5 release notes .
Do not confuse a Claude usage limit with a full context window
These are two different problems. A usage limit controls how much Claude you can use during the plan’s allowance period. A context limit controls how much information a particular working session can hold at once.
| Problem | What it means | Best next action |
|---|---|---|
| Plan usage limit | You have consumed the available plan allowance for the current period. | Check the reset time, use an available reset or usage credits where supported, or wait for the allowance to replenish. |
| Context window filling | The current coding conversation contains too much accumulated history and project material. |
Use
/compact
to preserve a summary or
/clear
when the old history is no longer needed.
|
| API spend rising | Claude Code is authenticated with an API key and is being billed by token rather than drawing solely from an included subscription pool. |
Use
/cost
and the provider dashboard to inspect spend, then reduce
oversized context or unnecessary high-cost work.
|
This distinction also explains why
/compact
does not magically restore a five-hour or weekly subscription
allowance you have already consumed. It improves the working
context; it does not rewind past usage.
Limit definitions: How usage and length limits work .
How to tell what is actually draining your allowance
Do not diagnose token waste only by how quickly a progress bar appears to move. Check the session itself. Claude Code exposes commands that help separate model choice, accumulated context, and API spend.
- /model
- Shows the model currently active for your account and lets you switch among available models. Anthropic says this command is the source of truth because exact versions and availability change over time.
- /context
- Shows what is currently occupying the session context so you can spot bloated history or unnecessary material.
- /cost
- Shows running session token and dollar usage when Claude Code is using API billing.
- Settings → Usage
- For supported paid Claude plans, this shows progress toward the five-hour session allowance and weekly usage limits, including the relevant reset timing.
Remember that subscription usage can also be shared across Claude surfaces. Anthropic’s current plan documentation says activity in Claude and Claude Code can draw from the same included usage pool, so an apparently quiet terminal session may not be the only thing consuming the account’s allowance.
Bottom line: Sonnet 5’s tokenizer can make identical material count as more tokens than it did on Sonnet 4.6, but the most controllable source of waste is still session design. Keep unrelated tasks separate, compress history that still matters, load only the code Claude needs, and prevent large wrong edits before they happen.
Monitoring and plan guidance: Claude Code models, usage, and limits , Anthropic usage best practices , and Claude Code with Pro or Max .