Claude Opus 5.5 Rejects the Forced Tool Calls Opus 5 Accepted

Claude Opus 5.5 cuts per-token prices 20% and cache reads 60%, but forced tool_choice and disabled thinking now return HTTP 400, the default effort drops to medium, and the 40% saving compares different effort levels.

By Rajesh Beri·September 22, 2026·11 min read
Share:
A developer's desk at night with a monitor showing a wall of red HTTP 400 error lines in a terminal, beside a printed invoice with a price circled and a coffee mug, lit only by the screen.

Illustration generated using AI

Claude Opus 5.5 is cheaper than Opus 5, but you can't just change the model ID. Anthropic cut the price to $4/$20 per million input/output tokens, down from $5/$25, and cache reads fell 60%. The same release makes any request that forces a tool call or turns thinking off fail with a 400 error. It also lowers the default effort from high to medium. And the 40% saving in the launch post compares each model at its own default setting, not at the same setting. If your pipelines use forced tool calls to get structured JSON, have your team rewrite them and run your own cost test before you point the model alias at claude-opus-5-5.

The cheaper price is real. The 40% figure depends on how you run the model, and you need to check it against your own workloads.


What Actually Changed on September 22?

Anthropic released Opus 5.5 on September 22, 2026. It's available on the Claude API, Amazon Bedrock, Claude Platform on AWS, Google Cloud and Microsoft Foundry, under the ID claude-opus-5-5 or the platform's own version of that ID. The context window stays at 1M tokens with 128k max output.

Here's how the prices moved, from Anthropic's pricing page:

Per million tokens Opus 5 Opus 5.5 Change
Base input $5.00 $4.00 -20%
5-minute cache write $6.25 $5.00 -20%
1-hour cache write $10.00 $8.00 -20%
Cache read $0.50 $0.20 -60%
Output $25.00 $20.00 -20%
Batch input / output $2.50 / $12.50 $2.00 / $10.00 -20%

The cache-read cut matters most. On Opus 5.5 a cache hit costs 0.05x the base input price instead of the usual 0.1x. Anthropic's launch post says cache reads "make up the majority of agentic and coding work costs." If your agents re-read a long, stable prefix on every turn, you'll save more than the headline 20%.

Opus 5.5 is also cheaper than the top of Anthropic's lineup. VentureBeat puts Claude Fable 5.1 at $10/$50, and Anthropic's own benchmark table shows Opus 5.5 ahead of Fable 5.1 on Terminal-Bench 4.0, 66.4% to 55.8%. If you route your hardest work to Fable, re-test that split before you renew. Our analysis of Fable 5.1's cache pricing against Opus 5 has a framework you can reuse.

Which Opus 5 Calls Now Return a 400?

Four kinds of request that work on Opus 5 now fail on Opus 5.5. Anthropic lists them as breaking changes:

  1. Forced tool use. tool_choice set to {"type": "any"} or {"type": "tool", "name": ...} returns tool_choice: type "tool" and "any" are not supported for this model. The token-counting endpoint rejects it too, so a cost estimator that sends the same payload fails before the real call does.
  2. Disabled or manually budgeted thinking. thinking: {"type": "disabled"} and thinking: {"type": "enabled", "budget_tokens": N} both return a 400. Thinking is always on, and effort is now the only setting that controls it.
  3. Thinking blocks are tied to the model and the conversation. On accounts created on or after August 31, 2026, sending back a thinking block after you've edited the system prompt, the tools or an earlier message returns a 400 by default.
  4. The older computer-use tool. computer_20251124 is rejected on the Claude API and Google Cloud, which accept only the computer_toolset_20260801 toolset. It still works on Bedrock. If you run the same Claude Computer Use agent on more than one cloud, the fix is different on each.

The first change will affect the most enterprise code. Forced tool use means the request requires the model to call a tool instead of answering in text. For years, teams have used it to get reliable JSON out of invoices, contracts, claims forms and support tickets. Anthropic now recommends tool_choice: auto with strict: true, or moving the schema into structured outputs, and saying in the prompt when the tool should be used. That's a real code change, and it needs a regression test. With auto, the model decides whether to call the tool, so you have to measure how often it answers in text instead.

There's one small gain. The tool-use system prompt that any/tool added on Opus 5 was 406 tokens, against 286 for auto. Moving to auto saves 120 input tokens per call.

Which Change Fails Without an Error?

The change most likely to reach your users doesn't return an error at all. On Opus 5.5, the short notes the model writes between tool calls come back as thinking blocks instead of text blocks, and they're empty at the default display: "omitted". If your product streams those notes as progress updates, it goes quiet between tool calls. Every request still succeeds, so dashboards and alerts won't catch it.

To fix it, set thinking.display to "updates" (beta) or "summarized", then render the non-empty thinking blocks ahead of the tool_use block they precede. Also check any code that assumes the first content block is text. Anthropic's guidance is to pick content blocks by their type, not their position.

The safety classifiers change too. Opus 5.5 adds a biology classifier and a reasoning_extraction refusal category for prompts that push the model to write out its internal reasoning in the answer. Server-side fallback won't retry that category. If your Opus 5 prompts told the model to "show your reasoning step by step" in the output (a common workaround when thinking was off), remove that instruction.

What Does the 40% Saving Actually Compare?

The 40% figure compares each model at its own default: Opus 5.5 at medium against Opus 5 at high. Anthropic's post says "at default settings it will cost 40% less than Opus 5 on typical workloads." Opus 5.5 defaults to medium, and Opus 5 defaulted to high. Digital Applied's teardown breaks it down: the price cut accounts for about 20 points, and the rest comes from using fewer tokens at the lower default.

Effort is the API setting that controls how many tokens the model spends thinking, calling tools and writing its answer. Anthropic says Opus 5.5 at medium matches or beats Opus 5 at high on coding and knowledge-work evaluations. If that holds on your workload, the 40% saving is real. But the same guide warns that at a given effort level, Opus 5.5 tends to think more per turn than Opus 5, most of all at xhigh and max. If you pin high, you get the 20% price cut and pay for the extra thinking, so the net saving is smaller.

Here's an illustrative agent turn. These token counts are assumptions, not measurements: 900k cached input tokens, 100k uncached, 50k output.

Scenario Cache reads Uncached input Output Total
Opus 5 at high $0.45 $0.50 $1.25 $2.20
Opus 5.5, same tokens $0.18 $0.40 $1.00 $1.58
Opus 5.5, output +30% $0.18 $0.40 $1.30 $1.88
Opus 5.5 break-even $0.18 $0.40 $1.62 $2.20

With this mix, Opus 5.5 saves 28% at equal token counts because so much of the input is cached. The saving is gone if Opus 5.5 produces about 62% more output tokens (81k instead of 50k). That's unlikely at medium, but you can't rule it out at xhigh on long agent runs. This is the same pattern we saw when Grok 4.7 held its price and could still double cost per task: the per-token rate is just one input. What your finance team needs is cost per completed task.

Two things make the sweep harder. Changing the top-level effort value between requests invalidates the prompt cache. The per-message effort beta keeps the cache, so use that if you want to lower effort for routine turns inside a long session. And Anthropic's headline benchmarks were run at max effort, not the default. The quality claims and the cost claim come from different settings.

Where Did Opus 5.5 Go Backwards?

Opus 5.5 isn't better everywhere. Vals AI's independent leaderboard puts it below Opus 5 on MedCode (49.80%, #15 of 95) and SAGE (45.83%, #33 of 83). It scores 3.75% on Harvey's Legal Agent Benchmark, #31 of 64.

Here's the other side, stated fairly. Anthropic reports large gains on agentic coding: Terminal-Bench 4.0 rose from 52.3% to 66.4%, and OSWorld 2.0 from 74.0% to 81.8%. If your main Opus workload is coding agents, the upgrade probably pays off. If it's medical coding, legal research or retrieval-heavy professional work, don't assume a newer version number means a better model. Run your own evaluations, with enough cases that the difference means something. Only 3 of 36 model gaps survived a proper confidence interval in a study we covered this month.

Cross-vendor comparisons are just as loose. VentureBeat lists GPT-6 Sol at $2/$10, half of Opus 5.5's price, and says there's "no clean public same-harness comparison" between the two.

Will Your Framework Break Before Your Code Does?

Probably, and it already has for LangChain. On September 23, a GitHub issue reported that ChatAnthropic in langchain-anthropic 1.7.3 still sends forced tool choices and disabled-thinking payloads to Opus 5.5. It names bind_tools() with a forced choice, create_agent() with structured-output tools, and thinking={"type": "disabled"} as triggers, and says the result is "400 response for otherwise supported public LangChain usage." When we checked, no fix had been published.

So your team can avoid tool_choice="any" in its own code and still send it through a helper for structured output. Check every place that builds requests: SDK wrappers, agent frameworks such as LangGraph, gateways such as LiteLLM, and any routing layer. A router that fails over to another model can also lose Opus 5.5's reasoning. On the Claude API, only Fable 5.1 and Mythos 5.1 can read Opus 5.5 thinking blocks. A fallback to any other model runs the rest of the conversation without them.

If you use Claude Code, Anthropic ships a /claude-api migrate skill that swaps model IDs, changes breaking parameters and calibrates effort, then gives you a checklist to verify by hand. It saves time on the edits, but it doesn't replace your evaluations.


What Should You Do Before Re-Pointing the Alias?

Don't change the alias yet. Opus 5 is still on Anthropic's price list with no retirement date shown, so you have time to test first.

This Week:

  1. Grep for the four breaking patterns. Search every repo and config for "type": "any", "type": "tool", "disabled", budget_tokens and computer_20251124. Include request builders in gateways and framework wrappers, not just direct SDK calls.
  2. Pin your framework versions. If you use langchain-anthropic, keep Opus 5.5 off any path that goes through bind_tools() or create_agent() structured output until issue #40777 is fixed.
  3. Set effort explicitly on every Opus call, including Opus 5 calls. Omitting it gives you high on Opus 5 and medium on Opus 5.5, and your cost baseline gets mixed up.

This Month:

  1. Rewrite forced-tool extraction as auto + strict: true, then measure how often the model answers in text instead of calling the tool across a few hundred real documents. Anything above zero needs a retry path.
  2. Run an effort sweep at low, medium and high on your own task set. Record cost per completed task, not cost per token. Put the results next to your Opus 5 baseline before anyone quotes 40% in a budget meeting.
  3. Update any interface that streams agent progress to read progress-update thinking blocks, and add a test that fails if a long tool loop produces no visible text.

Before Renewal:

  1. Re-model your Anthropic commit using the new cache-read price. If most of your spend is cache reads, the saving is well above 20%. If it's mostly uncached output at a pinned high effort, it's closer to 20% or less. Our cost-per-million-tokens comparison walks through that calculation.
  2. Re-check any Fable 5.1 routing split. Opus 5.5 now beats Fable 5.1 on several agentic benchmarks for 60% less per token, so traffic you send to Fable may cost more than it needs to.

The Bottom Line

Anthropic moved thinking from optional to always-on across two generations of Opus. Opus 5 allowed thinking to be disabled only at high effort or below, and Opus 5.5 doesn't allow it at all. Forced tool use is going the same way. The trend is clear: the model decides how much to think and whether to call a tool, and your controls are an effort setting and a schema.

That's a reasonable design, and the price cut helps pay for the migration. But a request that returns a 400 isn't cheaper, and a 40% saving you haven't measured on your own workload isn't a number to put in a budget.

Measure it on your workload before you move production traffic.

Continue Reading

Share:

Frequently Asked Questions

Does Claude Opus 5.5 support tool_choice any or forced tool use?

No. On Opus 5.5, tool_choice set to {"type": "any"} or {"type": "tool"} returns a 400 invalid_request_error, including on the token counting endpoint. Anthropic recommends tool_choice auto with strict tool use, or structured outputs, plus a prompt that says when the tool applies.

Can you disable thinking on Claude Opus 5.5?

No. Thinking is always on. Requests with thinking type disabled, or type enabled with a manual budget_tokens, return a 400 error. Use the effort parameter instead; Anthropic suggests starting at low where you previously disabled thinking.

What is the default effort on Claude Opus 5.5?

Medium. Claude Opus 5 defaulted to high, so a request that omits effort runs one level lower on Opus 5.5. Anthropic advises setting effort explicitly and re-running an effort sweep rather than carrying settings over.

Is Claude Opus 5.5 really 40% cheaper than Opus 5?

Anthropic says it costs 40% less on typical workloads at default settings, which means Opus 5.5 at medium effort versus Opus 5 at high. The per-token price cut is 20% (60% on cache reads); the rest depends on using fewer tokens. Teams that pin high effort should measure cost per task themselves.

How much does Claude Opus 5.5 cost?

As of September 2026, $4 per million input tokens and $20 per million output tokens, with cache reads at $0.20, 5-minute cache writes at $5, 1-hour cache writes at $8, and batch at $2/$10, per Anthropic's pricing page.

Newsletter

Stay Ahead of the Curve

Weekly enterprise AI insights for technology leaders. No spam, no vendor pitches—unsubscribe anytime.

Subscribe

Latest Articles

View All →