Claude Opus 5 vs Opus 4.8: What Breaks When You Switch

Last Updated: 2026-07-25 05:04:44

Four small coding and reasoning tasks, identical prompts, one run each. Both got all four right. Opus 5 spent 81, 94, 407 and 600 output tokens; Opus 4.8 spent 36, 35, 103 and 206, at the same $25 per million. That is the Claude Opus 5 vs Opus 4.8 migration: the model string is a one-line change, the bill and the behaviour are not.

The documented cause is not a capability difference. Thinking runs by default on Opus 5 and ran off by default on 4.8, so the same request now pays for reasoning it did not pay for before, and effort rather than the choice of model is the setting that moves the bill. The short version if you already run claude-opus-4-8 in production:

  • One hard API break. thinking: {"type": "disabled"} combined with effort xhigh or max returns a 400 on Opus 5. Opus 4.8 accepts that combination.
  • Price is not the variable. Both bill $5 in / $25 out per million tokens, so spend moves only with token volume.
  • Thinking is on by default, and max_tokens still caps thinking plus visible response together, so limits tuned on 4.8 can now truncate answers.
  • Your prompts carry more risk than your code. Instructions that told 4.8 to double-check its work push Opus 5 into over-verification.
  • Neither model is deprecated. Both are listed Active, so staying on 4.8 through your next release cycle is defensible.
Grouped bar chart of output tokens per task in a single run: Claude Opus 5 at 81, 94, 407 and 600 tokens against Claude Opus 4.8 at 36, 35, 103 and 206 tokens on bug fix, strict JSON, reasoning and refactor tasks

What breaks when you swap the model string

Anthropic's migration guide calls Opus 5 "a drop-in upgrade for Claude Opus 4.8 at the same pricing," and the API surface barely moves: claude-opus-5 is a fixed model ID with no date suffix, on the same scheme as claude-opus-4-8. Five items still need an audit before you flip a production route.

1. thinking: {"type": "disabled"} at effort xhigh or max returns 400. The official behaviour changes call this a breaking change from 4.8, where disabling thinking was independent of effort. Validation runs per request, so raising effort mid-conversation is rejected even if earlier turns went through. 2. max_tokens now has to cover the thinking. It stays a hard limit on total output, thinking plus response, so a job that ran thinking-off on 4.8 at max_tokens: 4096 keeps that ceiling while reasoning eats into it. Anthropic suggests starting at 64k for xhigh or max. 3. Verification instructions backfire. Opus 5 checks its own work unprompted. The prompting guide says instructions like "include a final verification step" cause over-verification, and that deleting them "reduces wasted tokens with no loss in quality." One early-access user, Allie K. Miller, hit it from the effort side: "I often default to 'high' reasoning effort... I had to switch it down to medium." 4. Skills and agent scaffolding can drift with no API error. Anthropic says Opus 5 "performs well out of the box on existing Claude Opus 4.8 prompts." One team reports otherwise: Dan Shipper of Every posted on launch day that "it breaks backward compatibility... It will often stop early or otherwise miss your instructions," and that they rebuilt their skills from scratch. One team's experience, but the reason to re-run your evals: no log line flags this. 5. Anthropic states a May 2026 knowledge cutoff for Opus 5, against January 2026 for 4.8. System prompts hardcoding "your knowledge ends January 2026, defer to retrieved context" now describe the wrong model, and date arithmetic anchored to that string shifts with it.

One trap sits behind the first item. With thinking disabled, Opus 5 can occasionally write a tool call into its visible text instead of emitting a tool_use block, or leak internal XML tags; in agentic loops that text stays in history and contaminates later turns. Anthropic's mitigation is to keep thinking on and use lower effort as the cost control.

Screenshot of the official Claude Platform Docs page What's new in Claude Opus 5, showing the Behavior changes section with headings Thinking on by default and Disabling thinking requires effort high or below

The request that returns a 400, and the two ways out

The failing combination, as a diff you can paste against your own request body:

# Rejected on claude-opus-5 with HTTP 400. Accepted on claude-opus-4-8.
  {
    "model": "claude-opus-5",
    "max_tokens": 16000,
    "thinking": { "type": "disabled" },
    "output_config": { "effort": "xhigh" }
  }

# Fix A - keep xhigh effort, let thinking run. Raise max_tokens, thinking counts against it.
  {
    "model": "claude-opus-5",
-   "max_tokens": 16000,
+   "max_tokens": 65536,
-   "thinking": { "type": "disabled" },
    "output_config": { "effort": "xhigh" }
  }

# Fix B - keep thinking off, cap effort at high or below.
  {
    "model": "claude-opus-5",
    "max_tokens": 16000,
    "thinking": { "type": "disabled" },
-   "output_config": { "effort": "xhigh" }
+   "output_config": { "effort": "high" }
  }

Pick Fix A for agentic, multi-file or tool-heavy work, where the leaked-tool-call artifact is the expensive failure. Pick Fix B for latency-sensitive endpoints and strict-format extraction, where dropping effort from xhigh to high costs you little.

What the swap buys you

Opus 5 arrived on 2026-07-24 unchanged from 4.8 on the two numbers people check first in any Claude Opus 5 vs Opus 4.8 comparison: $5/$25 and a 1M-token context window. The full Claude Opus 5 release and pricing detail covers the launch; the migration-relevant deltas are narrower.

Specs verified July 25, 2026:

Claude Opus 4.8Claude Opus 5What changes for you
API model IDclaude-opus-4-8claude-opus-5One-line edit
Price per MTok$5 / $25$5 / $25Nothing
Context1M1M, default and maximumNo tier to opt into
Effort ladderup to xhigh, default highlow to max, default highRe-run your effort sweep
Thinking defaultoff unless requestedon, adaptiveRevisit max_tokens
Disable thinkingany efforteffort high or below400 above high
Min cacheable prompt1,024 tokens512 tokensShort prompts cache now
Knowledge cutoffJan 2026May 2026Update cutoff wording

Two things change beyond the table, and only one of them is a benchmark:

  • Short prompts can now be cached. The minimum drops from 1,024 tokens to 512, so a 600-token system prefix that was uncacheable on 4.8 now bills at $0.50 per million on hits against $5 standard input. Price the write in at $6.25 per million for a 5-minute entry: the prefix has to be reused before it pays back.
  • Capability is vendor-reported only. Anthropic's announcement gives relative figures with no independent reproduction — Frontier-Bench v0.1 at "more than double" Opus 4.8 for lower cost per task, CursorBench 3.2 within 0.5% of Fable 5's peak at half the cost. The disclosed weak spots are the more useful half: cybersecurity and biology trail Mythos 5.

Our four tasks say nothing about that ceiling, because both models passed all four. On work that small the capability upgrade is invisible and the token increase is not.

The cost math: same price, so volume is the variable

Both models charge $25 per million output tokens, so on one channel at list price the Claude Opus 5 vs Opus 4.8 cost question is only ever how many tokens each emits for the same job. Across our four tasks that was 1,182 for Opus 5 against 380 for Opus 4.8 — a 3.1x ratio, about 3.0 cents against 0.95 cents.

Three limits on that number:

  • One run per model per task, on 2026-07-24. A smoke test, not a benchmark.
  • Default settings both sides: no effort value, no thinking field, no system prompt.
  • Output tokens only, because the gateway reported wildly inconsistent prompt-token counts for some model families. The absolute amounts are trivial; only the ratio scales.

The direction is not uniform either. Two of the tasks re-run through Claude Code's first-party channel instead of the gateway:

RunOpus 5Opus 4.8
Refactor, first-party429 tok220 tok
Bug fix, first-party36 tok63 tok
Bug fix, gateway (the chart above)81 tok36 tok

Opus 5 came in lower on one of those three. Anthropic points the other way at the top of the ladder, citing a legal-industry partner that averaged 26% fewer tokens at max reasoning, with no published methodology.

Both patterns can hold at once. Thinking runs by default and Opus 5's responses run longer, which inflates output where reasoning is pure overhead; on multi-file work that same reasoning can replace retry loops instead, so tokens per *completed* task may fall while tokens per call rise. Neither dataset measures that directly, so budget on your own cost per accepted task and treat effort, not the model, as the lever:

  • Turn effort down before anything else. Anthropic's guidance is that low and medium on Opus 5 beat the same settings on earlier Opus models at a fraction of the tokens; xhigh stays the recommended start for coding and agentic work.
  • Audit inherited defaults. A carried-over xhigh on a classification endpoint is the most expensive line in your bill for no quality gain.
  • Still high? Question the tier. Opus 5 against Sonnet 5 at the same budget is the cheaper branch.

When staying on Opus 4.8 is the right call

Four situations where 4.8 wins this quarter:

  • You hold a Priority Tier commitment. The migration guide states that Priority Tier is not supported on Claude Opus 5 while Opus 4.8 keeps it. If you bought reserved capacity for latency guarantees, migrating means giving that up: a procurement decision rather than an engineering one.
  • An integration must run with thinking disabled above high effort. If your evals need xhigh reasoning *and* thinking-free output, 4.8 is the only model that serves both today.
  • You have heavily tuned skills you cannot re-test this cycle. A frozen 4.8 lane beats a half-migrated Opus 5 lane running prompts written for a different model.
  • Cost pressure and a relay. Third-party OpenAI-compatible gateways discount older models heavily: AIReiter's Anthropic model list prices Opus 4.8 at $1.56/$7.76 per million tokens, roughly 69% under list, and has not added claude-opus-5 yet. Price parity stops holding across access channels, and where 4.8 already passes, the cheapest correct model wins. The best Claude model for coding breakdown compares the full lineup task by task.

Fear of imminent retirement is not on that list. Anthropic’s model deprecations page listed both as Active rather than Deprecated on July 25, 2026, meaning neither has a scheduled retirement, with tentative earliest dates of May 28, 2027 for 4.8 and July 24, 2027 for Opus 5.

A rollout order that keeps a way back

1. Freeze a 4.8 baseline first. Log output tokens, latency and pass rate on 20 to 50 real requests as a floor, more for high-variance agentic work, including ones 4.8 currently fails. Without that record, a regression looks identical to a difference. 2. Grep before you deploy. Search for "disabled" near effort, max_tokens values under 16k, and the strings "verify", "double-check" and "January 2026" in system prompts. Four searches cover the breaking change and three silent ones. 3. Run one lane, not a global flip. Route a slice of traffic to claude-opus-5 with the model ID in config rather than scattered through code, so reverting is a config change rather than a deploy. 4. Set numeric promotion gates before the lane goes live. Pass rate at or above the 4.8 baseline, schema-validity and tool-call compliance at or above it too, cost per accepted task under a ceiling you pick in advance, p95 latency inside your SLO, and a 400-error rate of zero. Miss one and the config flips back to claude-opus-4-8. 5. Log requested model and returned model separately. Opus 5's cybersecurity classifiers can route refused requests back to Opus 4.8 once you opt into server-side fallback, so a run that reads as Opus 5 in your dashboard may have been served by 4.8.

For most teams the Claude Opus 5 vs Opus 4.8 decision resolves as migrate, in that order, within one release cycle, promoting only what clears the step-4 gates against your own 4.8 baseline. Strip the carried-over verification prompts on day one, as Anthropic's own guide instructs: that is where the token increase turns into a bill.

FAQ

Is Claude Opus 5 a drop-in replacement for Opus 4.8?

Anthropic's migration guide calls it a drop-in upgrade at the same pricing, and at the API layer that holds: same context window, same 128k output ceiling, one breaking change to audit. At the prompt layer it does not. Verification instructions, effort defaults, max_tokens limits and skill definitions tuned for 4.8 all need review, and none announce themselves with an error.

Why is my Opus 5 request returning a 400 error?

Most likely you sent thinking: {"type": "disabled"} with effort xhigh or max, which Opus 5 rejects on every request. Either remove the thinking field and keep the effort level, or keep thinking disabled and drop effort to high or below. Non-default temperature, top_p or top_k values also 400 on every Claude model from 4.7 onward.

Is Claude Opus 4.8 being discontinued?

No. Anthropic's deprecation page lists claude-opus-4-8 as Active, with a tentative earliest retirement of May 28, 2027 and a policy of at least 60 days' notice for publicly released models. It also remains the fallback target for Opus 5's cyber-category refusals and keeps Priority Tier support that Opus 5 lacks.

Which Claude Opus model is the best right now?

Claude Opus 5, on Anthropic's vendor-reported numbers and on early developer reports, with agentic coding and long-horizon tasks as the clearest gains. Opus 4.8 stays the better pick for Priority Tier workloads, thinking-disabled integrations that need effort above high, and prompt stacks you cannot re-baseline yet.

How do I switch to Opus 5 in Claude Code and the Claude apps?

Opus 5 is the new default on Claude Max and the strongest model on Claude Pro, and it is selectable in Claude Code, Claude Cowork, claude.ai, Amazon Bedrock as anthropic.claude-opus-5, Google Cloud and Microsoft Foundry.

Default effort in Claude Code is high, and reasoning depth is now set through effort rather than a manual extended-thinking toggle. Opus 4.8 stays selectable on those surfaces, which is how you roll back without touching API code.

Does Claude Opus 5 cost more than Opus 4.8?

Not per token: both are $5 in / $25 out per million, $2.50/$12.50 on the Batch API, and $0.50 per million on cache hits. Per task, our single-run test had Opus 5 emitting roughly 3x the output tokens, so identical list prices can still produce a higher invoice. Fast mode at $10/$50 for about 2.5x speed is Claude API only.