Claude Opus 5.5 has been out for a month, and it's still one of the most-discussed models on X this week. If you're still on Opus 5, or you're deciding whether Opus is worth it for your project, this is the short version: what it costs, which settings matter, and what breaks when you switch.
All figures are from Anthropic's docs and were checked on Oct 22, 2026. Prices are in USD.
The spec sheet
| Claude Opus 5.5 | |
|---|---|
| Model ID | claude-opus-5-5 |
| Released | Sept 22, 2026 |
| Context window | 1M tokens |
| Max output | 128K (300K on the Batch API with a beta header) |
| Input / output | Text and images in, text out |
| Thinking | Adaptive, always on |
| Default effort | medium |
| Knowledge cutoff | June 2026 |
| Price | $4 input / $20 output per million tokens |
It's available on the Claude API, Amazon Bedrock, Google Cloud, Microsoft Foundry and Claude Platform on AWS.
What a job actually costs
Token prices are hard to picture, so here's some plain arithmetic using the list prices above.
One big coding turn: you send 200,000 tokens of code and context and get 10,000 tokens back.
- Input: 200,000 × $4 / 1M = $0.80
- Output: 10,000 × $20 / 1M = $0.20
- Total: $1.00
The same turn with the repo cached: if 180,000 of those tokens are a cached prefix (cache reads cost $0.20 per million):
- Cached input: 180,000 × $0.20 / 1M = $0.036
- Fresh input: 20,000 × $4 / 1M = $0.08
- Output: $0.20
- Total: about $0.32, plus the one-time cache write ($5 per million for a 5-minute cache, $8 for 1 hour)
Batch: the same uncached job through the Batch API is half price, so $0.50.
Effort changes the bill too, because the model does more work at higher levels. Anthropic says Opus 5.5 tends to think more per turn than Opus 5 at the same effort level, especially at xhigh and max.
The code review skill makes a good test job when you compare effort levels.
In Claude Code, you don't have to run everything on Opus. A subagent can set its own model, so routine jobs like running tests can go to a cheaper one; the Claude Code subagents starter does this for its test runner.
Pick an effort level on purpose
Thinking can't be turned off on Opus 5.5. The effort parameter is the knob, and its default dropped from high (Opus 5) to medium.
What to do:
- Set effort explicitly in every request so a future default change can't surprise you.
- Run a small sweep. Take 10 real tasks, run them at
low,mediumandhigh, and compare quality against cost. Anthropic tells you to re-run your sweep rather than carry over an Opus 5 setting. - Leave room in
max_tokensfor the thinking.
The four breaking changes
If you just swap claude-opus-5 for claude-opus-5-5, these will bite.
1. Thinking can't be disabled. thinking: {"type": "disabled"} or a manual budget_tokens returns a 400 error. Omit thinking or send {"type": "adaptive"}, and use effort instead.
2. Forced tool use is gone. tool_choice of any or a specific tool returns a 400 error. Use auto, turn on strict tool use for schema-valid JSON, and tell the model in the prompt when the tool applies.
3. Thinking blocks are tied to the model and the conversation. On accounts created on or after Aug 31, 2026, replaying a thinking block after you've edited the system prompt, the tools or an earlier message returns a 400 error. The fix is to keep conversations append-only, and change instructions with mid-conversation system messages instead of edits.
4. The old computer-use tool is rejected on the Claude API and the Google-managed Google Cloud offering. Move from computer_20251124 to the computer_toolset_20260801 toolset. Bedrock still accepts the old tool.
A quiet one: text the model writes between tool calls now arrives in thinking blocks, which are empty at the default display setting. If your UI streams progress updates, it will go silent until you set thinking.display. Also, select content blocks by type, not by position.
Handle refusals
Opus 5.5 runs safety classifiers for cybersecurity and biology. A declined request comes back as HTTP 200 with stop_reason: "refusal", not an error. If your code only checks status codes, it will treat a refusal as success. Check stop_reason and set up a fallback model.
Is it the right model?
Anthropic's own lineup gives you the comparison:
| Model | Price per M tokens (in / out) | Latency |
|---|---|---|
| Claude Fable 5.1 | $10 / $50 | Slower |
| Claude Opus 5.5 | $4 / $20 | Moderate |
| Claude Sonnet 5.5 | $2 / $10 | Fast |
| Claude Haiku 5.5 | from $0.10 / $0.50 | Fastest |
All four have a 1M context window. A reasonable default: Sonnet for everyday edits, Opus for long agentic coding runs and serious code review, Haiku for high-volume classification and routing. If you're choosing a coding agent rather than a raw model, see Picking a coding agent.


