Migrating: Opus 5 to Opus 5.5
What changes
| From | To | |
|---|---|---|
| Model | Opus 5 | Opus 5.5 |
| Input / MTok | $5 | $4 |
| Output / MTok | $25 | $20 |
| Cache read / MTok | $0.50 | $0.20 |
| Min cacheable prefix | 512 | 512 |
| Context window | 1M | 1M |
| Effort levels | low, medium, high, xhigh, max | low, medium, high, xhigh, max |
| Effort default | high | medium |
| Thinking | On by default — can be disabled | Always on — cannot be disabled |
| Forced tool_choice | accepted | 400 |
A price cut with four ways to fail
On the rate card this is the easiest migration in the lineup: Opus 5.5 is cheaper per token, reads its cache at a deeper discount, and keeps Opus 5's context window, output cap, tokenizer and cache minimum. Token counts don't move. What moves is the request surface, in four places that each return a 400 rather than degrading quietly — which makes them cheap to find if you test before you switch traffic, and expensive if you don't.
The four, in the order they usually surface
Disabled thinking. Opus 5 accepted thinking: disabled at effort high or below; Opus 5.5
rejects it at every level. Remove the field and use a low effort level for the routes that wanted
speed. Forced tool choice. any and tool are rejected on messages, batches and token counting
alike; switch to auto with the tool named in the prompt and strict on its schema, and check the
call actually happened. Computer use. On the Claude API and Google Cloud only the computer toolset
is accepted. History edits. Thinking blocks are bound to their conversation; for accounts created
on or after the enforcement date, replaying one after editing earlier turns is a 400.
The change that doesn't error
Effort defaults to medium here, one level below Opus 5. A request that never set effort now does
less thinking than it did, which can read as a quality regression with no failing request anywhere.
Set effort explicitly on every route before comparing outputs, then run the sweep — Anthropic reports
that medium on this model tends to beat high on Opus 5, but your evaluation set decides.
Related
See what actually changed from Opus 5 to Opus 5.5 for the behaviour changes, and thinking.type.disabled is not supported on Opus 5.5 for the most common first failure.
Verified 2026-09-30 against claude-api skill — shared/models.md, model-migration.md + SKILL.md model table and Anthropic's pricing and model-deprecation pages (canonical: https://platform.claude.com/docs/en/about-claude/models/overview, https://platform.claude.com/docs/en/about-claude/pricing, https://platform.claude.com/docs/en/about-claude/model-deprecations).