How Hard Should Claude Think?
There's a dial that controls how hard the model thinks before it answers. Most people never touch it, and most of the time that's the right call.
- Lesson 02
- Beginner
- 3 min
- Updated: August 2026
Before this: Lesson 1.
Accurate as of August 2026. Model defaults and settings shift with updates — see the DYOR note at the bottom.
There's a dial called "effort" that controls how hard Claude thinks before it answers. Most people never touch it — and most of the time, that's the right call.
The Five Levels
From lightest to heaviest:
- low — barely thinks, skips the easy stuff
- medium — thinks a bit more, still skips the easy stuff
- high — thinks on almost everything — this is the default
- xhigh — always thinks, and thinks deep
- max — thinks on everything, as deep as it goes
Not every model has all five. Older models (Opus 4.6, Sonnet 4.6) top out at xhigh. Haiku doesn't have this dial at all. Ask for a level your model doesn't support, and it just quietly drops to the closest one it does — no error, just different behavior than you expected.
Effort isn't a hard token limit. It's more like a mood: on low, Claude still thinks about a hard problem, just less than it would on high.
How to Change It
Type /effort to pull up a slider, or set it directly: /effort xhigh. Run /effort auto to go back to default. For a single one-off run: claude --effort max.
The One Rule That Matters
Don't crank the dial up because a task feels hard. Crank it up because Claude actually messed something up — skipped a file, skipped the tests, didn't double-check its work.
If you're raising the effort level on a task that doesn't need it, you're treating the symptom, not the cause. The real fix is usually somewhere else: your CLAUDE.md, the context you gave it, or how the task was framed.
max in particular gives diminishing returns and tends to overdo it. Test it on your own work before flipping it on everywhere.
Two Different Dials
Model and effort control different things. Model is about knowledge — catching subtle bugs, unfamiliar territory, architecture calls. Effort is about patience — how long it keeps working the problem. Throwing a bigger model at a routine task just burns more tokens at a higher price for nothing.
"Ultrathink" Is Real. "Think Hard" Isn't.
You've probably seen the old ladder floating around: think → think hard → think harder → ultrathink. Only one word in that chain actually does anything: ultrathink. It drops an instruction into the context — it doesn't touch the actual effort setting. Everything else in that list is just regular text Claude reads like any other words in your prompt.
Yes, This Eats Into Your Limits
Anthropic says outright that effort level affects how much you spend. Higher effort on routine work costs more for no real benefit. They haven't published an exact multiplier, but the direction is confirmed: dial it down for the boring stuff.
Quick Checklist
- Check your current level:
/effort - Know how many levels your model supports (four or five)
- Leave routine tasks on the model's default
- Only raise the level after a specific, real mistake
- Before raising it, check whether the real fix is your
CLAUDE.mdor task framing instead - On a long session, pick a level upfront and leave it alone
⚠️ DYOR: Model lineups, defaults, and effort behavior change with pretty much every release. Treat this as a snapshot of August 2026, not a permanent spec — check current docs before you build a workflow around any of it.
New lessons, when they’re ready
No schedule, no drip campaign. I send one when I've actually learned something worth writing down.