Claude usage limit hit? Wetin you fit do next
Switching models no go restore access. Learn how Claude subscription session and weekly limits differ from API 429 rate limits, plus wetin to do next.
Wetin be Claude usage limits?
Claude usage limits get two separate systems, and the first thing na to find out which one stop you. Claude subscription (Pro, Max, Team, or Enterprise) give you rolling usage allowance wey all models and Claude chat dey share, so e go stop you with message like You've hit your session limit · resets 3:45pm. Claude API dey measure another thing: how fast you dey send requests and tokens, counted per minute. E go stop you with HTTP 429 error of type rate_limit_error and retry-after header wey dey show how many seconds you need wait.
The fixes no get anything to do with each other. Subscription limit dey about how much you don use inside one window, so you wait make e reset or buy more usage. API rate limit dey about your speed now, and e go clear within seconds once you slow down.
Plan allowances and rate-limit tier numbers dey change often. Wrong number worse pass no number, so we no print any here. Use the commands wey dey further down to read your own.
Kon ki limit you hit? Read the exact message
Claude Code dey name the system inside the text wey e prints. Match your own before you change anything.
You've hit your session limit · resets 3:45pmna subscription limit. Your plan's rolling allowance for this window don finish.You've hit your weekly limit · resets Mon 12:00amna the same system for the longer window.You've hit your Opus limit · resets 3:45pmna subscription limit wey apply only to Opus requests. Na this one case switching model fit help.API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.na API rate limit. You don hit the limit wey dem configure for your API key, or for your Amazon Bedrock or Google Cloud project. Which one apply depend on how the client dey authenticate, because Bedrock or Vertex client dey meter against your cloud project's quota, instead of Anthropic organization.API Error: Server is temporarily limiting requests (not your usage limit)na short-lived throttle wey no relate to your plan quota. Claude Code dey retry am automatically with backoff before e show you that line.
Subscription limits: session, weekly, and the Opus window
Subscription plan get usage allowance wey dey roll over time. When you don use all of am, Claude Code go block more requests until the reset time wey message show. Two things about this allowance dey cause most confusion.
- Claude chat dey share am. Work wey you do for claude.ai dey use the same allowance as work for terminal, so heavy chat afternoon fit reduce your coding time for evening. Every surface wey you sign in to with that account dey use the same pool. So for Linux, the beta desktop app and the Claude Code CLI dey spend one allowance between dem, no be one allowance each.
- Models dey share am too. Session and weekly limits no get separate budget for each model. Na only Opus limit get this exception.
For Claude for Teams and Enterprise, the documented setup na allowance for each seat. E dey reset for rolling five-hour window and weekly window. Claude chat and Cowork dey share am, and seat tier (Standard or Premium) determine the allowance size. For Pro and Max, the reset time wey message print and your own /usage bars na the reliable numbers. No use figure wey you copy from blog post. If you never choose tier, which Claude plan you need dey compare wetin each one dey gate.
Wetin switching model with /model no restore access
This na the most common wrong move, and documentation talk am plainly: session and weekly limits dey shared across all models, so switching models no restore access. If you pick smaller model after your session window don finish, e only change which model go answer. E no change how much allowance remain, because dem no hold the allowance per model, so the switch get nothing to release.
The exception na the Opus limit, wey na real model-specific ceiling. If the message read You've hit your Opus limit, then /model na the correct fix. Switch to another model and continue your work, because na only Opus requests dem block.
To treat the limit like bug na the second wrong move. Reinstalling or re-authenticating no change anything. The allowance go come back when the window reset, or when you buy usage credits.
Wetin to do when you reach subscription limit
- Read the reset time. Session window short. Weekly window no be something wey you go sit for desk dey wait.
- If na Opus limit, run
/modeland choose another model. - Run
/usageto see your plan limits, your bars, and when dem go reset./costna alias for the same screen. - Run
/usage-creditsto continue work after you reach the ceiling. For Pro and Max, e go open your billing settings. For Team and Enterprise, e go open your organization's usage settings, or send request go your admins if you no get billing access. - If you dey reach the same wall every week, the plan size no match how you dey work, and the ways to get past usage limit worth considering once instead of every reset.
/usage-credits need claude.ai subscription wey you sign in through /login. E no dey available with API key authentication, because API key no get plan allowance wey e fit extend.
Usage credits get one side effect wey you need know first. Prompt cache lifetime na one hour for subscription, but e drop to five minutes once you dey use credits. So more turns go start cold, and Claude Code token usage go increase for the same work.
Messages wey look like usage limits but no be usage limits
Four Claude Code errors dey get report as usage limits, but none of dem be usage limit.
- Context or auto-compact warning no be usage limit.
/contextdey print line likeContext exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.once conversation don pass model context window. System go summarize older history to free space, and e no go reduce your plan allowance. Error during compaction: Conversation too long. Press esc twice to go up a few messages and try again.mean say/compactitself fail, because free context wey remain no enough to hold the summary wey e suppose produce.Credit balance is too lowmean say your Console organization don finish prepaid credits. Add credits for platform.claude.com/settings/billing. That page also get auto-reload option.API Error: Usage credits required for 1M context · run /usage-credits to turn them on, or /model to switch to standard contextna entitlement check, no be exhausted quota. Choose the model variant wey no get[1m]suffix, or setCLAUDE_CODE_DISABLE_1M_CONTEXT=1.
One more error dey come from API. A 413 request_too_large na size limit for one request, no be rate limit.
API rate limits: wetin the 429 dey actually count
Messages API dey measure three things, separately for each model class.
- requests per minute (RPM)
- input tokens per minute (ITPM)
- output tokens per minute (OTPM)
Your organization get spend limit too, but na different thing: maximum monthly cost for API usage. Once you reach your tier spend cap, API usage go pause until next month unless you request higher limit. No retry loop fit solve that one.
Four mechanics dey decide when 429 go arrive.
- Limits dey apply per model class. Dem apply separately to each model, so you fit use different models up to their own limits at the same time. Some families share one bucket: Opus rate limit na total for Claude Opus 4.8, Opus 4.7, Opus 4.6 and Opus 4.5, while Claude Sonnet 5 get its own.
- Capacity dey refill continuously. API dey use token bucket algorithm, so capacity dey replenish continuously instead of resetting for one fixed time. Limit of 60 requests per minute fit enforce am as one request every second, so 60 requests wey fire at once still go fail.
- Na only uncached input dey count toward ITPM for most models.
input_tokensandcache_creation_input_tokensdey count.cache_read_input_tokensno dey count for most Claude models, with Claude Haiku 3.5 as the documented exception. Caching therefore give you more rate-limit headroom plus discount. For output side, highmax_tokensno dey count against OTPM, because OTPM dey count only tokens wey API actually produce. - Limits dey for organization level. Workspace fit get lower limit, and organization-wide limits always apply even when workspace limits add up to more. Any limit wey you never override for workspace, workspace go inherit from organization; e no mean say limit unlimited.
Tiers wey dem call Start, Build, Scale and Custom set the actual numbers. Dem assign am automatically based on your usage history and account standing. New organizations fit start below the standard published limits, so first 429 fit arrive earlier than table predict. Sudden increase for usage dey trigger acceleration limits. Those limits return 429 even when you still dey inside your tier, so increase traffic gradually. Every published figure na ceiling: documented limits na maximum usage wey dem allow, not guaranteed minimums. To request more, use the "Request rate limit increase" control for the Limits page inside Claude Console.
429 Error Read: retry-after, the headers, and SDK retries
Every API error dey return the same envelope: one nested error object wey carry the type and message, plus one top-level request_id.
{
"type": "error",
"error": {
"type": "rate_limit_error",
"message": "<names the rate limit you exceeded>"
},
"request_id": "req_011CSHoEeqs5C35K2UUqR7Fy"
}The headers carry the remaining information.
retry-afterna the number of seconds wey you suppose wait before you retry the request. If you retry earlier, e go fail.anthropic-ratelimit-requests-limit,anthropic-ratelimit-requests-remainingandanthropic-ratelimit-requests-resetdescribe your request budget.anthropic-ratelimit-input-tokens-*andanthropic-ratelimit-output-tokens-*do the same thing for ITPM and OTPM, with the same limit, remaining and reset suffixes.anthropic-ratelimit-tokens-*show the values for the most restrictive limit wey dey apply now.
Reset headers na RFC 3339 timestamps. Remaining token headers dey rounded to the nearest thousand, so treat dem as gauge. Fast mode get im own pool and im own anthropic-fast-* headers. Read all of dem from any successful call:
curl -s -D - -o /dev/null https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"hi"}]}' \
| grep -i 'ratelimit\|retry-after\|request-id'Every response still carry one unique request-id header, like req_018EeWyXxfu5pfWkrYcMdjWG. E dey appear as request_id for error bodies and as _request_id for Python and TypeScript SDK responses. Quote am when you contact support.
Before you write one, check whether you need backoff loop at all. The official SDKs automatically retry temporary failures, including connection errors, rate limits and 5xx server errors, with exponential backoff, two times by default, while dem dey respect the retry-after header when e dey present. Every client get maximum-retries option wey you fit use to change or disable this behaviour.
import anthropic
client = anthropic.Anthropic(max_retries=5) # the SDK default is 2
try:
msg = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "hello"}],
)
except anthropic.RateLimitError as err:
headers = err.response.headers
print("still limited after retries; wait", headers.get("retry-after"), "seconds")
print("request id:", headers.get("request-id"))529 overloaded_error no be your fault
429 mean say you send request too fast. 529 overloaded_error mean say API dey temporarily overloaded. E fit happen when API dey receive plenty network traffic from all users. Nothing about your key or code cause am. Retry with exponential backoff. The SDKs already do this for 5xx responses. If e no clear, check status.claude.com. 500 api_error na internal error wey you retry the same way. Neither 529 nor 500 be rate limit.
Read your own limits instead of a table
For subscription, /usage na the screen wey matter. E dey show your plan usage bars and breakdown of wetin use dem, while d or w dey switch between the last 24 hours and the last 7 days. Two things dey important. The Session block dey show API token usage, and na for API users, so subscribers fit ignore the dollar figure wey dey there. The numbers come from local session history for that machine, so usage from another device or from claude.ai no dey included.
For API side, the Usage page for Claude Console dey draw two charts, "Rate Limit - Input Tokens" and "Rate Limit - Output Tokens". The input chart dey plot the hourly maximum of uncached input tokens per minute against your current ITPM limit. E also show your cache rate beside am. This one help you monitor when you dey near the limit instead of only finding out after production don hit am.
To read the limits wey you configure programmatically:
curl -s https://api.anthropic.com/v1/organizations/rate_limits \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY" \
-H "anthropic-version: 2023-06-01"E need an Admin API key, and GET /v1/organizations/workspaces/{workspace_id}/rate_limits dey do the same thing for each workspace. Both commands na read-only. To change a limit, use the Limits tab for the Console.
How to use less, so you fit meet fewer limits
Both systems dey meter the same thing underneath, so these controls go work for either one.
- Spend fewer tokens for each turn. Continuous sessions dey keep the cache warm, and
/clearbetween unrelated tasks no dey cost anything. Claude Code token usage explain all these controls fully. - Reduce the effort. The levels na
low,medium,high,xhighandmax. The/effortmenu also getultracode, wey dey increase spending instead of reducing am. Deep reasoning for a mechanical rename no dey add any value. - Reduce concurrency after 429. Lower
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCYand avoid many parallel subagents. Run/statustoo: one strayANTHROPIC_API_KEYfit route requests through low-tier key instead of your subscription. - Move non-interactive work go Message Batches API. E dey run large volumes asynchronously with 50% discount for input and output tokens, under its own rate limits. This one make nightly job stop competing with your session.
Work wey dey pour plenty data into context dey feel this limitation pass. If you dey analyze stocks and options against live market data, pull only the narrow slice wey each question need. This one cost just small part of wetin pasting complete quote tables and chains go cost. Bursty work wey program dey drive instead of person belong on API key from the beginning. Moving go there change how you pay and how dem meter you too, because Claude API no get free tier apart from the small credit dem give you when you sign up. Your first Claude API app for VPS cover key handling and retries. Long agent run fit survive dropped connection when you keep Claude Code running for VPS inside tmux.
FAQ
Why switching models no dey fix my Claude usage limit?
Because session and weekly limits dey shared across all models. Na the plan get the allowance, no be the model, so /model only change which model go answer; e no change how much allowance remain. The only exception na You've hit your Opus limit, wey apply only to Opus requests. For that case, switching model na the documented fix.
Wetin 429 rate_limit_error mean, and how long I suppose wait?
E mean say your account don hit rate limit for that model class: requests per minute, input tokens per minute, or output tokens per minute. The response get a retry-after header wey show the seconds to wait, and retries wey happen earlier go fail. The official SDKs already retry rate limits and 5xx errors with exponential backoff, twice by default, and dem dey respect that header. If 429 show while you still dey inside your tier limits, e point to acceleration limit from sudden ramp-up.
How I fit see my Claude usage limits and when dem go reset?
For Claude Code, run /usage to see your plan bars, reset times, and usage breakdown; /cost na alias, while d or w dey switch between the last 24 hours and the last 7 days. Those figures come from local session history, so dem no include usage from other devices or claude.ai. For the API, Console charts your rate limits, while GET /v1/organizations/rate_limits returns your configured limits with an Admin API key.
I fit continue work after I hit my Claude plan limit?
Sometimes. Run /usage-credits to buy usage past the ceiling for Pro and Max, or request am from an admin for Team and Enterprise; e need claude.ai login through /login and e no dey available with API key authentication. Otherwise, wait for the reset time, switch model if na Opus limit, or move the work to an API key, wey meters per minute instead of per window.