TL;DR The million-token context window is no longer one model's feature, and not every model carries it the same way: Sonnet 5 and Fable 5 always run at 1M with no suffix and no credits, while Opus and Sonnet 4.6 switch it on with
[1m]and it depends on your plan. No surcharge either way. And the old advice still holds: room to fill is not a reason to fill it.
Correction (August 2026): this tip was written when 1M was an Opus 4.6 novelty and it said Claude Code launched on that model by default. Not anymore. Today it is supported by Fable 5, Sonnet 5, Sonnet 4.6 and every Opus from 4.6 onwards, the default model depends on your plan, and the distinction that matters is not who has it but how each one turns it on.
The context window goes from 200K to 1M: five times more room before Claude needs to compact. Longer sessions, fewer interruptions, and the ability to work across whole monorepos without fragmenting context.
But there's a catch: model performance degrades with distant tokens. This is known as context drift, and the further information sits from the current point in the conversation, the less accurately the model retrieves it. Just because you can fill 1M tokens doesn't mean you should.
Native or suffixed, which is not the same thing
Here is the distinction almost nobody has straight, and it is the one that decides whether you have to do anything at all:
| Model | How 1M turns on | What it costs |
|---|---|---|
| Sonnet 5 | Native. There is no 200K variant and no [1m] suffix to pick |
Nothing extra, on any plan |
| Fable 5 | Native, same as Sonnet 5 | Nothing extra |
| Opus (4.6 onwards) | With the suffix: opus[1m] |
Included on Max, Team and Enterprise. Pro needs usage credits |
| Sonnet 4.6 | With the suffix: sonnet[1m] |
Needs usage credits on every plan |
| API and pay-as-you-go | Depends on the model | Full access |
There is no per-token surcharge in any of those rows. The official docs put it this way:
"The 1M context window uses standard model pricing with no premium for tokens beyond 200K."
If you are on Sonnet 5 or Fable 5, you already have the million without touching anything. On Opus you don't: there the suffix is on you.
And if you're wondering whether Claude Code is usable without a monthly subscription, API pay-as-you-go is the short answer, and the full picture, including the free-plan trap and the Open Source program, is here.
How to use it without wasting context
1. Monitor with /context
Use the /context command to see how much context you're consuming in real time. Don't wait for Claude to auto-compact, get ahead of it.
2. Compact before Claude does
Auto-compaction fires as the context approaches its limit, and that limit is the smaller of two things: your auto-compact window and the model's maximum context. On Sonnet 5, with the window on auto, that lands around 967K tokens. By the time it fires on its own you have already lost precision on older tokens, so compact yourself:
/compact focus on the authentication module
The optional instructions tell Claude what to prioritize when summarizing.
3. Don't load context you don't need
Having 1M doesn't mean you should load the whole codebase. Load selectively: specific directories, relevant files. Claude reads on demand; you don't need to pre-load everything.
On top of the accuracy reason there's a spending one: whatever you load in there isn't paid for once, it gets re-sent on every turn the session has left. A window five times larger doesn't lower that cost, it gives it five times more room.
4. Select the 1M variant when your model needs it
Only Opus and Sonnet 4.6 need this. The suffix works on the alias or on the full model name:
/model opus[1m]
/model sonnet[1m]
/model claude-opus-4-8[1m]
Or when launching Claude Code:
claude --model opus[1m]
5. Control when compaction triggers
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE moves the threshold percentage at which compaction fires:
export CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=70
That is the threshold as a percentage. The size of the window that percentage is measured against is a separate thing, and four different places can set it: who decides your auto-compact window. That tip also carries Claude Code's own warning, which cuts against intuition: lowering the window doesn't save you anything, it just makes you compact more often.
6. Turn it off entirely
export CLAUDE_CODE_DISABLE_1M_CONTEXT=1
It removes the 1M variants from the model picker. And on the models that ship with it, Sonnet 5 and Fable 5, it goes further: it treats them as having a 200K window.
Reference
| Aspect | Detail |
|---|---|
| Classic window | 200K tokens |
| Extended window | 1M tokens |
| Native 1M, no suffix | Sonnet 5, Fable 5 |
1M via [1m] suffix |
Opus 4.6 onwards, Sonnet 4.6 |
| Syntax | opus[1m], sonnet[1m], claude-opus-4-8[1m] |
| Auto-compaction threshold | The smaller of your auto-compact window and the model's maximum (~967K on Sonnet 5 with auto) |
| Move the percentage | CLAUDE_AUTOCOMPACT_PCT_OVERRIDE |
| Disable 1M | CLAUDE_CODE_DISABLE_1M_CONTEXT=1 |
| Per-token price | No surcharge: the same rate across the whole window |
Official docs: Model configuration, extended context
Part of the 10 habits to save tokens in Claude Code. And which of the three models to reach for is in Sonnet 5, Opus 5 and Fable 5.
Checked on Claude Code v2.1.251.