Skip to main content

Guides

Hit Claude Code's 5-Hour Limit? Here's What's Actually Happening

Claude Code 5-hour rolling rate limit explained

You opened VS Code at nine, sent a single "morning" prompt, and the usage indicator already says 15% gone. That is not a bug. The Claude Code five-hour limit is a rolling window, not a fixed block, and the way it accounts for tokens is loaded against the kind of work senior developers do. Here is what the window actually measures, why a quiet day can still hit the wall by lunch, and what the structural fix looks like.

The 5-hour rolling window — not what most people think

The phrase "5-hour limit" sounds like a block. Drink your coffee, wait until the top of the hour, get a fresh five hours to spend. That is not how it works.

Anthropic's published rate-limit documentation describes the cap as a rolling 5-hour window. The clock starts when you send your first prompt of a new window. Every subsequent prompt accrues toward the same budget until five hours after that first prompt has elapsed, at which point the earliest entries begin to "roll off." If you ration carefully across the whole five hours, the window is constantly recovering at the same rate you spend. If you front-load your usage, you can hit the cap inside the first hour and then wait the remaining four hours staring at a countdown.

The window is per-account. There is no day boundary, no weekend reset, no time-of-day grace. The five hours are wall-clock hours measured from your individual activity, anchored to your own behavior.

This is the loudest complaint of 2026 on the Claude Code subreddit. The pattern is universal: a developer opens VS Code, runs one or two real tasks, the indicator is suddenly at 60%, and they cannot understand what just happened. The published number — N messages per 5 hours — sounded reasonable. Their reality does not match it.

Why a one-line "Morning" can burn 15% of the budget

The mental model most users carry is that "one prompt = one unit of cost." That is not how Claude Code accounts for tokens. Every turn carries far more weight than the user-typed text.

A representative single-turn cost in a real Claude Code session:

  • System prompt: 4K to 8K tokens, sent on every turn. This contains the model's behavioral instructions, tool definitions, and project context.
  • Tool definitions: 6K to 20K tokens depending on which MCP servers and built-in tools are wired up. Every call carries the full tool schema for every available tool.
  • Project context: Whatever the editor injected from CLAUDE.md, AGENTS.md, the open file, the IDE selection, and recently-read files. Easily 10K to 50K tokens on a project of any size.
  • Conversation history: Every prior turn in the session, replayed in full. After ten turns of real work, the replay alone can be 30K tokens.
  • The user's actual text: Often less than 100 tokens. The "Morning" you typed.

A Reddit thread put it the way the rest of us were already feeling:

a simple 'Morning' took 15% of the 5h limit

That is not exaggeration. It is the prompt-cache discount working harder than people realize, and the token bill being larger than people expect. Even with caching, the headers Anthropic returns count cache reads against some accounting. The "Morning" prompt itself was free. The 50K tokens of replayed context behind it were not.

The lesson is that the 5-hour window is sensitive to context size, not to typing volume. A developer who keeps long sessions open with a lot of project context attached will burn the cap faster than a developer who opens a fresh session per task. Most senior workflows do the former.

The compounding effect on heavy days

The 5-hour window does not exist in isolation. It is the short throttle that sits on top of the 7-day rolling cap. If today's spend is already against the weekly budget, tomorrow's spend has less room to maneuver before the 7-day ceiling kicks in.

A worked example, with realistic numbers:

Day5-hour windows used% of weekly budget burnedCumulative weekly burn
Monday2 (morning + afternoon)25%25%
Tuesday2 (morning + afternoon)25%50%
Wednesday1 (morning)15%65%
ThursdayAttempt morning sessionCap hit immediately65%+
By Thursday morning you are not blocked by the 5-hour window — you have a fresh one. You are blocked by the 7-day window, which has been quietly accumulating Monday and Tuesday's spend and refusing to let Thursday's heavy session start. The 5-hour countdown is what you see. The 7-day cap is what is actually stopping you.

This is what produces the "unusable for 5–6 days per week" pattern that floats through every Claude Code complaint thread. Two heavy days early in the week makes the rest of the week effectively gated by the slower-recovering weekly cap.

What most developers try when the wall hits

The progression is predictable:

  1. Stare at the countdown. The cheapest move in attention, the most expensive in wall-clock time. A Retry-After: 3600 is one hour of unscheduled break.
  2. Open Claude.ai in a browser tab on a different account. Sometimes works. The browser-based product has its own rate-limit accounting and gets you unblocked for a short prompt. It does not help when you need Claude Code's tool-using session continuity.
  3. git stash and switch projects. A workflow trick: the project you switch to is not the one that burned the budget, so context replay is smaller and the cap feels lighter. This is real, but it only works once or twice in a day before that project's context also bloats.
  4. Write a shell script. Swap ~/.claude/credentials.json between two backed-up account files, restart Claude Code, re-prime the session. The community gist for this has been rewritten three times in the last six months because Claude Code keeps changing the credential format.

The shared trait of all four moves is that they reach for a second account. The mental model has converged on "more accounts = more headroom," even when the workflow around it is fragile and lossy. Manual switching loses the active TodoWrite list. Browser-tab switching loses the entire tool surface. Project-stashing keeps coding alive but breaks the train of thought.

Pooling as the structural fix

If the felt problem is "I want more headroom," and the workflow problem is "the way I currently get more headroom is fragile and lossy," the structural answer is to make the second account accessible without leaving the session.

A local proxy in front of Claude Code does this with no editor changes. It owns the pool of accounts you already pay for. It checks each account's projected remaining 5-hour budget before each request and routes accordingly. When one account approaches its cap, traffic shifts to a fresh account without the session being aware. The active TodoWrite list is unchanged. The conversation continues. There is no banner, no countdown, no manual swap.

That routing is what Balanced Mode does out of the box — worth trying on any week where you have hit the wall before Wednesday.

The detail that distinguishes a working pool from a broken one is anti-ping-pong logic. Naive round-robin between two accounts both near their caps produces a sequence of 429s — first one account, then the next, then the first again as the rotator cycles back. A working rotator looks ahead: which account has the most remaining 5-hour budget, accounting for the projected cost of this turn? It routes there. If that account also caps, the next-best account inherits — but only after a real budget check, not a position-in-list check.

Pooling does not raise any individual account's 5-hour cap. It does not change what Anthropic bills. It does not "bypass" the limit. It changes the denominator of the math from "one user's account" to "N accounts the user already owns," and the felt experience from "stop, wait, restart" to "keep working."

Frequently asked questions

Does the 5-hour limit reset at a fixed time each day or is it really rolling?

It is rolling. The window starts on your first prompt and slides forward as time passes. There is no calendar-aligned reset. If you stop using Claude Code, the window will fully decay in five hours of wall-clock time and the cap will be empty again. If you keep using it heavily, every new turn extends the relevant window.

If I close VS Code, does the 5-hour clock pause?

No. The 5-hour clock is on Anthropic's servers, tied to your account's request history. Whether your editor is open or not has no effect on the rolling window. The only way to recover is to wait long enough that older entries roll off, or to send traffic to a different account.

Why does my "5-hour" limit sometimes feel like only 2 hours of real work?

Because heavy turns count for far more than the per-turn limit headline suggests. A turn with 50K tokens of context replay, a 4K-token completion, and three tool calls is several "messages" worth of budget under the hood. Senior workflows naturally produce these heavy turns. Two hours of that kind of work can easily hit the same number that a casual user takes five hours to reach.

Can I see how much of the 5-hour window I have left?

Anthropic does not expose the remaining budget in any UI surface. The API returns X-RateLimit-Remaining-* headers on every response, but Claude Code does not display them. Third-party telemetry dashboards parse these headers from the JSONL transcripts to show real-time remaining budget. A first-party display would solve a lot of complaints; until then, the dashboard has to come from outside Claude Code.

Does Claude Code's `/fast` mode burn the 5-hour window faster or slower?

It does not change the underlying token cost. /fast changes how Anthropic prioritizes your request in their serving queue. The tokens generated and the tokens billed are the same in both modes. The 5-hour window does not care which queue you used.

Will pooling multiple accounts cause Anthropic to flag my usage?

Anthropic's terms permit each individual to hold multiple accounts so long as each one belongs to that person and is not shared. Pooling accounts you legitimately own and personally control is consistent with those terms. Check the current TOS rather than relying on prior reads — these policies have changed before.

Closing

The five-hour wall is real, the rolling math is honest, and the felt experience of senior workflows is that one account does not cover one day's work. The arithmetic does not care about the size of your context, but your context determines the arithmetic. Account pooling is the extension we ship to push the wall further out without changing how you use Claude Code.

Want to see how far it moves the wall on a real week? The 14-day Premium Trial is $0 today — cancel anytime before day 15, nothing owed. Rather not put a card down yet? Install Power Claude Free and download free and start the 7-day trial, no credit card.

Related: full usage-limits field guide

For chat + Claude Code, primary sources (Reddit, GitHub, Medium), and a compliance-safe playbook, see How to stop hitting Claude usage limits (2026) and why each turn costs more.