If Claude Code reaches a usage limit long before you expected, the useful first question is not “How do I save tokens?” It is which counter moved, under which billing path, during what kind of session?
Five hours describes the session limit's reset window, not a promise of five continuous hours of coding or a fixed number of messages. Anthropic says usable activity varies with message and file length, conversation length, model, and feature. Pro and Max activity is also shared across Claude and Claude Code. Fast depletion by itself therefore does not prove a bug, a universal quota cut, or a peak-time rule.
Before changing anything, capture these six items:
- your plan and the current timestamp;
- the five-hour and weekly indicators in Settings > Usage;
- the output of
/usage; - the output of
/context; - the model shown by
/model; - whether an
ANTHROPIC_API_KEY, optional tools, or another Claude session is active.
Do not change the setup until you have that snapshot. It lets you classify the symptom, run one comparable test, and preserve an unexplained case for support instead of guessing.
Start with the counter, not the theory
Several different limits and meters can feel like the same problem. Treating them as interchangeable produces bad fixes.
| What you observe | What it can establish | What it cannot establish |
|---|---|---|
| Five-hour progress in Settings > Usage | Which session indicator is moving and when it resets | Why it moved quickly |
| Weekly progress in Settings > Usage | A longer-horizon limit is involved | That the current five-hour session is defective |
/usage output | The session cost, plan-limit, and activity information available to your installed version and account | A universal allowance for every user |
/context output | How much material the current conversation has loaded | That context alone caused the observed depletion |
/model output | Which model is actually selected for this account and session | A guaranteed savings percentage from switching |
An active ANTHROPIC_API_KEY | Claude Code may be using API billing rather than included subscription usage | Whether a particular charge or limit is correct without account records |
Start with Settings > Usage, because supported plans can show both the five-hour session and weekly progress, along with remaining session time and reset information. Then compare that screen with /usage. Labels and breakdowns can vary by plan, account, and Claude Code version, so your own output is stronger diagnostic evidence than a screenshot from someone else's setup.
If the weekly indicator is the constraint, waiting for or optimizing around a five-hour reset will not solve the actual problem. If the account screen, authentication state, and /usage output do not describe the setup you intended, resolve that mismatch before optimizing context. If the five-hour indicator is the one moving unusually, continue with a controlled session comparison.
Check the billing path before you optimize prompts
Pro and Max subscription activity is shared across Claude and Claude Code. Work done in another Claude surface can therefore matter when you interpret the subscription usage screen. Conversely, Anthropic documents API credits as a distinct billed system, and an ANTHROPIC_API_KEY can make Claude Code use API billing instead of the usage included with a Pro or Max subscription.
Do not paste or publish the key. Record only whether it is set and whether the observed /usage output and account screen are consistent with the billing path you intended.
A useful classification looks like this:
- Subscription session limit: the five-hour indicator is the active constraint.
- Subscription weekly limit: the weekly indicator, not the session window, is blocking progress.
- Shared subscription activity: Claude or another Claude Code session may account for part of the movement, but you still need timestamps to establish that for your account.
- API billing: API usage and credits are involved, so subscription-limit advice may be irrelevant.
- Unclassified: the counters, billing path, or authentication state do not agree; preserve the evidence before changing the environment.

Why later turns can carry more context
Each Claude Code turn can include the earlier conversation, project context such as CLAUDE.md and files already read, plus the new prompt. As a session grows, later turns may carry substantially more context than the first turn. This is a documented mechanism, but it is not proof that context caused your particular account's rapid depletion.
Use /context to inspect what is loaded. If the conversation contains finished work, stale file reads, or material unrelated to the next task, you have three different actions available:
- Keep the session unchanged when continuity matters and use it as the “before” condition.
- Use
/compactto summarize the conversation when you need continuity with less carried material. - Use
/clearonly after preserving anything important. It starts fresh and is irreversible.
Neither /compact nor /clear restores allowance that has already been used. Their diagnostic value is that they let you compare a smaller future context with the previous condition.
Model choice is another observable variable. Anthropic describes Sonnet as the default for most coding work and says Opus uses meaningfully more quota. Check /model rather than assuming what is active. Switching models may change consumption, but the evidence does not support a universal multiplier or a guaranteed saving for every task.
Run one clean comparison instead of changing everything
If you simultaneously clear context, change models, disable tools, shorten prompts, and switch tasks, a slower session tells you almost nothing. Run a comparison that changes one variable while keeping the work as similar as practical.
1. Save the before-state
Record the date, time zone, plan, billing path, reset information, model, /usage, /context, active tools, and the kind of work performed. Note whether another Claude or Claude Code session was active. Screenshots can help, but redact keys, repository secrets, filenames, and proprietary content.
2. Choose the most plausible variable
Use the evidence you just captured:
- If context is unusually full, compare the next similar task after
/compactor, when safe, a fresh session. - If Opus is selected for routine work, compare a suitable task with Sonnet.
- If the billing path is unexpected, correct that configuration before testing usage efficiency.
- If optional tools or parallel activity changed at the same time as the symptom, keep them stable for the baseline, then test one change separately.
These are experiments, not diagnoses. A difference tells you that the changed condition deserves another controlled check; it does not prove a universal product rule.
3. Compare like with like
Choose work with a similar scope: for example, two small bug investigations in comparable repositories, not a typo fix versus a multi-package migration. Capture the same observations at the start and end. Avoid comparing only wall-clock time, because the five-hour window is not guaranteed active runtime and the work itself can differ dramatically.
4. Decide what the result supports
- Clear, repeatable difference: keep the useful reversible change and verify it once more before adopting a permanent workflow rule.
- No meaningful difference: restore the preferred setup and test the next plausible variable.
- Counters still move unexpectedly under a stable setup: stop cycling through tips and assemble an escalation record.

When to treat it as an unexplained anomaly
Public documentation cannot identify the root cause for an individual account. The first-party pages checked for this article also do not establish a current universal quota reduction, a peak-time weighting rule, or a metering incident behind community reports. Absence of a public notice does not rule out an account-specific, regional, unreported, or later-confirmed problem.
Escalate when the symptom remains repeatable after you have identified the counter and billing path, held the model and task reasonably stable, and captured before-and-after observations. A useful support record includes:
- plan and intended billing path;
- date, time zone, approximate start time, and displayed reset time;
- which session or weekly indicator moved;
- sanitized Settings > Usage screenshots;
- sanitized
/usage,/context, and/modeloutput; - whether Claude, another Claude Code session, or optional tools were active;
- a concise description of the comparable tasks;
- what single variable you changed and what happened;
- the current Claude status page result at the time of the test.
Describe the observation, not a theory: “The five-hour indicator moved from A to B during this controlled task” is more actionable than “Anthropic secretly reduced my quota.” Do not include API keys, secrets, private source code, or sensitive account data.
Changes that can help without hiding the diagnosis
Once you know which counter is involved, use changes that match the evidence:
- Keep unrelated tasks in separate sessions so completed context does not automatically follow every new turn.
- Inspect
/contextbefore a long continuation and use/compactwhen continuity is still valuable. - Use
/clearonly when a truly fresh context is worth losing the current conversation state. - Check
/modeland reserve a model that consumes more quota for work where its capability is actually needed. - Check
/usageduring the session instead of estimating consumption from elapsed time. - Confirm whether you intend subscription usage or API billing before beginning expensive work.
These practices can make usage easier to understand and may reduce avoidable consumption. They cannot guarantee a fixed number of messages, a five-hour coding duration, or a particular savings percentage.
Common questions
Does the Claude limit reset after five hours?
Anthropic documents session-based limits that reset every five hours, and Settings > Usage can show remaining session time and reset information for supported plans. Use the time shown in your own account rather than calculating from a forum example. Weekly limits also exist, so a session reset does not necessarily remove every constraint.
Does /compact give used allowance back?
No. /compact summarizes the conversation to reduce the context carried into future turns; it does not restore usage already consumed. /clear also starts a fresh context rather than refunding the previous one.
Should I switch from Opus to Sonnet?
It is a reasonable controlled test for suitable coding work. Anthropic describes Sonnet as the default for most coding tasks and Opus as using meaningfully more quota. Use /model to verify the active choice, and do not assume a fixed multiplier or guaranteed result.
Is rapid depletion proof of a Claude Code bug?
No. It can be consistent with message and file length, accumulated context, model choice, feature use, shared Claude activity, or an unexpected billing path. It can also remain unexplained after those checks. Only account-specific observations and, when necessary, support investigation can separate those cases.
The practical stopping rule
Do not optimize indefinitely. If you can name the counter, confirm the billing path, and reproduce a difference by changing one variable, you have a usable workflow decision. If the same rapid movement persists under a comparable, well-recorded setup, preserve the record and escalate it as an unexplained anomaly.
That boundary is more honest—and more useful—than either a generic list of token-saving tips or a confident claim that every fast five-hour limit is a product defect.



