Opus 4.6 shows 200K context instead of 1M on Claude Max plan (v2.1.75)

Open 💬 18 comments Opened Mar 13, 2026 by kirillgreen

Description

v2.1.75 release notes state:

Added 1M context window for Opus 4.6 by default for Max, Team, and Enterprise plans (previously required extra usage)

However, /context consistently shows 14k/200k tokens (7%) — the context window remains at 200K.

Environment

  • Claude Code: v2.1.75
  • Model: claude-opus-4-6 (medium effort)
  • Plan: Claude Max ($200/month)
  • Extra usage: enabled (€0.00 spent)
  • OS: macOS (Darwin 25.3.0)
  • No CLAUDE_CODE_DISABLE_1M_CONTEXT env var set
  • No model overrides in settings

Steps to reproduce

  1. Start a new Claude Code session: claude
  2. Run /context
  3. Observe 200k context window instead of expected 1M

What I tried

  • Starting multiple new sessions
  • Enabling extra usage on claude.ai
  • Verifying no env vars or settings override the context window
  • Confirmed plan shows "Claude Max" in the header

Expected behavior

/context should show 1M context window as described in v2.1.75 release notes.

View original on GitHub ↗

18 Comments

Hoernchen · 4 months ago

Appears to be caused by setting CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC to 0 or 1 or setting DISABLE_TELEMETRY=1 so apparently you only get 1m context if they get telemetry? Unsetting that makes 1m work for me.

chrisgagne · 4 months ago

For what it's worth, I've found at the moment that I am able to use the 1M context window (confirmed with /context) even with extra usage entirely disabled (both $0 monthly max and turned off). Further, I've found that after several minutes of doing so, I no longer see separate options for either Sonnet or Opus with 1M contexts in the /model dialog. Perhaps things have evolved in just the last few hours. :)

ManufactoryOfCode · 4 months ago

Workaround for Opus 4.6 stuck on 200K context despite Max plan

Root cause (likely): When Opus 4.6 was updated to default to 1M context, the CLI did not automatically migrate existing model selections. If you had Opus 4.6 selected before the 1M rollout (v2.1.50), your
session continued to route to the 200K variant internally — even though the startup message says "Opus now defaults to 1M context" and /model shows "Opus 4.6".

How to verify: Run /context — if it shows xxk/200k tokens, you're affected.

Workaround:

  1. Open /model
  2. Switch to a different model (e.g. Haiku)
  3. Open /model again — you should now see Opus 4.6 (1M) as a separate option
  4. Select it

After this, /context should show xxk/1M tokens.

Suggestion: The CLI should auto-migrate existing Opus 4.6 selections to the 1M variant for Max plan users, or at minimum surface a prompt when it detects a 200K session on a plan that supports 1M.

AspireAI-Developer · 4 months ago

Hi team, I'm on the Max plan ($200/month) and Claude Code still shows 200k context for Opus 4.6 instead of the expected 1M.

Environment:

  • Plan: Max ($200/month)
  • Claude Code version: 2.1.76
  • OS: macOS (Darwin 25.3.0)
  • Model: Opus 4.6 (only option in /model picker — no separate 1M variant)
  • Context shown: 200k (expected: 1M per https://claude.com/blog/1m-context-ga)

Verified — none of the known env vars are set:

  • DISABLE_TELEMETRY — not set
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC — not set
  • CLAUDE_CODE_DISABLE_1M_CONTEXT — not set

I've updated to the latest version (2.1.76) and started fresh sessions — still capped at 200k.

Would appreciate any guidance on what might be blocking the 1M entitlement, or if there's
anything else I can check on my end. Happy to share account details privately if that helps with
debugging.

davidlandais · 4 months ago

@AspireAI-Developer Had the same issue. You need to disable CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC. I didn't think I had it enabled, but it was present in the "env" key of ~/.claude/settings.json, which @Hoernchen confirmed.

It's a shame you have to disable this option to get access to 1M context. Not very honest.

ZenAlexa · 4 months ago

Confirming that removing CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC from ~/.claude/settings.json resolved this for me as well.

Before: CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 in settings.json/context showed 200K
After: Removed the env var → restarted session → /context now shows 1M

Environment:

  • Claude Code: v2.1.76
  • Plan: Claude Max ($200/month)
  • OS: Windows 11
  • Model: Opus 4.6

Thanks to @Hoernchen and @davidlandais for identifying the root cause. That said, it would be nice if the entitlement check was decoupled from the telemetry toggle — users shouldn't have to opt into telemetry to access a paid feature.

kirillgreen · 4 months ago

Confirming that removing DISABLE_TELEMETRY from the env key in ~/.claude/settings.json resolved this.

Before: "DISABLE_TELEMETRY": "1" in settings.json → /context showed 200K
After: Removed the env var → restarted session → /context now shows 1M

Environment:

  • Claude Code: latest
  • Plan: Claude Max
  • OS: macOS (Darwin 25.3.0)
  • Model: Opus 4.6

Thanks to @Hoernchen and @davidlandais for identifying the root cause. Agree that the entitlement check should be decoupled from the telemetry toggle.

ahundt · 4 months ago

Here is a minimal binary patch that restores 1M context, /remote-control, and /btw when DISABLE_TELEMETRY=1 or CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 is set. Tested on v2.1.76, Max 20x, macOS: https://gist.github.com/ahundt/158d498f07a10fec4955a70bf475a20b

sgup · 4 months ago

Tried all the solutions here, but no luck. Still stuck on 200k (on Max 20 plan)

Update:

I was on stable but looks like i had to be on the latest update channel

# ~/.claude/settings.json
"autoUpdatesChannel": "latest"
Marshall-Hallenbeck · 4 months ago

Confirming removing DISABLE_TELEMETRY from settings.json switches to 1m. This is pretty messed up, why would telemetry be necessary?

nullbio · 4 months ago

Can you re-enable DISABLE_TELEMETRY once 1m is showing?

Hoernchen · 4 months ago
Can you re-enable DISABLE_TELEMETRY once 1m is showing?

No, you can't, the feature gates are tied to telemetry.

nullbio · 4 months ago
> Can you re-enable DISABLE_TELEMETRY once 1m is showing? No, you can't, the feature gates are tied to telemetry.

I re-enabled it and my session is at 392k/1000k tokens, so I think you can?

EricPotratz · 3 months ago

Tried all these suggested fixes, and none are working for me.

nullbio · 3 months ago

You need v2.1.79 or higher to re-enable it again after getting it working, just fyi.

marsidev · 3 months ago

I could fix it by adding this to ~/.claude/settings.json:

{
  "model": "claude-opus-4-6[1m]"
}
hiddenlayer1 · 1 month ago

Hi @kirillgreen — adding evidence here because this bug has persisted from Opus 4.6 through Opus 4.7, which I think makes it valuable signal for the Anthropic team to escalate as a long-running entitlement defect rather than a per-model regression.

Your original report shows 200K instead of 1M on Opus 4.6, v2.1.75, on Mac. Same bug fires for me on:

  • Claude Code Desktop v2.1.141 (latest as of 2026-05-23)
  • Windows 11 Home
  • Claude Max plan, steady-state account
  • Model: Opus 4.7 [1m] (the 1M variant of the new model)

So whatever entitlement path is misreading the served window is not specific to Opus 4.6 — it followed the model rename into 4.7. That's consistent with the bug being in the entitlement/auth/plan layer (which is per-account, per-plan) rather than per-model.

Trigger math, verified live on my machine: min(CLAUDE_CODE_AUTO_COMPACT_WINDOW=1_000_000, detected) × CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=0.95 = ~190K. The only way that resolves to ~190K is if detected ≈ 200K. So the runtime is reading the served window as ~200K, exactly the same number you reported.

I've posted comprehensive 30-day evidence on the primary tracker #55504 (607 compaction events, 99 of 114 multi-compaction sessions thrashing, worst single session 29 compactions): https://github.com/anthropics/claude-code/issues/55504#issuecomment-4525687708. Happy to share the raw 120KB JSONL.

Filing a parallel Max-entitlement-not-delivered support case to support@anthropic.com — the docs at code.claude.com/docs/en/model-config#extended-context promise Max auto-upgrades Opus to 1M, so this is materially a paid-feature-not-delivered situation rather than just a CC engineering bug.

Thank you for filing the original — the cross-model persistence (4.6 → 4.7) is a strong signal that this is server-side entitlement, not a one-off model regression.

thinkycx · 7 days ago

add [1m] in your conf will be work "ANTHROPIC_MODEL": "XXXX.claude-opus-4.6[1m]",