
Reasoning Models — When They're Worth 10x the Price
o1, o3, and DeepSeek R1 think before they answer, and that thinking is billed as output tokens. Here's when the extra cost pays for itself and when it's wasted spend.
Author
AICredits Team
Published
25 Sept 2026
Reading time
6 min read
What makes reasoning models different — and expensive
Reasoning models (OpenAI's o1/o3, DeepSeek R1, Claude with extended thinking) generate an internal chain of thought before producing their visible answer. That hidden reasoning is not free: it consists of actual tokens, billed at the same rate as regular output tokens. A response that looks like three sentences on screen might have generated 2,000+ reasoning tokens behind it.
{
"usage": {
"prompt_tokens": 150,
"completion_tokens": 2340,
"completion_tokens_details": {
"reasoning_tokens": 2048
}
}
}In this example, 2,048 of the 2,340 billed completion tokens are invisible reasoning — you pay for them, but the response you receive is only the final answer.
The real cost multiplier
| Model | Input (₹/1M) | Output (₹/1M) | vs. GPT-4o-mini output rate | |-------|--------------|----------------|-------------------------------| | GPT-4o-mini | ₹13.23 | ₹52.92 | 1x (baseline) | | DeepSeek R1 | ₹52.92 | ₹211.00 | 4x | | o3-mini | ~₹100 | ~₹402 | 7.6x | | o3 | ~₹183 | ~₹731 | 14x | | o1 | ~₹1,370 | ~₹5,481 | 104x |
These are per-token rates. Because reasoning models also generate more tokens per response than a standard model answering the same prompt, the real cost gap on a single request is often larger than the rate difference alone suggests — a reasoning-heavy response can be 10-20x the cost of a comparable GPT-4o-mini response once volume is factored in.
When the extra cost is worth it
Reasoning models earn their price on tasks where getting the wrong answer has a real cost and step-by-step deliberation measurably improves accuracy:
- Multi-step math and logic problems — proofs, word problems with multiple constraints
- Complex code generation — non-trivial algorithms, debugging subtle logic errors
- Multi-constraint planning — scheduling, resource allocation with competing requirements
response = client.chat.completions.create(
model="openai/o1",
messages=[{"role": "user", "content": "Prove that there are infinitely many prime numbers."}],
max_completion_tokens=8000, # o1 uses this instead of max_tokens
)When it's wasted spend
For tasks with a straightforward answer path — classification, summarization, extraction, casual chat, most CRUD-style code generation — a standard model performs just as well at a fraction of the cost. Reasoning models add latency (generating thousands of hidden tokens takes time) on top of cost, with no accuracy benefit if the task doesn't actually require deliberation.
Controlling reasoning cost with effort settings
OpenAI's o3 models expose a reasoning_effort parameter that trades accuracy for cost directly:
| Value | Approx. reasoning tokens | Use for |
|-------|------------------------------|----------|
| low | ~1,000 | Simple tasks, cost-sensitive paths |
| medium | ~5,000 | Balanced default |
| high | ~20,000+ | Hard problems where accuracy matters most |
response = client.chat.completions.create(
model="openai/o3",
messages=[{"role": "user", "content": "Solve this differential equation..."}],
extra_body={"reasoning_effort": "high"},
)Set this per-request based on task difficulty rather than always defaulting to high — most requests don't need the maximum reasoning budget.
DeepSeek R1: a cheaper reasoning option
DeepSeek R1 sits well below OpenAI's o-series on price while still providing visible chain-of-thought via a reasoning_content field:
response = client.chat.completions.create(
model="deepseek/deepseek-reasoner",
messages=[{"role": "user", "content": "What is 47 × 83, shown step by step?"}],
)
reasoning = response.choices[0].message.reasoning_content
answer = response.choices[0].message.contentFor teams where o1-level reasoning quality isn't strictly required, R1 is worth testing first — it's frequently "good enough" at a much lower price point.
Frequently Asked Questions
Can I see the reasoning tokens my request generated, or only the count?
For OpenAI's o-series, only the count is exposed (reasoning_tokens in the usage object) — the actual reasoning content is not returned. DeepSeek R1 does return the reasoning trace itself via reasoning_content.
Do reasoning models support streaming?
Support varies by provider and model — check the specific model's documentation for streaming support before building a UI that assumes it.
Is a reasoning model ever cheaper than a standard model for the same task?
Rarely on a per-request basis, but potentially on a per-outcome basis — if a standard model requires multiple retries or produces subtly wrong answers on a hard task, one correct reasoning-model response can be cheaper than several failed cheap-model attempts plus the cost of catching the error downstream.
Get started
- Read the reasoning tokens docs for the full API reference.
- Create a free account and test o3's
reasoning_effortlevels against your own task. - Related: DeepSeek API in India: Access, Pricing in ₹, and Setup.
Related Articles
Continue in Docs
Need implementation commands and endpoint details? Go to quickstart or API reference.