Effort level
A setting for how much the thinks at each step. See what it is, how it works, how it is used and what to watch for, with pictures and examples.
What it is
The effort level controls adaptive reasoning, which lets the decide whether and how much to think on each step. Lower effort is faster and cheaper for simple tasks. Higher effort gives deeper reasoning for hard problems, and in tests checked more and verified more of its work. The levels are low, medium, high, xhigh and max, but which ones you get depends on the model, and models not listed in the docs do not support effort.
How it works
-
Pick a level with /effort
-
sends it with requests
-
The model thinks more or less
-
Change it again any time
How to use it
-
/effortopens a slider, or type a level like
/effort highto set it directly. -
--effortsets the level for one session when you launch Claude Code.
-
CLAUDE_CODE_EFFORT_LEVELan environment variable that sets a level name or
auto. -
ultrathinkput this word in a to ask for deeper reasoning on that turn only, without changing your setting.
Watch out
If you choose a level the model does not support, Claude Code falls back to the highest supported level below it, for example xhigh runs as high on Opus 4.6. max can overthink and show diminishing returns, so test it before using it widely. The same level name does not mean the same amount on different models, because each model is calibrated on its own.
Related terms
Original and official docs
This page explains the term in plain words. The original is the authority: if they differ, follow the original.