Every major LLM provider now ships models that reason before they answer, but the controls, defaults, off switches and billing rules differ by provider and often by model, so settings do not carry across. This page compares the reasoning behaviour of current models from nine providers using identical fields: the control parameter, the effort levels each model accepts, the default, whether reasoning can be turned off, what is returned to the caller, how reasoning tokens are billed and the listed price per million tokens. It is written for developers, platform teams and buyers who need to configure or budget for reasoning models across more than one provider. For the concepts behind reasoning models, read Reasoning Models Explained first; this page assumes them. Providers are listed alphabetically; the order is never a ranking, and the page draws no verdicts.
Last checked: 2026-11-15.
This is an independent reference page from NHI Mgmt Group based on public provider documentation; it is not sponsored or endorsed by any provider. Reasoning parameters change between model versions, so confirm against each provider's current documentation.
Key takeaways
- Effort scales are not shared. Level names run from none or minimal to xhigh or max, and the same name can mean different things: DeepSeek maps medium and xhigh requests to high, while Z.ai maps GLM-5.2 xhigh to max.
- Defaults differ within one provider. Claude Opus 5.5 and Claude Haiku 5.5 default to medium while Claude Fable 5.2 and Claude Sonnet 5.5 default to high; GLM-5.3, Kimi K3.1 Pro and Qwen3.8-2.4T-A95B default to their top level.
- Some models cannot stop reasoning. Claude Opus 5.5, Claude Fable 5.2, GLM-5.3, GLM-5.3-Flash, Grok 4.7 and the open Qwen3.8-2.4T-A95B checkpoint always reason; requests to disable it return an error on several of them.
- Reasoning is billed as output. Every provider that states a rule bills reasoning tokens at the output rate, including tokens you never see, so output price is the figure that drives reasoning cost.
- Multi-turn rules can break tool loops. DeepSeek returns a 400 error if reasoning content is not passed back in tool conversations, and Google, Mistral AI and Moonshot AI document replaying thinking blocks unchanged.
Which models count as reasoning LLMs?
This page includes a model when its provider's reasoning, thinking or effort documentation names it and describes a control for it, and its price or availability could be confirmed on an official page on 2026-11-15. Restricted-access models are included where documented and labelled as such. Models are grouped by provider in alphabetical order.
- Alibaba (Qwen): qwen3.8-max and qwen3.8-flash (hybrid thinking, on by default) and the open-weight Qwen3.8-2.4T-A95B (thinking only).
- Anthropic: Claude Fable 5.2, Claude Opus 5.5, Claude Sonnet 5.5 and Claude Haiku 5.5, plus Claude Mythos 5.2, which Anthropic restricts to organisations verified through its verification programs.
- DeepSeek: deepseek-flash (DeepSeek-V4.1-Flash-1017) and deepseek-v4-pro (DeepSeek-V4-Pro-0813).
- Google: gemini-4-argon and gemini-3.8-flash. Gemini 4 Carbon and Gemini 4 Hydrogen were not listed on Google's thinking page on the date checked, so they are not compared here.
- Mistral AI: Mistral Large 4 and Mistral Small 4.
- Moonshot AI: Kimi K3.1 Pro.
- OpenAI: GPT-6 Astra, GPT-6.1 Sol, GPT-6.1 Terra and GPT-6 Luna.
- xAI: Grok 4.7 and Grok 4.6.
- Z.ai: GLM-5.3 and GLM-5.3-Flash.
Reasoning controls side by side
As of 2026-11-15, from each provider's reasoning, thinking or effort documentation (see Standards and references). "Not stated by <provider>" means the page checked gave no value for that model.
| Provider | Model (API id) | Control | Levels accepted | Default | Can reasoning be turned off? |
|---|---|---|---|---|---|
| Alibaba (Qwen) | qwen3.8-max | enable_thinking, thinking_budget | On or off, with a token budget | Thinking on | Yes, enable_thinking false |
| Alibaba (Qwen) | qwen3.8-flash | enable_thinking, thinking_budget | On or off, with a token budget | Thinking on | Yes, enable_thinking false |
| Anthropic | claude-fable-5-2 | output_config.effort | low, medium, high, xhigh, max | high | No, adaptive thinking is always on |
| Anthropic | claude-opus-5-5 | output_config.effort | low, medium, high, xhigh, max | medium | No, disabling returns a 400 error at every effort level |
| Anthropic | claude-sonnet-5-5 | output_config.effort | low, medium, high, xhigh, max | high | Up-front thinking can be skipped with thinking type between_tools at low, medium and high; 400 error at xhigh and max |
| Anthropic | claude-haiku-5-5 | output_config.effort | low, medium, high, xhigh, max | medium | Yes at high or below (thinking type disabled); 400 error at xhigh and max |
| DeepSeek | deepseek-flash | thinking enabled or disabled; reasoning_effort | low, high, max | Thinking on, high | Yes, thinking disabled (or effort none on the Responses API) |
| DeepSeek | deepseek-v4-pro | thinking enabled or disabled; reasoning_effort | low, high, max | Thinking on, high | Yes, thinking disabled |
| gemini-4-argon | thinking_level | low, medium, high | medium | Not stated by Google for this model; low is the lowest listed level | |
| gemini-3.8-flash | thinking_level | low, medium, high | medium | Not stated by Google for this model; low is the lowest listed level | |
| Mistral AI | mistral-large-4-0 | reasoning_effort | low, medium, high | high (recommended default) | No: none is not accepted |
| Mistral AI | mistral-small-2603 | reasoning_effort | high, none | Not stated by Mistral AI | Yes, none omits the thinking chunk |
| Moonshot AI | kimi-k3.1-pro | reasoning_effort | low, high, max | max | Not stated by Moonshot AI on the model card |
| OpenAI | gpt-6-astra | reasoning.effort; reasoning.mode | Subset of none to max; none rejected with HTTP 400 | Not stated by OpenAI on the reasoning guide | No: none is rejected |
| OpenAI | gpt-6.1-sol | reasoning.effort; reasoning.mode | Subset of none to max; none and minimal rejected | medium | No: none is rejected |
| OpenAI | gpt-6.1-terra | reasoning.effort; reasoning.mode | Not stated by OpenAI on the reasoning guide | Not stated by OpenAI on the reasoning guide | Not stated by OpenAI on the reasoning guide |
| OpenAI | gpt-6-luna | reasoning.effort; reasoning.mode | Not stated in full by OpenAI | medium | Not stated by OpenAI on the reasoning guide |
| xAI | grok-4.7 | reasoning_effort | low, medium, high, xhigh | high | No |
| xAI | grok-4.6 | reasoning_effort | low, medium, high, xhigh | high | No |
| Z.ai | glm-5.3 | thinking type; reasoning_effort | low, high, max | Thinking enabled, max | No: disabled returns an error |
| Z.ai | glm-5.3-flash | thinking type; reasoning_effort | low, high, max | Thinking enabled, max | No: disabled returns an error |
Anthropic's Claude Mythos 5.2 accepts the same levels as Claude Fable 5.2 and Anthropic states it uses the same recommendations, with adaptive thinking always on. Anthropic notes that not every model that supports max supports xhigh: Claude Opus 4.6, Claude Sonnet 4.6 and Claude Mythos Preview list max but not xhigh. On xAI, Grok 4.5 accepts low, medium and high, and treats an xhigh request as high.
How effort names map across providers
Several providers accept level names they do not implement and silently map them. This matters when one client library sends the same effort value to several providers.
| Provider | Requested value | Level actually applied |
|---|---|---|
| DeepSeek | minimal, low | low |
| DeepSeek | medium, high, xhigh | high |
| DeepSeek | max, ultra | max |
| xAI (grok-4.5) | xhigh | high |
| Z.ai (GLM-5.2) | none, minimal | Thinking stops |
| Z.ai (GLM-5.2) | low, medium | high |
| Z.ai (GLM-5.2) | xhigh | max |
| Z.ai Coding Plan (GLM-5.3, GLM-5.3-Flash) | none, minimal, low / medium, high / xhigh, max | low / high / max |
As of 2026-11-15. Other providers reject unsupported values instead of mapping them: OpenAI returns HTTP 400 for none on gpt-6-astra, Mistral AI states Mistral Large 4 does not accept none, minimal, xhigh or max, and Z.ai returns an error for any value other than max, high or low on GLM-5.3 and GLM-5.3-Flash on the standard API.
Two controls sit outside the effort scale. OpenAI's reasoning.mode accepts standard (the default) or pro on GPT-5.6 and GPT-6 models; mode and effort are independent, and pro is billed at the selected model's standard token rates while doing more work, so it uses more tokens. On xAI's grok-4.20-multi-agent, the effort value selects whether 4 or 16 agents collaborate rather than how deeply each reasons.
How much do reasoning models cost?
List prices in USD per million tokens, standard tier, from each provider's official pricing page on 2026-11-15. Reasoning tokens are billed at the output rate wherever a provider states a rule (see the next section), so the output column is the one that grows with effort.
| Provider | Model | Input | Cached input | Output | Pricing notes |
|---|---|---|---|---|---|
| Alibaba (Qwen) | qwen3.8-max | $2.00 | Not stated on the page section read | $6.00 | International (Singapore); one price for thinking and non-thinking modes |
| Alibaba (Qwen) | qwen3.8-flash | $0.15 | Not stated on the page section read | $0.47 | International (Singapore) |
| Anthropic | Claude Fable 5.2 | $8.00 | See pricing page | $40.00 | Full 1M context at standard pricing; Claude Mythos 5.2 is listed at the same rates |
| Anthropic | Claude Opus 5.5 | $4.00 | See pricing page | $20.00 | Full 1M context at standard pricing |
| Anthropic | Claude Sonnet 5.5 | $2.00 | See pricing page | $10.00 | Full 1M context at standard pricing |
| Anthropic | Claude Haiku 5.5 | $0.10 (prompts up to 100,000 tokens) / $0.50 (over) | See pricing page | $0.50 / $2.50 | Tiered by prompt length per request |
| DeepSeek | deepseek-flash | $0.30 peak / $0.15 off-peak (cache miss) | $0.006 / $0.003 | $1.20 / $0.60 | Off-peak is half price; peak 01:00 to 04:00 and 06:00 to 10:00 UTC on weekdays |
| DeepSeek | deepseek-v4-pro | $1.32 peak / $0.66 off-peak (cache miss) | $0.044 / $0.022 | $3.96 / $1.98 | Same peak hours |
| gemini-4-argon | $2.00 to 30 Nov 2026, then $4.00 | See pricing page | $10.00, then $20.00 | Output price includes thinking tokens | |
| gemini-3.8-flash | $0.75 to 31 Dec 2026, then $1.50 | See pricing page | $3.75, then $7.50 | Output price includes thinking tokens | |
| Mistral AI | Mistral Large 4 | $0.70 | $0.07 | $2.10 | From the model card |
| Moonshot AI | Kimi K3.1 Pro | Not stated by Moonshot AI on the pages checked (2026-11-15) | Pricing tables did not render on the platform page | ||
| OpenAI | GPT-6 Astra | $10.00 | $1.00 | $50.00 | 10% uplift on regional processing and FedRAMP endpoints for models released on or after 5 March 2026 |
| OpenAI | GPT-6.1 Sol | $2.00 | $0.10 | $10.00 | Same uplift rule |
| OpenAI | GPT-6.1 Terra | $1.00 | $0.05 | $5.00 | Same uplift rule |
| OpenAI | GPT-6 Luna | $0.10 | $0.01 | $0.50 | Same uplift rule |
| xAI | Grok 4.7 | $2.00 | Not stated on the models page | $6.00 | 500K context |
| Z.ai | GLM-5.3 | $1.40 | $0.26 | $4.40 | No thinking-specific rate listed |
| Z.ai | GLM-5.3-Flash | $0.15 | $0.03 | $0.50 | No thinking-specific rate listed |
As of 2026-11-15. Grok 4.6 was not listed on the xAI models page checked and is omitted from this table. Mistral Small 4 pricing was not re-checked for this page and is omitted. For how caching, batch and tiered prompt rules change the real cost, see Model Pricing Explained.
How reasoning tokens are billed and reported
| Provider | Billing rule stated | Usage field for reasoning | What the caller receives |
|---|---|---|---|
| Alibaba (Qwen) | Thinking content billed as output tokens; some hybrid models price thinking and non-thinking modes differently; a thinking-mode reply with no thinking output is billed at the non-thinking price | Not stated on the deep thinking page | reasoning_content beside content |
| Anthropic | Thinking counts toward max_tokens even when the thinking content is not returned | Not stated on the effort page | Effort applies to all output tokens: text, tool calls and thinking |
| DeepSeek | Not stated on the thinking mode page | Not stated on the thinking mode page | reasoning_content beside content |
| Output tokens plus thinking tokens; billed for the full thoughts, not the summary | total_thought_tokens | Final output only by default; opt-in thought summaries (thinking_summaries auto); a signature on every thought step | |
| Mistral AI | Not stated on the reasoning page, which notes higher effort generates more tokens | Not stated on the reasoning page | A thinking chunk (type thinking) followed by text chunks |
| Moonshot AI | Not stated on the model card | Not stated on the model card | reasoning_content, which must be passed back with tool calls |
| OpenAI | Reasoning tokens billed as output tokens; they occupy the context window and are not visible through the API | output_tokens_details.reasoning_tokens | Opt-in reasoning summaries; encrypted_content when store is false |
| xAI | Reasoning tokens count toward total billed usage | reasoning_tokens | Encrypted reasoning on the Responses API (returned on every grok-4.7 response); reasoning summaries on grok-4.7 |
| Z.ai | Not stated on the thinking page, which notes thinking consumes extra tokens | Not stated on the thinking page | reasoning_content, streamed as delta.reasoning_content |
As of 2026-11-15. Four providers return reasoning text in a field (Alibaba, DeepSeek, Moonshot AI and Z.ai use reasoning_content); Google, OpenAI and xAI return summaries or encrypted reasoning rather than the raw trace; Anthropic's effort page does not describe the returned form, which is covered on its thinking pages and summarised in Reasoning Models Explained. Visible reasoning text can contain sensitive data from the prompt or tools; see Reasoning Model Security.
Output limits and reasoning
Every provider that documents an output cap counts reasoning against it, so a small cap can return an empty answer while the reasoning tokens are still billed.
- Anthropic: max_tokens is a hard limit on total output, thinking plus response text. Anthropic advises a large max_tokens at high and above; for Claude Sonnet 5.5 agentic coding it suggests 128,000, the model's maximum, with streaming; for Claude Opus 5, Opus 4.8 and Opus 4.7 at xhigh or max it suggests starting at 64k and tuning.
- DeepSeek: both deepseek-flash and deepseek-v4-pro list a 1M context and 384K maximum output on the pricing page.
- Google: max_output_tokens caps thinking plus output; Google advises lowering thinking_level rather than setting a small cap.
- OpenAI: max_output_tokens limits reasoning, visible output and formatting tokens combined. OpenAI recommends reserving at least 25,000 tokens when starting out; if the limit is hit the response has status incomplete with reason max_output_tokens and may contain no visible output.
- Alibaba (Qwen): thinking_budget caps reasoning tokens, after which the model starts its answer; the deep thinking page states kimi-k3.1-pro and kimi-k3 served on Model Studio do not support it.
- Mistral AI, Moonshot AI, xAI and Z.ai: the reasoning pages checked do not state how output caps interact with reasoning.
For context window sizes per model see Frontier AI Models Compared and Context Windows Explained.
Multi-turn and tool-use rules
| Provider | Rule for earlier reasoning in later turns |
|---|---|
| Alibaba (Qwen) | preserve_thinking controls whether the model reads earlier reasoning_content; preserved reasoning counts as input tokens |
| Anthropic | Effort can change mid-conversation through per-message output_config on Claude Opus 5.5; not with between_tools on Claude Sonnet 5.5 |
| DeepSeek | Without tools, earlier reasoning_content is ignored; with tools, pass back reasoning_content for all earlier turns or the API returns a 400 error |
| Stateful mode manages signatures; in stateless mode resend every thought block exactly as received | |
| Mistral AI | Append the full assistant message including the thinking chunk; stripping it saves tokens but the documentation says it significantly degrades output quality |
| Moonshot AI | Pass back the full assistant message including reasoning_content and tool_calls |
| OpenAI | GPT-5.6 models default to all_turns carryover, and GPT-6.1 Sol supports it; reasoning carries over only within a model family; with store false, replay encrypted_content items in order |
| xAI | Encrypted reasoning can be sent back in later Responses API requests; Chat Completions has no field for it |
| Z.ai | Not stated on the thinking page |
As of 2026-11-15. Unsupported sampling parameters also differ: DeepSeek ignores temperature, presence_penalty and frequency_penalty in thinking mode without error, while xAI returns an error for presencePenalty, frequencyPenalty and stop on its reasoning models.
Benchmarks
Provider-reported reasoning scores are published for some models on launch posts and model cards, but they use different test sets, effort levels and dates, and no single dated source covers every row on this page. This page therefore lists no scores. When comparing, check that each score states the effort level and tool use, because Anthropic, Google and OpenAI all document that higher effort changes token use and results. See How to Read LLM Benchmarks.
Data handling and security for reasoning models
- Returned traces: where reasoning_content is returned (Alibaba, DeepSeek, Moonshot AI, Z.ai) it should be handled like model output: logged under the same retention rules and filtered before display.
- Encrypted reasoning: OpenAI and xAI return encrypted reasoning for stateless replay, and Google returns signatures; treat these as opaque and store them only as long as the conversation needs.
- Spend: top effort levels are the default on GLM-5.3, Kimi K3.1 Pro and Qwen3.8-2.4T-A95B, so unbounded agent loops can multiply output spend. See the Denial-of-Wallet and AI Agent Cost Runaway Guide.
- Restricted access: Anthropic states Claude Mythos 5.2 is available only to organisations verified through its verification programs, such as the Cyber Verification Program, with the same specifications and pricing as Claude Fable 5.2.
How to choose a reasoning model: factual criteria
| If you need | Check | Models documented with it |
|---|---|---|
| A way to turn reasoning fully off | Off switch in the controls table | deepseek-flash, deepseek-v4-pro, Claude Haiku 5.5 (high or below), Mistral Small 4, qwen3.8-max, qwen3.8-flash |
| A hard token budget for reasoning | Budget parameter rather than an effort label | qwen3.8-max and qwen3.8-flash (thinking_budget) |
| Raw reasoning text in the response | reasoning_content field | Alibaba, DeepSeek, Moonshot AI and Z.ai models listed |
| Off-peak pricing | Time-of-day rates | deepseek-flash, deepseek-v4-pro |
| Open weights for self-hosting the same model | Published checkpoint | Kimi K3.1 Pro, Mistral Large 4, Qwen3.8-2.4T-A95B, GLM-5.3; see Open-Weight Frontier Models Compared |
| Price stability through year end | Scheduled price changes | Gemini 4 Argon rises on 1 December 2026 and Gemini 3.8 Flash on 1 January 2027 |
Small teams usually gain most from fixing one explicit effort value per workload instead of relying on defaults, because defaults differ between sibling models. Larger organisations routing across providers need a mapping layer that translates one internal effort scale into each provider's accepted values and rejects unsupported ones before sending.
Practitioner checklist
- Set the effort or thinking level explicitly on every request; do not rely on defaults, which differ between models from the same provider.
- Keep a per-model table of accepted levels and test that unsupported values fail in staging rather than being silently mapped.
- Budget with the output price, and size max_tokens or max_output_tokens to leave room for reasoning plus the answer.
- Pass reasoning content, signatures or encrypted items back exactly as documented in tool loops, and add a regression test for the 400 error DeepSeek documents when reasoning_content is missing.
- Record reasoning token counts from the usage field where one exists and alert on sudden rises.
- Track scheduled price changes, such as Gemini 4 Argon on 1 December 2026, in your cost model.
- Apply the same retention and redaction rules to returned reasoning text as to model output.
- Re-check the provider's reasoning page when a new model version ships; Anthropic advises an effort sweep rather than carrying settings over from Claude Fable 5.1 to 5.2.
Standards and references
- Alibaba Cloud: Model Studio deep thinking (accessed 2026-11-15)
- Alibaba Cloud: Model Studio pricing (accessed 2026-11-15)
- Anthropic: Effort (accessed 2026-11-15)
- Anthropic: Pricing (accessed 2026-11-15)
- Anthropic: Claude Mythos 5.2 overview (accessed 2026-11-15)
- DeepSeek: Thinking mode (accessed 2026-11-15)
- DeepSeek: Models and pricing (accessed 2026-11-15)
- Google: Gemini thinking (accessed 2026-11-15)
- Google: Gemini API pricing (accessed 2026-11-15)
- Mistral AI: Reasoning (accessed 2026-11-15)
- Mistral AI: Mistral Large 4 model card (accessed 2026-11-15)
- Moonshot AI: Kimi K3.1 Pro model card (accessed 2026-11-15)
- OpenAI: Reasoning models (accessed 2026-11-15)
- OpenAI: Pricing (accessed 2026-11-15)
- xAI: Reasoning (accessed 2026-11-15)
- xAI: Models (accessed 2026-11-15)
- Z.ai: Thinking mode (accessed 2026-11-15)
- Z.ai: Pricing (accessed 2026-11-15)
Related NHI Mgmt Group resources: Reasoning Models Explained, Reasoning Model Security, Frontier AI Models Compared, Coding LLMs Compared, Model Pricing Explained.