Adaptive thinking means an AI model decides for itself, question by question, whether to think before it answers and for how long. A customer who asks for your opening hours gets a quick reply; a question about a complicated refund gets more thought first. That matters for cost and speed, because you pay for the model's thinking as if it were written text, and the customer waits while it thinks.
Where does the term come from?
Anthropic introduced adaptive thinking in February 2026 with Claude Opus 4.6. Until then, developers could only switch the model's extended thinking on or off. With it on, the model first writes out its reasoning in a separate thinking block, within a fixed budget of tokens, and then answers (see reasoning in AI). With adaptive thinking, in Anthropic's words, "Claude can decide when deeper reasoning would be helpful".
Google's Gemini API describes the same idea as dynamic thinking: the model adjusts its reasoning effort to the complexity of the request.
How does it work?
In the Claude API, as the documentation of April 2026 describes it, you set thinking: {"type": "adaptive"}. Claude then evaluates the complexity of each request and decides whether to think and how much. The effort parameter (output_config.effort) acts as soft guidance:
low: Claude keeps thinking to a minimum and skips it for simple tasks.medium: moderate thinking, which may be skipped for very simple queries.high, the default: Claude almost always thinks.xhigh: deep thinking with extended exploration, added with Claude Opus 4.7 on 16 April 2026.max: thinking without a limit on depth.
Adaptive mode also lets Claude think between tool calls, which suits AI agents that check each result before their next step. At the launch of Opus 4.7, adaptive was its only thinking mode: a request with a fixed budget (budget_tokens) was rejected. On Opus 4.6 and Sonnet 4.6 the fixed budget still worked, but Anthropic marked it as deprecated. In Claude Code, Anthropic raised the default effort to xhigh for all plans when Opus 4.7 came out.
In Simon Willison's command-line tool llm the settings are called thinking_adaptive and thinking_effort; its plugin llm-anthropic 0.25 of 16 April 2026 added Opus 4.7 with thinking_effort: xhigh and a new thinking_adaptive option.
What are the trade-offs?
More thinking helps on hard problems and costs time on easy ones. In the Opus 4.6 announcement Anthropic writes that the deeper reasoning "produces better results on harder problems, but can add cost and latency on simpler ones". Its advice for a model that overthinks: lower the effort from high to medium.
Adaptive thinking also makes cost and latency harder to predict. For workloads that need predictable latency or precise control over thinking costs, the April 2026 documentation noted that the fixed budget still worked on Opus 4.6 and Sonnet 4.6, while calling it deprecated. Anthropic's own claim is that adaptive thinking can do better than a fixed budget on many workloads, especially on a mix of very easy and very hard requests, and on long agent tasks.
The model may think more or less often than you want. According to the documentation, when it thinks can be steered with the prompt: a line in the system prompt can tell Claude to think only when it clearly improves the answer, or to think carefully before responding.
Example
Suppose a webshop runs its customer chat on Claude with adaptive thinking at medium effort. "What time do you close on Saturday?" can get an answer without any thinking. "I paid with a gift card and a discount code, and now I want to return one of the two items" is the kind of question where the model is likely to work through the return policy first. One configuration covers both:
1 response = client.messages.create( 2 model="claude-opus-4-7", 3 max_tokens=16000, 4 thinking={"type": "adaptive"}, 5 output_config={"effort": "medium"}, 6 messages=[{"role": "user", "content": question}], 7 )
