Claude Opus 5.5 Is Cheaper per Token—but Agents Need a Contract Migration

Anthropic released Claude Opus 5.5 on September 22, 2026, with lower standard token prices than Opus 5. The safe interpretation is not “same endpoint, smaller bill.” Opus 5.5 changes the Messages API contract around thinking, tool selection, response blocks, conversation state, computer use, progress updates, and refusals.

Some incompatibilities fail immediately with HTTP 400. Others return HTTP 200 while changing reasoning depth, hiding progress narration, dropping prior thinking during a model switch, or allowing a fallback model to complete the request. Transport success therefore does not prove behavioral equivalence.

Anthropic identity image accompanying its Claude Opus 5.5 announcement
Cover: Anthropic identity image from the official Opus 5.5 announcement. The technical diagrams below are original Tech Trend Insight illustrations.

A defensible migration has two gates:

  1. The request, response, transcript, streaming, tool-loop, refusal, fallback, and serving-route contracts still hold.
  2. The cost of producing an accepted result improves without weakening the acceptance standard.

Technical review: September 26, 2026. This article distinguishes documented API behavior, attributed external evaluations, and proposed validation steps.

Confirmed release specification

The Claude Platform model page confirms the following:

  • Release date: September 22, 2026
  • Claude API model ID: claude-opus-5-5
  • Amazon Bedrock model ID: anthropic.claude-opus-5-5
  • Google Cloud, Microsoft Foundry, and Claude Platform on AWS ID: claude-opus-5-5
  • Context window: 1 million tokens
  • Standard maximum output: 128,000 tokens
  • Message Batches beta maximum: 300,000 output tokens with the documented beta header
  • Thinking: adaptive and always on
  • Effort levels: low, medium, high, xhigh, and max
  • Default effort: medium
  • Platforms: Claude API, Amazon Bedrock, Claude Platform on AWS, Google Cloud, and Microsoft Foundry

The standard 128,000-token output limit should not be conflated with the separate 300,000-token Message Batches beta.

What changes when an Opus 5 agent moves to Opus 5.5

Anthropic’s migration guide is specifically for Messages API integrations. It says Claude Managed Agents require only the model-name update, so the failures below should not be projected indiscriminately onto that managed product.

Contract surfaceOpus 5Opus 5.5What to detect
Thinking controlThinking may be disabled; Opus 5 accepts that setting at supported effort levelsDisabled thinking and manual budget_tokens are rejectedHTTP 400
Tool selectiontool_choice may force any tool or a named toolOnly auto and none are supportedHTTP 400
Preserved thinkingSome applications rebuild or edit earlier contextThinking blocks are bound to the model and conversation prefixHTTP 400 or dropped blocks, depending on account and settings
Computer usecomputer_20251124 can be usedRejected on the Claude API and Google Cloud; still supported on Amazon BedrockRoute-dependent HTTP 400
Progress renderingInter-tool narration arrives as textNarration arrives in thinking blocks whose display text is omitted by defaultHTTP 200, but progress may disappear
Default efforthighmediumHTTP 200 with different depth, latency, and token use
Classifier refusalSuccessful response can contain a refusalAdditional refusal categories and optional fallback behavior applyHTTP 200 with stop_reason: "refusal"

This split between hard errors and successful-but-different responses is the core migration risk. A canary that checks only status codes can detect rejected payloads while missing a lower reasoning setting, an apparently stalled interface, a model handoff, or discarded reasoning state.

A successful request has two failure surfacesCheck payload acceptance first, then verify what the agent actually did.TECH TREND INSIGHT / ENGINEERING ANALYSISA successful request has two failure surfacesCheck payload acceptance first, then verify what the agent actually did.Messages API requestHTTP 400 · rejectedDisabled / manual thinkingForced tool selectionInvalid replayed thinking blocksLegacy computer tool on some routesHTTP 200 · inspect the resultDefault effort may have changedProgress text may be omittedRefusal or fallback may occurModel switch may lose thinkingConceptual request map. Route and account conditions are explained in the text.
Figure 1. Payload rejection and successful-but-different responses require different checks. See Anthropic’s linked migration guide for the route-specific exceptions. Original diagram: Tech Trend Insight.

Always-on thinking changes request and response handling

Disabled thinking and manual budgets now fail

For Opus 5.5, applications must either omit the thinking field or send adaptive thinking explicitly. These two earlier patterns are rejected:

  • thinking: {"type": "disabled"}
  • thinking: {"type": "enabled", "budget_tokens": N}

Thinking depth is controlled through output_config.effort. The supported values are low, medium, high, xhigh, and max; the default is medium.

That default matters because Opus 5 defaults to high. An application that leaves effort unspecified therefore changes configuration even if every request continues to succeed. Anthropic also says Opus 5.5 tends to think more per turn than Opus 5 at the same named effort level, particularly at xhigh and max. Effort should consequently be calibrated against the target workload rather than copied from an older model.

max_tokens includes hidden thinking

The migration guide states that max_tokens is a combined ceiling for thinking and visible response text. Thinking tokens are billed as output tokens even when their text is not displayed.

A limit sized around a model or configuration that did not use thinking may therefore truncate visible output earlier than expected. Code should also stop assuming that content[0] is a text block: an Opus 5.5 response can begin with one or more thinking blocks. Consumers should select blocks by their type.

Check inherited sampling and prefill settings

Older client wrappers may still attach sampling overrides or an assistant prefill. The current migration guide rejects non-default temperature, top_p, or top_k and rejects a prefilled final assistant turn. Inspect the payload after middleware has transformed it; a clean call site does not prove that the transmitted request is compatible.

Forced tool choice is gone

Opus 5.5 rejects these tool_choice forms:

  • {"type": "any"}
  • {"type": "tool", "name": "..."}

The supported choices are auto and none. Anthropic recommends auto with strict tool schemas or structured outputs where schema-valid arguments are required.

Strict validation addresses the shape of a tool call if one occurs. It does not recreate the old API-level instruction that the next response must call a particular named tool. Workflows that require a tool invocation should verify the invocation as an outcome rather than infer it from a valid request.

Conversation history is now signed application state

Thinking blocks should no longer be treated as disposable response decoration.

In a tool-use loop, Anthropic requires the preceding assistant response—including thinking blocks—to be sent back complete and unmodified with the tool result. A serializer that drops empty blocks, changes their order, strips unfamiliar types, or reconstructs the assistant turn can invalidate the conversation.

The broader preserved-thinking documentation also binds a thinking block to the conversation prefix that produced it. That prefix includes the system prompt, tools, and earlier messages. For accounts created on or after August 31, 2026 at 00:00 UTC, the prefix check is enforced by default. A mismatch normally returns HTTP 400, although applications can opt into dropping affected blocks instead.

This expands the migration surface beyond the API client. Transcript databases, queue workers, gateways, retry handlers, redaction layers, history compaction, dynamic tool registries, and session-resume code can all alter the prefix.

Model switches can succeed after discarding reasoning

Compatibility is directional:

  • Opus 5.5 can read thinking blocks from Opus 5 and earlier Opus, Sonnet, and Haiku models.
  • It cannot read thinking blocks from Fable or Mythos models.
  • On the Claude API, Fable 5.1 and Mythos 5.1 can read Opus 5.5 thinking blocks.
  • Other models cannot read Opus 5.5 thinking blocks.

When the target model cannot read a block, the API can drop it before inference without failing the request. The request still succeeds, but the next model operates without that earlier reasoning. A successful fallback is therefore not evidence of equivalent reasoning continuity.

Preserve the assistant turn as an ordered recordRendering less text must not change the transcript sent back to the API.TECH TREND INSIGHT / ENGINEERING ANALYSISPreserve the assistant turn as an ordered recordRendering less text must not change the transcript sent back to the API.APIApplicationTool runnerassistant content[]thinking + signaturetext / tool_useKeep order and all blocksexecute tool_usereturn tool_resultreplay full turn + resultStorage, queues and retries must preserve the same conversation prefix.Ordinary tool loop. For mid-stream fallback, apply the documented continuation rules.
Figure 2. The application stores and replays the complete assistant message, including signed thinking blocks, before appending the tool result. Original diagram: Tech Trend Insight.

Progress can disappear while tools continue working

Opus 5 returns short narration between tool calls as ordinary text. Opus 5.5 returns that narration in progress-update thinking blocks.

The default thinking.display value is "omitted". Under that setting, the blocks retain their signatures but expose an empty thinking field. An agent can continue invoking tools while a user interface that previously rendered text blocks appears silent.

Anthropic documents two opt-in display modes:

  • "summarized" returns readable summarized thinking, including progress information.
  • "updates" is a beta option that returns progress updates while keeping other reasoning hidden. It requires the thinking-display-updates-2026-08-18 beta header.

This is a product contract, not merely a parser detail. Migration testing should verify update ordering, time to first visible progress, accessibility behavior, and whether silent tool activity is interpreted as a stalled agent.

Computer-use compatibility is route-specific

On the Claude API and Google Cloud, Opus 5.5 rejects the earlier computer_20251124 tool and requires computer_toolset_20260801. Anthropic’s migration guide says the earlier tool continues to work on Amazon Bedrock.

The retrieved primary documentation does not establish equivalent behavior for every computer-use feature on Microsoft Foundry or Claude Platform on AWS. Teams using those routes should verify the current compatibility documentation and execute route-specific contract tests rather than extrapolating from the Claude API, Google Cloud, or Bedrock.

An HTTP 200 response may come from a refusal or a fallback

Anthropic’s refusal documentation defines a classifier refusal as a successful HTTP 200 response with:

  • stop_reason: "refusal"
  • a stop_details object whose category may identify the policy area

A refusal may arrive before output or during a stream. Applications should branch on stop_reason or stop_details.type, not on HTTP status or whether the content array is empty.

Server-side fallback is a beta feature of the Claude API. It is not available on the Message Batches API, Amazon Bedrock, Google Cloud, or Microsoft Foundry; Anthropic points those platforms to client-side fallback instead. When server-side fallback runs, the response identifies the model that actually answered and records the attempts in usage.iterations.

Fallback continuation is a special replay case

The ordinary tool loop in Figure 2 preserves the assistant turn. A streamed response containing a server-side fallback boundary needs the documented continuation rules: retain the boundary and text, keep blocks after the final boundary, and remove earlier thinking and client-side tool-use blocks as directed. Retain an earlier server-tool call only with its matching result. Treat this as an explicit fallback branch in the serializer, not a general reason to filter ordinary thinking blocks.

Operational monitoring should therefore record at least:

  • requested model
  • serving model
  • refusal category
  • whether fallback ran
  • token usage for each attempt
  • final acceptance result

Without those fields, availability can remain green even when the primary model declines and another model finishes the turn.

The list-price reduction is real—but it is not a 40% rate cut

The model pages for Opus 5.5 and Opus 5 publish these standard U.S.-dollar prices per million tokens:

Standard token category Opus 5 Opus 5.5 Recalculated change
Fresh input $5.00 $4.00 20% lower
Output, including thinking $25.00 $20.00 20% lower
Five-minute cache write $6.25 $5.00 20% lower
One-hour cache write $10.00 $8.00 20% lower
Cache read $0.50 $0.20 60% lower

These are standard rates, not a universal invoice forecast. Anthropic’s pricing documentation separately documents:

  • a 50% Batch API discount on input and output;
  • a 1.1× multiplier for supported U.S.-only inference configurations;
  • a 10% premium for relevant regional or multi-region partner-cloud endpoints;
  • marketplace billing through consumption units on Claude Platform on AWS and Microsoft Foundry;
  • provider-specific Bedrock and Google Cloud billing;
  • negotiated enterprise discounts;
  • additional charges for some server-side tools.

Anthropic’s launch announcement also lists Opus 5.5 fast mode at $8 per million input tokens and $40 per million output tokens. Fast mode is a Claude API research preview and should not be mixed into a standard-rate comparison.

Attributed vendor claim

In its September 22 announcement, Anthropic says its tests show that Opus 5.5 costs 40% less than Opus 5 on typical workloads at default settings and generates output more than 30% faster.

Those figures are Anthropic’s workload-level results, not the rate-card reductions. The 40% claim combines pricing with workload-dependent token consumption and compares each model at its default setting—medium for Opus 5.5 and high for Opus 5. It should not be presented as a guaranteed saving for a fixed prompt, effort level, tool loop, or acceptance standard.

A more useful production measure is accepted-task cost:

model tokens + cache operations + tool charges + retries + fallback attempts + reviewer correction required to produce an output that passes an unchanged rubric

That metric is an editorial inference from the documented billing and migration behavior, not an Anthropic metric.

Lower rates: 20% for input, 60% for cache readsNormalized list prices · Opus 5 = 100 in each categoryTECH TREND INSIGHT / ENGINEERING ANALYSISLower rates: 20% for input, 60% for cache readsNormalized list prices · Opus 5 = 100 in each categoryOpus 5Opus 5.5Fresh input$5 → $4 / 1M tokens10080Output + thinking$25 → $20 / 1M tokens10080Cache read$0.50 → $0.20 / 1M tokens10040The vendor’s 40% workload saving is a separate claim, not a 40% rate cut.Standard USD rates from the cited model pages. Bars compare rates, not task performance.
Figure 3. List-price reductions calculated from the cited Opus 5 and Opus 5.5 model pages. These bars do not estimate savings on a production workload. Original diagram: Tech Trend Insight.

Independent tests show why configuration matters

Artificial Analysis: maximum effort can consume the price advantage

Artificial Analysis evaluated all five effort levels with Anthropic’s default fallback enabled. On September 22, 2026, it reported an Intelligence Index score of 58 at maximum effort.

At that setting, Opus 5.5 used approximately 119,000 output tokens per Intelligence Index task, versus approximately 73,000 for Opus 5 at maximum effort. Artificial Analysis reported the two as roughly level on cost per task despite Opus 5.5’s lower token prices.

Output tokens alone do not reproduce the full invoice: input use, cache behavior and fallback attempts also matter. This result applies to Artificial Analysis’s index, harness, maximum-effort configuration, and fallback settings. It supports a narrow conclusion: higher output volume can offset lower unit prices. It does not establish equivalent cost across production agents generally.

Sonar: less Java output, but a different defect profile

Sonar’s pre-release Java evaluation used Opus 5.5 at high effort and recorded 4,444 tasks. Its functional pass rate covers the 544 HumanEval and MBPP tasks with executable tests; ComplexCodeEval contributed to code analysis but not to the pass-rate calculation.

Sonar reported:

  • 87.68% pass rate for Opus 5.5 versus 88.6% for Opus 5;
  • 664,890 generated lines versus 916,813, a 27.5% reduction;
  • 40% fewer output tokens;
  • 12% higher bug density, from 576 to 644 findings per million lines;
  • 44% higher concurrency/threading finding density, from 205 to 295 per million lines;
  • fewer absolute bugs and fewer total findings, aided by the lower volume of generated code.

These findings are bounded to Sonar’s Java prompts, analyzers, task set, model settings, and pre-release build. They justify testing concurrency-heavy code in an organization’s own stack; they do not predict a 44% change in other languages or repositories.

METR: a narrow AI R&D assessment, not a general product review

METR’s predeployment assessment used API access over 10 business days and five tasks focused on AI research and development capabilities.

METR concluded that Opus 5.5 was likely a modest, incremental improvement over Fable 5.1 rather than a discontinuous jump, and was unlikely to fully automate AI R&D. The report explicitly does not assess general coding quality, production cost, or alignment properties.

Its independence disclosures are material: the work was unpaid; METR drafted the initial summary; Anthropic could review and edit it; and METR approved the final text. A separate METR team supplied conclusions from a preliminary internal assessment without sharing the supporting evidence or reasoning with the team that wrote the public summary.

Proposed validation before migration

Tech Trend Insight did not perform these tests. They are proposed checks for teams evaluating their own integration.

  1. Replay representative tasks at fixed effort levels. Compare Opus 5 and Opus 5.5 at explicitly set low, medium, and high effort. Keep prompts, tools, timeouts, and the acceptance rubric unchanged.

  2. Test transcript preservation end to end. Pass fixtures containing thinking, text, tool_use, and tool_result blocks through databases, queues, serializers, proxies, redaction, compaction, retries, and session restore. Assert that assistant blocks return unchanged and in order.

  3. Verify required tool behavior. For workflows that previously forced a tool, assert that the expected call actually occurs. Schema-valid arguments are not sufficient evidence that the workflow still invokes the tool.

  4. Exercise progress rendering. Compare omitted, summarized, and—where appropriate—the beta updates display modes. Check ordering, first visible update, screen-reader output, and perceived stalls.

  5. Test each contracted serving route. Include disabled thinking, manual budgets, forced tool choice, the legacy computer-use tool, preserved-thinking mismatches, and configured fallback behavior. Do not use one route’s result as proof for another.

  6. Measure accepted-task economics. Record acceptance rate, total input and output tokens, cache writes and reads, tool charges, retries, fallbacks, latency, and reviewer correction. Preserve the same quality threshold across models.

  7. Target workload-specific defects. For generated code, run the organization’s own compiler, test suite, static analysis, security analysis, and concurrency or race-detection tooling.

Migration decision rule

Approve the production change only if both statements are true:

  • Contract gate: request validation, content-block parsing, transcript replay, tool loops, streaming progress, refusals, fallbacks, and route-specific payloads pass.
  • Outcome gate: accepted-task cost improves at an unchanged acceptance threshold while latency and visible progress remain within service requirements.

If either gate fails, keep Opus 5 on the affected workload while correcting the integration or recalibrating effort. The lower rate card makes Opus 5.5 a strong migration candidate; it does not make a blind model-ID swap a safe release procedure.

Release only after both gates passKeep the acceptance rubric fixed while comparing the migration.TECH TREND INSIGHT / ENGINEERING ANALYSISRelease only after both gates passKeep the acceptance rubric fixed while comparing the migration.01 Contract gateValid requests and block parsingFaithful transcript replayTools, refusals and progress02 Outcome gateAccepted-task cost improvesQuality threshold is unchangedLatency meets the service targetANDPilot expansionProposed editorial release criteria; no Tech Trend Insight production trial is claimed.
Figure 4. A proposed migration decision joins compatibility checks with accepted-task economics. Original diagram: Tech Trend Insight.

Official sources and independent evaluations

Popular posts from this blog

Meta’s VideoJAM Explained: Why Motion Coherence Matters in AI Video

Grok 3’s 2025 Release: What xAI Announced, What Arrived, and What Changed

How to Process Apple Mail in Bulk with Claude: A Safer, Review-First Workflow