July 15, 2026 · claude-code · usage-limits · guide
The 5-hour limit: understanding Claude usage limits and how to pace your burn
It’s 4:47pm. You’re mid-refactor. Claude Code prints You've hit your session limit · resets 6:15pm and stops. If you’ve been there, this post is for you: how the limits actually work, what burns them fastest, and how to pace yourself so the wall shows up less often.
Everything here is checked against Anthropic’s official docs as of July 2026. This area changes often — Anthropic has reshuffled limits several times — so treat the links as the source of truth, not your memory (or ours).
How the windows actually work
Claude subscriptions (Pro, Max, Team, and seat-based Enterprise) meter usage through five-hour session windows. Per Anthropic’s Max plan page, session limits reset every five hours, and the clock starts when you send your first message.
Worked example: you fire off your first prompt at 9:00. Everything you do — chat on claude.ai, Claude Code in the terminal, the VS Code extension — draws from the same pool until 14:00, when the window resets. Start again at 14:30 and the new window runs until 19:30. It’s not a midnight reset and it’s not a continuous rolling ledger like API rate limits. It’s a five-hour block anchored to your first message.
Layered on top: weekly limits. Max plans carry two — one that applies across all models, and a second model-specific cap for the premium model tier (Claude Code’s error messages surface it as “You’ve hit your Opus limit”). Weekly limits reset at a fixed time assigned to your account — the reset day and time stay put regardless of when you start working. Check yours in Settings > Usage on claude.ai.
The tiers stack like this, per Anthropic’s docs: Max 5x gives you 5× the per-session usage of Pro; Max 20x gives you 20×. Note what’s missing: Anthropic doesn’t publish token numbers for any plan. It’s multipliers all the way down.
When you hit a limit, what happens depends on which one:
- Session or weekly limit: these are shared across all models, so
/modelwon’t save you. You wait for the reset time shown, or buy usage credits via/usage-credits. - Opus limit: model-specific. Run
/model, drop to Sonnet, keep working.
One nasty detail from the official error docs: session and weekly allowances drain simultaneously. A single burst of heavy activity — say, a big subagent fanout — can exhaust your weekly allowance before the session window even resets. Monday-morning heroics have Friday consequences.
What burns usage fastest
Anthropic lists the levers in its usage limit best practices: model choice, message length, attachment size, conversation length, tool usage, and effort level. In Claude Code terms:
Model choice. Per the cost docs: “Opus costs several times more per turn than Sonnet, and Sonnet more than Haiku.” Leaving Opus as your default for grep-and-rename work is the single most expensive habit.
Long contexts. The API is stateless — your entire conversation gets re-sent with every message. A session you never cleared means every “fix the typo” request drags 100k tokens of stale history along for the ride. Prompt caching softens this, but it doesn’t erase it.
Parallel sessions multiply burn. Three terminal tabs running Claude Code is three contexts drawing from one pool. Agent teams are the extreme case — Anthropic’s own docs say they use roughly 7× more tokens than a standard session, because every teammate is its own Claude instance with its own context window.
Subagents. Each spawned subagent loads CLAUDE.md, MCP tool listings, and skills into a fresh context. Fanning out ten subagents to “check every file” is a fanout of ten context windows. Great for speed. Brutal for the weekly cap.
Thinking tokens. Extended thinking is billed as output tokens and is on by default. Deep reasoning on a rename you could have done with sed is pure burn.
Pacing tactics
Downshift for grunt work. Sonnet handles most coding fine. Reserve Opus for architecture calls and hard debugging. For subagent grunt work, pin them to Haiku:
/model # switch mid-session
/effort # lower effort for simple tasks
Clear and compact aggressively. Stale context taxes every subsequent message.
/clear # fresh start between unrelated tasks
/compact Focus on code changes and tests # summarize, keep what matters
/context # see what's eating your window
Batch requests. Ten one-line messages re-send the conversation ten times. One message with all ten asks re-sends it once. Anthropic’s own advice: “batch similar requests in one message.”
Schedule heavy runs right after a reset. A giant migration or overnight agent run started at hour 4 of your window slams into the wall mid-flight. Check /usage for your reset time and launch the expensive stuff at hour 0. Same logic for the weekly cap: know your fixed weekly reset and don’t schedule the fanout the day before it.
Watch the meters. Claude Code ships real visibility now:
/usage # plan usage bars, reset times, breakdown by skills/subagents/MCP servers
Press d or w inside /usage to flip between 24-hour and 7-day views. You can also put rate_limits fields in a custom status line, and the desktop app has a usage ring next to the model picker. When the “You’ve hit your limit” message eventually appears, it always includes the reset time — read it before rage-quitting.
The honest caveat: nobody can count your tokens exactly
Anthropic doesn’t publish what a “session limit” is in tokens, and the accounting isn’t fully observable from the outside. Even the official /usage breakdown is, in Anthropic’s own words, “approximate and computed from local session history on this machine” — usage from other devices or claude.ai chat isn’t included. Prompt caching, thinking tokens, and background jobs (summarization for --resume, status checks) all move the needle in ways you can’t see per-request.
That means every usage tracker — including ours — is a best-effort estimate built from what’s observable in session transcripts. A good tracker can tell you your burn rate and extrapolate. It cannot tell you the exact millisecond you’ll hit the wall, because only Anthropic’s server knows the real ledger. Anyone claiming exact numbers is guessing with confidence.
Getting pinged before the wall
This is exactly why we built burn tracking into Vyber: it watches your sessions’ transcripts, estimates your burn rate against the window, and pushes “you’ll hit your limit at ~15:40 at current burn” to your phone — so the wall stops being a surprise. It’s best-effort by nature (see the caveat above) and degrades gracefully when the data gets murky. Waitlist is open at vybercode.net.