Claude limit reached: what to do next
Hit a Claude usage limit? Work out which window you are waiting on, then pick a route: smaller model, smaller context, usage credits, or the API.
Which Claude limit did you hit
A Claude limit reached message names the window you are waiting on, and that window decides what you can do next. Session and weekly limits cover every model at once, so switching models does not give your access back. A limit that names one model is the exception: change models and you keep working while that one model stays blocked.
Claude Code prints the window and its reset time in the same line:
You've hit your session limit · resets 3:45pm
You've hit your weekly limit · resets Mon 12:00am
You've hit your Opus limit · resets 3:45pmThe session window is a rolling five hours. Weekly windows reset at a fixed time each week that is assigned to your account, so the day and the hour stay the same from one week to the next. A Pro plan has the five hour session window plus one weekly limit that applies across all models. A Max plan adds a second weekly limit that applies to one model family on its own. The ceilings themselves live in the full breakdown of Claude usage limits. This page starts where that one ends.
Here is the part that catches people out. Every request counts against the session window and the weekly window at the same time, so one heavy afternoon can empty the weekly allowance while the five hour window still has room in it. Read the reset time before you plan the rest of your day. A reset at 3:45pm is a coffee break. A reset on Monday at midnight is not.
Read the meter before you guess
On claude.ai, open Settings and then Usage. Progress bars show how much of the five hour session window and each weekly window you have spent, so you can see which one is empty instead of guessing.
In Claude Code, run /usage. It shows the same plan bars plus a breakdown of where recent usage went, attributed to skills, subagents, plugins and individual MCP (model context protocol) servers as a percentage of the total. Press d for the last 24 hours and w for the last 7 days. It also flags any pattern that accounts for 10% or more of recent usage, and the two you will see most are long context and cache misses.
Two caveats. The breakdown is computed from session history stored on that machine, so work you did on another laptop or on claude.ai is missing from it. And the dollar figure in the Session block at the top is priced at standard list rates for API (application programming interface) users, which means it is not your bill when you are on a subscription.
Does switching to a smaller model help?
Only when the message names a model. After You've hit your Opus limit, run /model, pick Sonnet or Haiku, and the session carries on with everything in context. After You've hit your session limit or You've hit your weekly limit, /model changes nothing, because those windows are shared across every model.
The switch is worth far more before you hit the wall than after. Sonnet handles most coding work at a fraction of the Opus rate, so leaving Opus as your default is one of the two habits behind most surprise usage. The other is a session that never gets cleared. Give mechanical edits and log triage to Haiku, and keep Opus for the design decision you are genuinely stuck on. Choosing between Opus, Sonnet and Haiku goes through where each one earns its price.
Stop paying for context you stopped using
Claude Code sends your whole conversation with every request, and each time Claude uses a tool it sends another request carrying that batch of tool results. Prompt caching means the history is re-read at the cached rate instead of the full input rate, which makes it cheaper, not free. So a one line question in a session you have had open since morning still draws usage for the entire conversation.
/context
/clear
/compact Focus on the failing tests and the files we changed/clear costs nothing, because it throws the context away rather than reading it. /compact has to read the conversation it summarizes, so compacting a very large context is itself a large request. Use /clear when you move to unrelated work, and /compact only when you are mid task and need the thread to survive. Run /rename before clearing so you can find the session again with /resume.
Cache lifetime matters more than most people expect. On a subscription the cache lives for an hour. It drops to five minutes once you are drawing on usage credits, and five minutes is also the default on an API key. Your first message after a long lunch misses the cache and reprocesses the whole context at full input price, which is why usage often jumps for no visible reason. Where prompt caching pays for itself covers the arithmetic.
Three more levers sit in the same place. /mcp lists your configured servers so you can switch off the ones this task does not need. A long CLAUDE.md loads at session start whether the work needs it or not, so move specialized instructions into skills, which load only when invoked. And extended thinking is billed as output tokens, which is the expensive half, so lower it with /effort, turn it off in /config, or set MAX_THINKING_TOKENS=8000 on a model with a fixed thinking budget.
Split the job so it fits inside one window
Press Shift+Tab to cycle into plan mode before a large change. Claude explores the codebase and proposes an approach for your approval, and a wrong direction caught there costs one plan instead of two hours of edits plus the rework.
Delegate loud operations to subagents. Running a test suite or reading a 10,000 line log inside a subagent keeps the raw output in that subagent's context, and only the summary returns to your main conversation.
Press Escape the moment Claude heads somewhere wrong. /rewind restores both the conversation and the code to an earlier checkpoint, so you are not paying to unpick work you never wanted.
Should you buy usage credits or use the API?
Usage credits let a Pro or Max account keep working past the plan allowance, billed at standard API rates. Turn them on under Settings and then Usage on claude.ai with a payment method attached, or run /usage-credits in Claude Code, which opens your billing settings in the browser. Credits apply to Claude conversations and to Claude Code terminal usage, with a daily redemption limit of $2000. The command needs a subscription login, so it is not available when you authenticate with an API key. If you are topping up with credits most weeks, a bigger allowance is usually the cheaper habit, and the gap between the $100 and $200 Max tiers is a usage multiplier rather than any difference in models or features.
The other route is a plain API key from the Claude Console, billed per token with no session or weekly window at all. One trap comes with it: a stray ANTHROPIC_API_KEY in your environment routes Claude Code through that key instead of your subscription without saying so. You find out from the bill, or from this:
API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.That 429 is the rate limit on the key, not on your plan. Run /status and confirm the active credential is the one you meant to use.
What does an afternoon on the API cost?
The worked example below is one afternoon of agent-style coding: 200,000 uncached input tokens, 1.8 million cache reads, and 150,000 output tokens. Prices are Anthropic list rates as of August 2026. Every one of those rates is quoted per million tokens, so if that unit still feels abstract, what a million tokens is actually worth turns it into an amount of reading and writing you can picture.
The data behind this chart
[
{
"label": "Opus 5",
"input_usd_per_mtok": 5,
"cache_read_usd_per_mtok": 0.5,
"output_usd_per_mtok": 25,
"afternoon_usd": 5.65
},
{
"label": "Sonnet 5",
"input_usd_per_mtok": 2,
"cache_read_usd_per_mtok": 0.2,
"output_usd_per_mtok": 10,
"afternoon_usd": 2.26
},
{
"label": "Haiku 4.5",
"input_usd_per_mtok": 1,
"cache_read_usd_per_mtok": 0.1,
"output_usd_per_mtok": 5,
"afternoon_usd": 1.13
}
]The same afternoon costs $5.65 on Opus 5 and $1.13 on Haiku 4.5. Output is what moves the total: at $25 per million tokens on Opus 5 against $5 on Haiku 4.5, the 150,000 tokens Claude writes cost more than the 2 million tokens it reads. That is why lowering the thinking budget saves more than trimming files.
One date to note. Sonnet 5 is on introductory pricing of $2 and $10 per million input and output tokens through 31 August 2026, and moves to $3 and $15 on 1 September 2026, which pushes the same afternoon from $2.26 to about $3.39.
How each afternoon figure is calculated
Opus 5: 200,000 uncached input tokens at $5 per million is $1.00. 1.8 million cache reads at a tenth of the input rate is $0.90. 150,000 output tokens at $25 per million is $3.75. Total $5.65.
Sonnet 5: $0.40 of uncached input, $0.36 of cache reads, $1.50 of output. Total $2.26.
Haiku 4.5: $0.20 of uncached input, $0.18 of cache reads, $0.75 of output. Total $1.13.
All 3 rows assume the same token counts, so the gaps between them are pure price. A real afternoon varies with how much of your context stays cached.
For scale, Anthropic's own documentation puts average Claude Code spend across enterprise deployments near $13 per developer per active day, and under $30 per active day for 90% of users, as of August 2026. Per token billing is not automatically cheaper than a subscription. It wins when your load is spiky, because quiet days cost nothing, and it loses when you work every day. The API against a subscription, compared with real numbers has the crossover.
Run the long job on a VPS overnight
Some jobs do not need you watching: a large refactor, a test migration, a documentation sweep. Those jobs also do not need your subscription window. Put them on a VPS (virtual private server) with an API key and they draw on per token billing while your plan allowance sits untouched for tomorrow's interactive work.
Install Claude Code on an Ubuntu box and confirm it runs:
curl -fsSL https://claude.ai/install.sh | bash
claude --versionclaude --version should print a version string such as 2.1.211 (Claude Code). A command not found here means ~/.local/bin is not on your PATH yet, so open a new shell and try again.
Put the key in a file rather than in your shell history. Create ~/.claude-env in an editor with one line, export ANTHROPIC_API_KEY=sk-ant-your-key-here, then lock it down and load it:
chmod 600 ~/.claude-env
. ~/.claude-env
printenv ANTHROPIC_API_KEY | cut -c1-10That last line prints the first ten characters, which is enough to confirm the variable is set without putting the whole key on screen.
Now start the job inside tmux so it survives your laptop closing:
tmux new -s overnight
claude --bare -p "Convert every test under ./tests from unittest to pytest, run the suite, and fix what fails" \
--allowedTools "Read,Edit,Bash" \
--append-system-prompt-file ./CLAUDE.md \
--output-format json > ~/overnight.jsonDetach with Ctrl-b then d, and close the connection. Reattach later with tmux attach -t overnight. Claude Code in a tmux session on a VPS covers the session handling in full.
--bare matters here. It skips auto-discovery of hooks, skills, plugins and CLAUDE.md, and it never reads OAuth credentials, so the run uses the API key and nothing else. That is what keeps the job off your subscription. It also means the project rules are gone, which is why --append-system-prompt-file hands them back deliberately. Without --bare, a set ANTHROPIC_API_KEY triggers a one time approval prompt that an unattended run cannot answer.
In the morning, read the result and the cost from the JSON:
jq -r '.result' ~/overnight.json
jq -r '.total_cost_usd' ~/overnight.jsonClaude Code exits 0 on success and non-zero when the run fails, so a wrapper script can branch on the exit status and mail you the failure. Set a workspace spend limit in the Claude Console before you leave it running: an agent in a retry loop at 3am is a real way to spend real money. Lower CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY if you also want to slow it down. Cost control for agents you leave running goes through the caps worth setting first.
Give the job its own unprivileged user and its own git branch. An agent editing a repository unattended will occasionally do something you would have stopped, and a branch makes that a git checkout rather than an incident. Running a coding agent safely on a VPS covers the isolation.
For bulk work that is not interactive at all, such as classifying thousands of records, the Batch API processes requests asynchronously at a 50% discount on both input and output tokens. It is the cheapest per token route Anthropic publishes, and an overnight window is exactly the latency it asks for.
What does not get your access back
Starting a new conversation does not restore your allowance. Usage is counted against your account, not against a conversation. It does make every following message cheaper, because a fresh conversation carries no history to re-read, so it is still worth doing. It is a cost cut, not a reset.
Deleting old conversations refunds nothing. Those tokens were spent when they were processed.
Switching models after a session or weekly message does nothing, because those windows are shared across every model. Only a message that names a model responds to /model.
Retrying in a loop does nothing except keep your terminal busy. The reset time printed in the message is the real answer, and /usage will show you the same clock without the error.
FAQ
How long until my Claude limit resets?
The message tells you. Session limits run on a rolling five hour window and the message shows a clock time, such as resets 3:45pm. Weekly limits reset at a fixed time each week assigned to your account, and the message shows the day, such as resets Mon 12:00am. To see both bars and both reset times before you hit anything, run /usage in Claude Code, or open Settings and then Usage on claude.ai.
Does switching to Sonnet get me working again?
Only when the message names a model. After You've hit your Opus limit, run /model, choose a different model, and the session continues with your context intact. After You've hit your session limit or You've hit your weekly limit, model choice makes no difference, because those windows count every model together. Switching to a cheaper model before you hit the wall is what actually stretches the window.
Will starting a new chat reset my usage limit?
No. Usage is counted against your account, so a new chat starts against the same empty allowance. It does make each following message cheaper, because a new conversation carries no history for Claude to re-read. /clear in Claude Code does the same thing and costs nothing, while /compact has to read the conversation it summarizes, so compacting a very large session is itself an expensive request.
Is the API cheaper than upgrading my plan?
It depends on how steady your usage is. The worked afternoon on this page costs $2.26 on Sonnet 5 and $1.13 on Haiku 4.5 at August 2026 list rates. A subscription is a flat fee for a capped allowance, so it wins when you work most days. Per token billing wins when your load is spiky, because quiet days cost you nothing at all.
Can I keep a job running while I wait for the reset?
Yes, if you move it off your subscription. Run it on a VPS with ANTHROPIC_API_KEY set in the environment and it bills per token instead of drawing on your plan window, so the two never compete. claude --bare -p inside tmux survives your laptop closing, and --output-format json writes a total_cost_usd field you can check in the morning with jq.