Aident AI

Claude Code Context Meter Wrong? Check 200K vs 1M
If Claude Code's footer says a session is almost full at roughly 200,000 tokens while /context reports a 1 million token window, trust neither percentage in isolation. Run /status, /model, and /context in the same session, check whether 1M context is disabled, and update Claude Code before you compact or clear useful history.
This guide covers a specific mismatch: the footer or status line behaves as if the limit is 200K, but Claude Code's own context inspection reports 1M for the active model. It does not promise that every account, model, gateway, or subagent receives a 1M window.
Confirm the Exact Mismatch
In the affected session, run:
Record the Claude Code version, active model, account or provider, and the total window shown by /context. Do not switch models between checks.
Do not confuse session context capacity with an account usage limit. If /usage is the surface that looks wrong, use the separate Claude Code usage-limit diagnostic before changing the session.
The August 8 report reproduced the mismatch on Claude Code 2.1.223 through 2.1.225 with Opus 4.8 on macOS: the footer calculated against 200K while /context reported 1M. An older Windows report described the same class of status-bar error with Sonnet 4.6. The newer report remains open, and Anthropic has not confirmed its proposed model-table root cause.
Small percentage differences are not enough to prove this bug. Anthropic notes that a status line and /context can differ because they are calculated at different times. A repeatable fivefold denominator mismatch in one unchanged session is the stronger signal.
Step 1: Check Whether 1M Context Should Be Active
Anthropic's current model documentation says 1M availability depends on the model, plan, provider, and configuration. Max, Team, and Enterprise subscriptions automatically receive 1M Opus context. Pro users need usage credits for 1M Opus context. Gateways can require an explicit [1m] model selection because Claude Code cannot always verify the upstream window.
Check the model picker:
Then inspect the environment outside Claude Code:
If the command prints 1, Claude Code is intentionally treating supported sessions as 200K. Remove that setting only if you understand the plan and usage implications, then start a new session. Do not unset organization-managed policy.
If /context also reports 200K, the footer may be correct. Check the plan, selected model variant, provider, gateway, and environment before calling it a display bug.
If /model does not match the model you selected, resolve Claude Code model-setting precedence and resumed-session state before comparing window sizes.
Step 2: Use /context as the Diagnostic Source
When /context reports 1M but the footer reaches 100% near 200K, avoid compacting solely because of the footer color or percentage. /context is the built-in command for inspecting what occupies the active window, while /status identifies the version, model, account, and connection.
Use this decision table:
What you observe | What it means | Next action |
|---|---|---|
Footer near 100%; | Likely display-denominator mismatch | Preserve the session and update Claude Code |
Footer near 100%; | No confirmed mismatch | Check entitlement, model, gateway, and environment |
Custom status line differs from | Script may use stale or hardcoded capacity | Read |
Both readings change after a model switch | Session state changed | Start a fresh session and repeat the three checks |
Session errors above 200K | More than a cosmetic meter problem | Preserve evidence and stop growing the session |
Do not keep sending prompts just to discover the real limit. A false early warning is inconvenient, but a session that actually fails after crossing 200K needs separate containment.
Step 3: Rule Out a Custom Status-Line Bug
If you configured /statusline, inspect that script before blaming Claude Code's built-in footer. Anthropic's status-line contract already supplies context_window.used_percentage; a script that divides token use by a hardcoded 200000 will reproduce the wrong meter even when Claude Code knows the correct capacity.
Ask Claude Code to review the script without editing it:
Show the configured status-line command and explain how it calculates context percentage. Confirm whether it reads
context_window.used_percentageor divides by a hardcoded token limit. Do not change settings or files.
If the script hardcodes 200K, replace only that calculation with the supplied percentage. Run the script manually with representative JSON before restarting the session. Keep the original file until the output is verified.
If no custom status line is configured, continue with the built-in client checks.
Step 4: Update Without Destroying the Session
Check and update the native CLI:
Then start a fresh session with the same model and repeat:
Updating is a low-risk first repair because the reported mismatch spans a narrow run of current client versions. Do not downgrade to an arbitrary old build, delete ~/.claude, clear every conversation, or reset organization settings just to repair a meter.
If the mismatch persists on the latest version, keep the original session for reference and file a focused report with:
Claude Code version and operating system;
model name exactly as
/statusor/modelshows it;plan and provider type, without account secrets;
whether
CLAUDE_CODE_DISABLE_1M_CONTEXTis set;footer percentage and
/contexttotal from the same moment;whether a custom status line is configured;
whether the mismatch reproduces in a new session.
Do not upload a full transcript or settings file without reviewing it for repository paths, prompts, tokens, and private provider configuration.
What Not to Do
Do not run
/compactrepeatedly because one meter turns red.Do not clear a useful conversation before checking
/context.Do not assume a model's API maximum proves your plan or gateway entitlement.
Do not hardcode 1,000,000 in a custom status line.
Do not remove an organization-controlled environment setting.
Do not treat a cosmetic mismatch as proof that token billing is wrong.
The practical goal is narrower: determine which window Claude Code resolved for this exact session, repair stale client or custom display logic, and preserve evidence when the built-in surfaces still disagree.
Reusable Diagnostic Prompt
Give Claude Code this bounded request:
Diagnose a possible context-meter denominator mismatch. Report the current Claude Code version, active model, provider, the total window from
/context, and whether a custom status line orCLAUDE_CODE_DISABLE_1M_CONTEXTis configured. Use read-only checks. Do not compact, clear, switch models, edit settings, update, downgrade, or restart anything.
Success is measurable: one unchanged session has a recorded version, model, provider, environment flag, footer reading, and /context total; a custom status line is either ruled out or shown to use the supplied percentage; and no conversation history is destroyed during diagnosis.
To verify whether the upstream reports have changed, start with Aident Loadout:
Follow https://aident.ai/SETUP.md
Then ask:
Check Aident Loadout authentication and Vault status. Discover the current read-only GitHub issue Action, inspect its schema, and preflight lookups for anthropics/claude-code issues 85010 and 61734. If the lookups are valid and free, execute them and return only state, updated time, labels, title, and canonical URL. Do not comment, react, edit, close, or create anything.
Set up Aident Loadout and verify the context-meter reports.
Sources
Refresh this guide when issue 85010 changes state, Anthropic changes plan or model context entitlements, the /context contract changes, or the footer and status-line calculations are documented as unified.



The one tool
for every tool
your agent needs.
Give any AI agent real capabilities in seconds. Connect 1,000+ tools once, skip the setup headache, and let your agents execute.
