Claude Code Effort Levels — low to max, and ultracode
Effort controls how much Claude reasons before acting on each step. Lower effort is faster and cheaper; higher effort thinks harder and spends more tokens, and more of your usage limit. Here's what Claude Code's docs say about each level.
The earlier version described effort as it was in April 2026 (Claude Code 2.1.111, Opus 4.7) with estimated costs and latencies. It's now based on the current model configuration docs.
Which models support which levels
| Model | Levels | Default |
|---|---|---|
| Opus 5.5, Sonnet 5.5, Haiku 5.5 | low, medium, high, xhigh, max | medium |
| Fable 5.1, Fable 5, Opus 5, Sonnet 5, Opus 4.8 | low, medium, high, xhigh, max | high |
| Opus 4.7 | low, medium, high, xhigh, max | xhigh |
| Opus 4.6, Sonnet 4.6 | low, medium, high, max | high |
If you pick a level a model doesn't support, Claude Code uses the highest supported level below it; xhigh runs as high on Opus 4.6, for example. Level names are calibrated per model, so "high" isn't the same amount of thinking on every model. Your organisation can cap effort.
When to use each
- low: short, scoped, latency-sensitive tasks that don't need much intelligence.
- medium: cost-sensitive work that can trade a little intelligence. It's the default on Opus 5.5, Sonnet 5.5 and Haiku 5.5 in Claude Code, and Anthropic says Opus 5.5 at medium matches or beats Opus 5 at high on its coding and knowledge-work evaluations.
- high: the balanced default on most models.
- xhigh: deeper reasoning at higher token spend.
- max: can help on demanding tasks but shows diminishing returns and "is prone to overthinking". Anthropic's advice is to test before adopting it broadly.
- ultracode: not a model level. It's a Claude Code toggle: with it on, Claude orchestrates dynamic workflows for substantive tasks at whichever effort level the session runs at. Since Claude Code 2.1.284 it is its own switch in
/effort(pressTabin the slider, or run/effort ultracode on//effort ultracode off) and it no longer forcesxhigh. Only the--effort ultracodeflag still turns it on and setsxhigh. It can also be set with"ultracode": truein a settings file.
Sonnet 5.5 (default Sonnet in Claude Code since 2.1.284) starts at medium in Claude Code, while Anthropic's API defaults it to high, and its levels are recalibrated against Sonnet 5, so re-test any setting you carried over.
Haiku 5.5 (Claude Haiku 5.5, launched 2026-10-07; the haiku alias on the Anthropic API) also starts at medium, on the API as well as in Claude Code, unlike Sonnet 5.5, whose API default is high. It always uses adaptive reasoning, and like Opus 5.5, Sonnet 5.5 and the Fable models its thinking can't be turned off. Claude Code needs v2.1.293 or later to use it; on Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry and Claude Platform on AWS the haiku alias still resolves to Haiku 4.5.
For a single hard turn without changing your setting, put ultrathink anywhere in the prompt.
How to set it
/effort # slider; Enter saves as default, "s" applies to this session only
/effort xhigh # set directly
/effort auto # clear your saved level for this model
claude --effort high # one session
export CLAUDE_CODE_EFFORT_LEVEL=medium
Priority order: an explicit choice (environment variable, --effort or /effort), then your saved setting, then the model's default. max applies only to the current session unless it's set through CLAUDE_CODE_EFFORT_LEVEL. In non-interactive -p runs, /effort isn't saved.
Effort also affects Claude chat and Cowork usage: higher effort uses more of your shared limit (usage limits).
Source: Claude Code docs: model configuration. Checked 2026-10-09 against Claude Code 2.1.295; Claude API docs: effort for the API-side defaults.
← Back to the Claude Cowork FAQ