Table of Contents
You finally hit your stride in Claude Code, and then this stops you cold:
You've hit your session limit · resets 3:45pm
In other words, you have used up what your current plan allows, for now. It is not an error or a bug: it is how subscription (Pro / Max and similar) usage limits work. The official error reference lists four versions, depending on which allowance ran out (the times are examples):
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:45pm
You've hit your Sonnet limit · resets 3:45pm
Older versions worded it as Claude usage limit reached. Your limit will reset at 3pm (America/Santiago). (Section 1 traces how the wording changed.) The frustrating part is that it is not obvious which allowance you hit, when it comes back, or what you can do until then. This article lays out what the four messages mean, the two-tier limit structure (5-hour + weekly), what drives consumption, what to do the moment you hit the cap, how to check what is left, and the API escape hatch — based on the official documentation.
Three takeaways up front. (1) session limit is the rolling 5-hour window and weekly limit is the weekly window; both are shared across all models, so switching models does not bring access back. (2) Opus limit / Sonnet limit cover only that model family, so switching with /model to a model outside the family keeps you working. (3) If you can wait, Claude Code v2.1.234 and later can resume your task automatically after the reset. If you cannot, switch to usage credits or pay-as-you-go API. Per-plan amounts change over time, so always confirm the numbers in the live official view (/usage or Settings → Usage).
The usage limit is two stories tall
— hitting just one of them stops you
Claude Code and the Claude apps (web/desktop) share the same plan allowance.
Gauge numbers are illustrative. Check your real balance with /usage and Settings → Usage.
1. What the message means — session, weekly, Opus, Sonnet
Today's message has the shape "You've hit your [X] limit · resets [time]" and names the allowance that ran out. According to the official docs, Claude Code blocks further requests until the reset time shown. The time is your local time, and reports on the official repository often show the time zone in parentheses, as in resets 4:20am (Europe/Rome).
| Message | What ran out | Does switching models help? | First move |
|---|---|---|---|
You've hit your session limit | Rolling 5-hour window (shared by all models) | No | Wait for the reset (auto-continue), or use usage credits |
You've hit your weekly limit | Weekly window (shared by all models); the reset can be days away | No | Check the reset in /usage, then wait, use usage credits, switch to the API, or upgrade |
You've hit your Opus limit | A cap for the Opus family only | Yes (to a non-Opus model) | /model to Sonnet or another model |
You've hit your Sonnet limit | A cap for the Sonnet family only | Yes (to a non-Sonnet model) | /model to a model outside Sonnet |
The key point is that this is by design, not a malfunction. Claude's Pro / Max plans are not "unlimited" — there is a cap on usage per time window and per week. And Claude Code (CLI) and the Claude apps (web/desktop) share the same plan allowance — the official help states that "all activity in both tools counts against the same usage limits." So it is perfectly normal that "I used chat AND ran Claude Code, and together they ran out faster."
Two more lines appear in the same situation. Both are about the same allowances as the four above.
Usage limit reached · continuing automatically at 3:45pm · esc to cancel— Claude Code is waiting to resume the interrupted task after the reset (v2.1.234 and later; see Section 4)You've used 85% of your session limit · resets 3:45pm— a warning before the window runs out
By contrast, the following messages do not mean your 5-hour or weekly allowance ran out, so the fix is different.
API Error: Server is temporarily limiting requests (not your usage limit)— a short-lived server-side throttle unrelated to your plan. Wait briefly and try again (v2.1.199 and later retry it automatically before showing it)You've hit your monthly spend limit · raise it at claude.ai/settings/usage— the usage credits that pay for usage beyond your plan have reached a monthly spend limit. Raise the limit, or wait for the plan window reset if the message names one (on Team / Enterprise it readsindividual spend limit,org's monthly spend limit, and so on)Usage credits required for 1M context— an entitlement check for the 1M-token context window, not an exhausted quota. Use/modelto go back to a model without the[1m]suffixRequest rejected (429)— a rate limit on an API key or a cloud provider (see Section 6)
How the wording changed — "Claude usage limit reached" is the old text
Lining up the messages that users pasted into bug reports on the official anthropics/claude-code repository shows the wording changed at least twice. The CHANGELOG has entries such as "Usage limit notifications now easier to understand" (v2.0.51), but it does not record the text swap itself.
| When reports show it | Message |
|---|---|
| 2025 | Claude usage limit reached. Your limit will reset at 3pm (America/Santiago). |
| Dec 2025 – May 2026 | You've hit your limit · resets 10am (Europe/Kiev) |
| May 2026 – now | You've hit your session limit · resets 1pm (Australia/Brisbane) and the rest of the four in the official reference |
Many 2025 reports also show a form with the reset time as a Unix timestamp, such as Claude AI usage limit reached|1749470400. If you still see the old wording, updating with claude update tells you which allowance you hit and gives you auto-continue (conditions in Section 4).
2. The two-tier limit — 5-hour + weekly (+ per-model caps)
In August 2025, Anthropic added weekly usage limits to Pro / Max on top of the existing 5-hour window (driven by heavy users running it continuously). As a result, today's subscription limit is two stories tall. According to the official docs, usage counts against the session and weekly allowances at the same time, so a single burst of heavy activity, such as a large workflow fan-out, can exhaust the weekly allowance before the session window resets.
The exception is the $200 Ultra plan (renamed from Max 20x on October 31, 2026). According to Anthropic's help article "What is the Ultra plan?", verified Ultra accounts have no 5-hour window: only the weekly limit (10x Pro) and the weekly Fable limit. Anthropic verifies accounts automatically based on account and payment history; until verification completes, a temporary 5-hour limit applies. If Settings → Usage shows no "Current session" bar, the account is verified and you won't see the session limit message. The $100 Max plan gets 5x Pro on both the 5-hour and weekly limits (see "What is the Max plan?"; both checked October 31).
The two windows act independently
resets Mon 12:00am, and the reset can be days away. Check the next reset under Settings → Usage or in /usage./usage). When one runs out, the message names the family, as in You've hit your Opus limit, and for this cap only, switching with /model to a model outside the family keeps you working.
Plans differ by a "multiplier" on the same structure: Pro < Max (5x) < Ultra (10x weekly; no 5-hour window once verified).
The exact weekly hours get revised over time. Do not memorize fixed numbers — read the live values in Settings → Usage.
As an original (August 2025) guide, Anthropic gave rough estimates like "Pro: ~40-80 hours of Sonnet per week" and "Max 20x (now Ultra): ~240-480 hours of Sonnet + ~24-40 hours of Opus per week." However, Anthropic has since largely stopped publishing fixed hour figures, and the limits have been revised repeatedly (even in 2026, increases to the 5-hour window were reported). So treat those numbers as "estimates from back then," and always confirm your current allowance in the official usage view. This article deliberately avoids asserting specific current values.
3. What burns through your allowance
"It ran out faster than I expected" almost always comes down to these four, ordered by impact.
| Driver | Why it burns the allowance | What helps |
|---|---|---|
| 1) Model choice (biggest) | Opus consumes far more than Sonnet/Haiku. The docs say plainly that Opus "uses significantly more quota." Some accounts also have separate weekly caps for the Opus and Sonnet families | Use /model to run routine work on Sonnet/Haiku; reserve Opus for hard problems |
| 2) Context size | Every turn reprocesses the whole conversation + attached files + tool defs + history. Bigger = more per turn | /compact, /clear, attach fewer files, smaller CLAUDE.md |
| 3) Long, continuous sessions | Always-on, endless loops. The weekly cap specifically targets this pattern | Break up work with /clear; stop unneeded auto-loops |
| 4) Subagents / MCP | Parallel fan-out and MCP servers add tool definitions and tool-call traffic | Trim active MCP servers. /usage shows a per-MCP/subagent breakdown |
In short, the heavier the model, the bigger the context, the longer and more parallel the run, the faster the allowance melts. Conversely, deliberately lowering these four makes the same plan last noticeably longer. For overall optimization see AI coding cost optimization, and for concrete token-saving tactics see Claude Code token saving.
4. Five ways to keep working now
Five moves for the moment you hit the cap, by situation. Which one you pick depends on "which allowance did you hit?" (session / weekly / Opus / Sonnet in the message) and "can you wait?" Typing /rate-limit-options in Claude Code brings up the choices in one menu: wait and continue automatically, add usage credits, or upgrade your plan (it does not appear in the command menu, so type it in full).
When you hit the cap
Opus limit / Sonnet limit. /model to a model outside that family. Session and weekly limits are shared by all models, so this does not help there./compact / /clear to spend less per turn and make the next window last longer.resets time. From v2.1.234, an open session resumes the task on its own./usage-credits, or raise your plan with /upgrade.Session limit? C. Cannot wait? D / E.
Session and weekly limits are shared by all models — switching models does not bring them back. A session window returns within hours, so C; once the weekly window is gone, D or E is the realistic answer. B is for making the next window last.
Option C (waiting) became almost automatic in v2.1.234. In an interactive session signed in with a claude.ai subscription, when a usage limit stops Claude mid-task, Claude Code waits in the open session and continues the task after the reset. While it waits, a line at the bottom of the session reads:
Usage limit reached · continuing automatically at 3:45pm · esc to cancel
At the reset it does not resend your last message; it sends Claude a fixed prompt to pick the task up where it stopped. Permission prompts still appear as usual, so the task can stop on one while you are away. To cancel a wait, press Esc at an empty prompt; to turn automatic continue off entirely, switch off Continue automatically at usage limit in /config. Claude Code does not start the wait on its own when the reset is more than 24 hours away (a weekly limit, for example), so open /rate-limit-options and pick Wait here, then continue automatically. In the Code tab of the desktop app, the session-limit card has an Auto-continue when limits reset checkbox (the weekly-limit card does not).
Knowing the API switch (D) as an "escape hatch" is powerful. Unlike the subscription's time windows, the API has no 5-hour or weekly reset to wait for (you pay for what you use; it does have per-minute throughput limits and a monthly spend cap — see Section 6). See What is an AI API. On Pro / Max, turning on usage credits with /usage-credits (formerly /extra-usage) lets you keep going past the included allowance at standard API rates (official help). On Team / Enterprise, the same command sends a request to your admin.
5. How to see what is left
If you can see "how much is left," you can avoid hitting the cap entirely. Three ways to check.
1) Claude Code's /usage: shows how much of each plan allowance you have used and when each resets (/cost and /stats are aliases). On Pro, Max, Team, and Enterprise it also shows a breakdown by skill / subagent / plugin / MCP server (press d / w to switch between the last 24 hours and 7 days; the breakdown is computed from this machine's history, so usage on other devices or claude.ai is not included). It does not show which session used it, though (how to see usage by session). Before a window runs out you may see a warning such as You've used 85% of your session limit · resets 3:45pm, and you can keep rate_limits (usage percentage and reset time for the 5-hour and 7-day windows) on your status line. 2) Web/desktop app: Settings → Usage shows your plan, remaining usage, and the weekly reset date; in the desktop app, the usage ring next to the model picker shows it too. 3) API users: the Console Usage / Limits pages and the anthropic-ratelimit-* response headers. The Session block in /usage shows an estimated cost computed from token counts. Note that /status does not show your allowance; it shows which account and credential you are connected with (see Section 6).
A habit that pays off
Run /usage once before heavy work to know your balance and reset date. In a week where your weekly cap is running low, build around Sonnet from the start so you keep Opus headroom for when it matters.
6. Subscription limits vs API limits
They are easy to confuse, but the subscription (Pro/Max) limits and the API limits are entirely different systems. Knowing the difference makes the switch decision fast when it counts.
| Aspect | Subscription (Pro / Max) | API (pay-as-you-go) |
|---|---|---|
| Unit of limit | Total per time window (5-hour + weekly, plus per-family caps) | Per-minute throughput (RPM / input + output tokens per minute) and a monthly spend cap per usage tier |
| What you see | You've hit your session limit · resets 3:45pm and similar | Request rejected (429) and similar |
| When you hit it | Blocked until reset (you can continue with usage credits) | Over the throughput limit you get 429; wait the retry-after seconds and continue. At the monthly spend cap, usage pauses until 00:00 UTC on the first of next month |
| How to raise it | Upgrade plan, usage credits | Your org moves up usage tiers (Start, Build, Scale, and so on) automatically with usage history; you can also request higher limits |
| Best for | Personal chat, day-to-day coding | Automation you cannot stop, large batches |
The point: the subscription stops you by time window, while the API has no 5-hour or weekly window. So for deadline work you truly cannot stop, switching to an API key is the standard move. After switching, run /status to confirm the active credential. An approved ANTHROPIC_API_KEY left in your environment routes requests through that key even when you meant to use your subscription. Conversely, if you see Credit balance is too low while you think you are on your subscription, that is a sign a Console API key is in use. How to fix it is covered in Your credit balance is too low to access the Anthropic API: What It Means and How to Fix It. For API details, see the official rate limits page.
7. Prevention checklist
An operating checklist to stop "running out when it matters."
(1) Default to Sonnet and switch to Opus with /model only for the hard parts (preserve the Opus weekly cap). (2) Keep context light with frequent /compact / /clear. (3) Check your balance and reset date with /usage before heavy work. (4) Trim unneeded MCP and auto-loops; attach only the files you need. (5) On deadline days, have pay-as-you-go API ready (so you do not stall when the subscription runs out). (6) If you are chronically short, consider upgrading the plan or moving that workload to the API.
Summary
Claude Code's You've hit your session limit · resets 3:45pm (the old wording was Claude usage limit reached) is not an error — it is how subscription usage limits work. The message names the allowance that ran out: session = the rolling 5-hour window, weekly = the weekly window (both shared by all models, so switching models does not help), and Opus / Sonnet = a cap for that family only. Because Claude Code and the Claude apps share the same plan allowance, they can run out faster together.
The biggest consumer is model choice (Opus is the largest), then context size, long continuous runs, and subagents/MCP. When you hit the cap: for an Opus/Sonnet cap, A: switch models; for a session limit, C: wait for the reset (automatic from v2.1.234); if you cannot wait, D: pay-as-you-go API / E: usage credits or upgrade. B: trimming context makes the next window last longer. See your balance with /usage and Settings → Usage. And since the exact numbers get revised over time, do not memorize them — confirm in the live official view. Related: token saving and extra costs, Opus/Sonnet/Haiku pricing, Claude Code error roundup.
FAQ
Q. Is "You've hit your session limit" a bug? I am paying for this.
A. It is by design, not a bug. Pro / Max and other subscriptions are not "unlimited" — there are usage caps per 5-hour window (session) and per week (weekly). Even as a paying user, once you exceed what that allowance covers, you are paused temporarily, and access returns at the resets time shown. Note that Claude Code and the Claude apps share the same allowance, so using both drains it faster.
Q. When does it reset? It said "resets 3:45pm."
A. For a session limit, that is the reset time of the 5-hour window (your local time). A weekly limit carries a day or date, as in resets Mon 12:00am, and can be days away. You can check each reset in /usage or under Settings → Usage. If even the weekly allowance is gone, your options are to wait, use usage credits, switch to pay-as-you-go API, or upgrade.
Q. What is different about "Claude usage limit reached"?
A. It is the older wording of the same usage limit. In reports on the official repository, 2025 shows Claude usage limit reached. Your limit will reset at …, from around December 2025 You've hit your limit · resets …, and from around May 2026 the allowance-specific You've hit your session limit and its siblings. If you still see the old wording, updating with claude update tells you which allowance you hit and gives you auto-continue from v2.1.234.
Q. Why do I hit the limit so fast?
A. The biggest factor is model choice. Opus burns through the allowance far faster than Sonnet. On top of that, large context, long continuous runs, and heavy use of subagents or MCP push consumption up. Usage counts against the session and weekly allowances at the same time, so sustained heavy work such as parallel runs can exhaust the weekly allowance early too. Dropping routine work to Sonnet with /model and trimming context with /compact alone makes a big difference.
Q. How do I keep going right now without waiting?
A. (1) For You've hit your Opus limit / Sonnet limit, switch to a model outside that family with /model (this does not help with session or weekly limits), (2) turn on usage credits with /usage-credits (continue past the included allowance at standard API rates), (3) switch to a pay-as-you-go API key (no 5-hour or weekly window), (4) upgrade your plan with /upgrade. For deadline work, having pay-as-you-go API ready in advance is the safe play.
Q. Can I check how much I have left?
A. Yes. In Claude Code, /usage shows how much of each allowance you have used, when each resets, and a breakdown by skill, subagent, and MCP server; putting rate_limits on your status line keeps it in view. In the web/desktop app, Settings → Usage shows your plan, remaining usage, and the weekly reset date. Checking once before heavy work lets you avoid hitting the cap.