On current Claude models, you no longer hand-manage a thinking-token budget. Models like Claude Fable 5, Opus 4.8, and Sonnet 5 use adaptive thinking — the model decides how much internal reasoning a request needs — and your control is the effort setting, which shifts how much reasoning the model is inclined to spend. The trap for engineering teams is treating effort levels as fixed units. They are named levels, not fixed quantities, and Anthropic's migration guide documents that the token allocation behind each level changes between model generations.
The evidence: effort was recalibrated between Opus 4.7 and 4.8
The Opus 4.7 → 4.8 migration path spells out a recalibration: on Opus 4.8, medium does somewhat more thinking than before, high does somewhat less, and xhigh does substantially more. Read that again from an operations standpoint: with no change to your code, the same xhigh setting buys substantially more thinking — which means more output tokens, higher cost per request, and higher latency. A setting tuned on 4.7 for a cost/quality sweet spot lands somewhere else on 4.8.
This is why "re-evaluate your effort setting" appears in migration checklists alongside cost re-baselining. Effort levels are calibrated to each model's capabilities. A stronger model may need less prompting-through-problems at a given level, so keeping your old setting can mean paying for thinking the new model doesn't need — or, in the other direction, starving a task the new model approaches differently.
The Fable 5 recommendation: start at high, not xhigh
The migration guide's instruction for moving to Claude Fable 5 is explicit: "Re-evaluate your effort setting. Start at high for most tasks, including workloads that ran at xhigh on Claude Opus 4.8." The logic follows from the calibration point: Fable 5 is Anthropic's most capable widely released model, and a workload that needed maximum effort on the previous model may hit its quality bar at high — at lower cost and latency. On Fable 5, adaptive thinking is always on (requests cannot disable it), and effort is the depth control, defaulting to high.
high, run your eval suite, and only escalate to xhigh for the specific workloads where the suite shows a quality gap. Escalating by default converts a model upgrade into a silent cost increase.Defaults and levels to know
Some anchors from the current model documentation: on Claude Opus 4.8, effort defaults to high on all surfaces (Claude API, Claude Code, claude.ai); on Claude Sonnet 5 it defaults to high on the Claude API and Claude Code, and the model supports low/medium/high/xhigh/max. Adaptive thinking and the effort control are available on all four third-party platforms — generally available on Claude Platform on AWS, Amazon Bedrock, and Vertex AI, and in beta on Microsoft Foundry — so the retuning discipline applies wherever you run.
Making retuning a repeatable step
Treat effort like any other tunable that regresses across upgrades. Concretely:
Record the setting per workload. If effort is set in a config file rather than scattered through code, retuning is an experiment, not an archaeology project.
Measure at two levels, not one. During migration testing, run your eval suite at the recommended starting level (high) and one level in each direction where the model supports it. Compare quality scores, output tokens, and latency. Thinking tokens are billed as output tokens and count toward max_tokens, so the cost signal shows up directly in your usage metrics.
Decide per workload, not globally. A nightly batch summarizer and an interactive support agent have different latency budgets; the same effort level is rarely right for both.
The result of the exercise is one line in your migration notes per workload: the level chosen, the eval score it achieved, and what the next level up would have cost. That single artifact makes the next migration's retuning an hour of work instead of a debate.
Where to go next
Effort retuning is step three's model-specific knob in the broader migration regression checklist; pair it with tokenizer drift for the cost side and automated evals for the quality side.