Claude Code Usage Limit

If you just saw “You’ve hit your session limit,” “You’ve hit your weekly limit,” or “You’ve hit your Opus limit” in Claude Code, the message itself tells you when you can work again, and whether switching models will help depends on which one of those three you got. A session or weekly limit is a seat-based window shared across every model, so running /model will not get you unstuck. A model-specific limit (Opus or Sonnet) only blocks that model family, so moving to a different one keeps you working right now.

The three messages, and what each one actually blocks

Claude Code shows a specific string for each kind of limit, and the string is the fastest way to know what your options are:

MessageScopeDoes switching models help?
“You’ve hit your session limit”Seat-based, shared across Claude chat, Cowork, and Claude CodeNo
“You’ve hit your weekly limit”Seat-based, shared across Claude chat, Cowork, and Claude CodeNo
“You’ve hit your Opus limit” / “You’ve hit your Sonnet limit”That model family onlyYes, switch to a different family

The message text includes the reset time for the window you hit, so there is no separate lookup for “when does Claude Code usage reset.” Whatever time the message names is the answer.

The two windows: five-hour and weekly

Per Anthropic’s costs documentation, on Claude for Teams and Enterprise each member’s usage draws from a per-seat allowance that resets on a rolling five-hour window and a separate weekly window, and that allowance is shared with Claude chat and Cowork, not just Claude Code. The five-hour window is rolling: it is not a fixed clock reset but a window that continuously ages out, so usage from five hours ago stops counting against you as time passes. The weekly window works the same way over a longer span. The docs describe this seat-based mechanic specifically for Teams and Enterprise; Pro and Max usage is also windowed, but check the reset time in your own limit message rather than assuming a specific number of hours, since that is the value the product actually shows you.

If you’re watching the clock and can tell you’re approaching the five hour limit mid-task, the practical move is to wrap up the current unit of work before the window closes rather than starting something new you can’t finish, since a partial task that gets cut off by the limit still has to be re-picked-up from wherever it left off.

Pro, Max, and the Opus-specific ceiling

A Claude Code Pro token limit and a Claude Code Max Opus limit are not the same kind of ceiling. Pro and Max both include Claude Code, and Max plans are sold as multiples of Pro’s usage rather than as a separately documented token count; Anthropic’s pricing page states the Max tiers as a choice of usage multiples over Pro without publishing an exact token figure for either plan, so treat any specific number you see elsewhere for “the Pro limit” or “the Max limit” as unsourced unless it links back to that page. What is documented and worth acting on: when the limit you hit names Opus specifically (“You’ve hit your Opus limit”), that is a model-family ceiling, not a plan-wide one, and switching to Sonnet with /model keeps you working inside the same plan and the same time window.

How to check usage before you hit the wall

Run:

/usage

The session block shows total cost, API duration, wall-clock duration, total code changes, and a breakdown by model for the current conversation. For a longer view, the plan usage breakdown shows recent usage attributed to skills, subagents, plugins, and individual MCP servers, and you can press d or w to switch between a day view and a week view.

/status

/status shows your remaining allocation at a glance. One caveat that matters here: both of these are computed from local session history on the machine you’re running on, so if you work across two machines, neither one shows you the combined picture.

Rate limit errors are a different thing from a usage limit

“API error: rate limit reached” is not the same mechanism as “you’ve hit your session limit.” A usage limit means your plan’s allotted budget for a time window is exhausted. A rate limit error means you exceeded a short-term throughput ceiling, tokens per minute or requests per minute, and it typically clears on its own without waiting for a plan-level reset. This shows up most on API key and Console setups, where Anthropic publishes recommended tokens-per-minute and requests-per-minute tiers scaled to team size; see the same costs page for that table rather than guessing at specific numbers here.

The two errors also come from different places in the stack, which is why they need different fixes. A plan usage limit is enforced by the subscription layer against your seat’s allowance, and the only ways past it are the ones covered below. A rate limit error is enforced by the API layer against your organization’s configured throughput tier, and the fix there is usually to back off request volume briefly, batch fewer concurrent calls, or if it recurs, ask whoever administers your API/Console account to raise the tier.

A related but unrelated confusion: a context warning or an auto-compact notice is not a usage limit at all. That warning means the current conversation is filling its context window and needs /compact or /clear, which is a conversation-length problem, not an account-budget problem. Treating one as the other wastes time chasing the wrong fix.

What to do right now

If you’re mid-task and blocked, /usage-credits requests usage beyond your normal allowance; what it opens depends on your role and is only available on claude.ai subscription auth, not an API key. Claude Code versions 2.1.234 and newer can also wait out the reset and automatically continue the interrupted task on its own, governed by the autoContinueAtUsageLimit managed setting, documented on the interactive mode page. If that setting is off in your organization, an admin has chosen to require manual resumption instead.

None of that changes the actual budget you’re burning through. If you’re hitting the five-hour wall on a regular basis, the durable fix is using fewer tokens per unit of work, not working around the message every time it appears. See Claude Code token usage for the specific techniques (model choice, /compact, hooks that filter noisy tool output before Claude sees it) and Claude Code cost for what those techniques save in dollar terms.

Where shiploop fits

Hitting the five-hour ceiling repeatedly is a throughput problem, not a one-off. shiploop’s headless workers default to a cheaper model floor and escalate only when a ticket, shiploop’s own term for a unit of dispatched work, demonstrably needs more, and each worker runs in a disposable git worktree rather than a long-lived conversation, so a unit of work finishes and its context goes away instead of accumulating toward the next limit. See Claude Code model selection for the general version of that idea, or Claude Code subagents for delegating verbose work out of your main session in the first place.

Last updated 2026-09-04.