How to Migrate to Claude Opus 4.8 (5 Things That Broke)
How to migrate from Claude Opus 4.7 to 4.8 without surprises: the 5 API gotchas that broke, the fixes, and the real cost math. Same $5/$25 pricing.
Anthropic shipped Claude Opus 4.8 on May 28, 2026. That is 41 days after Opus 4.7. A short gap like that tells you something: this is a tightening, not a reinvention.
So I migrated my own setup the day it landed. If you run Claude through the API, build with Claude Code, or wire Claude into daily automations, this release affects you in three concrete ways.
The price did not change ($5 per million input tokens, $25 per million output tokens).
The model got better at catching its own mistakes.
And the way you tell Claude how hard to think was quietly rewired, which means your bill can move even when your code does not.
This guide is the calm middle. The launch videos sold the upgrade. The Reddit threads doubted it. Neither one told a builder what breaks on migration, what the new features cost, and how to decide whether to flip the model ID today.
By the end, you will have the 5-step migration checklist, the effort-level changes that move your costs, an honest read on the new agent mode, and a clear answer on whether to upgrade now.
👋 Julley, I'm Dheeraj, an AI systems builder.
I build production-grade AI systems at work by day and ship my own products by night, 9 and counting, including SubflowAI and the Content OS Agents Toolkit. This newsletter is the bridge between those two worlds. Every system, every build, documented step by step.
Join 1,800+ builders getting the exact AI setups, prompts, and workflows that actually work in your business.
The headline upgrade in Opus 4.8 is not raw intelligence. It is judgment. The model is roughly 4 times less likely than 4.7 to let a flaw in its own code slip by without flagging it. For a builder, that is fewer confident wrong answers reaching your pipeline.
What Is Claude Opus 4.8?
Claude Opus 4.8 is Anthropic's most capable generally available model as of May 28, 2026.
The API model ID is
claude-opus-4-8.It runs on a 1M token context window by default on the Claude API, Amazon Bedrock, and Google Vertex AI.
Microsoft Foundry gets 200k.
Max output is 128k tokens per response.
The price holds flat at $5 per million input tokens and $25 per million output tokens.
Think of it as Opus 4.7 with three specific upgrades bolted on.
First, better judgment about its own work.
Second, a team-of-agents mode in Claude Code called Dynamic Workflows.
Third, a faster, cheaper run mode called Fast mode for when speed matters more than depth.
There is also a quieter story underneath. Anthropic says Opus 4.8 is a bridge to Claude Mythos, a more powerful model gated under a program called Project Glasswing for cybersecurity reasons. Mythos-class models are expected for general customers in the coming weeks.
The framing is simple: build good habits on 4.8 now, before something stronger lands.
Commercial break: Claude Code Builder cohort
The founding batch of my Claude Code cohort starts in July on Maven. Four weeks, six sessions. Learn to build the AI system with me.
Only 12 Seats. When they’re gone, the founding price ($797) closes and Cohort 2 opens at $1,597.
Use code GENAI20 for 20% off. Expires July 9. Check the Syllabus →
What Changed From Opus 4.7?
Three upgrades matter for builders. Here is each one in plain terms.
1. Honesty and self-checking.
Opus 4.8 is trained to flag uncertainty and catch its own errors more often. Anthropic's evaluations show it is about 4 times less likely than 4.7 to let flaws in code it wrote pass without saying so.
A tester from Bridgewater told TechCrunch the biggest difference was Claude proactively flagging issues with the inputs and outputs of an analysis, the kind of problem other models leave for you to find.
This does not replace your tests. It reduces the confident-wrong-answer problem that makes LLMs frustrating in real production work.
2. Dynamic Workflows in Claude Code.
This is a new agent mode. Instead of one Claude working a problem step by step, Claude Code plans a large task, breaks it into pieces, runs many parallel workers on those pieces, and verifies the results before answering.
More on this below, including the part that runs up your bill.
3. Fast mode in Opus 4.8.
A new run mode at up to 2.5x output speed for exploration and drafting. It costs more per token but is built for the low-risk, high-iteration parts of building.
Claude's Billing Changes: What Breaks, and How to Keep Your AI Agents & Automations Free
If you opened Reddit or X this week, you'd think Claude just got twice as expensive overnight. The threads are loud. One developer posted that an agent ran up "around 50 bucks" building a single feature over a long weekend.
How Do I Migrate My API Calls From 4.7 to 4.8?
If you are already on Opus 4.7, this is a short job. If you are on an older model, it is still straightforward, but read every step because two old habits now return errors.
Here is the 5-step checklist:
Change the model ID in your requests from
claude-opus-4-7toclaude-opus-4-8.Remove
temperature,top_p, andtop_kfrom your request body. Sending any of them returns a 400 error. This was true on 4.7 too, so check older code paths.Do not send
thinking: {"type": "enabled", "budget_tokens": N}. That also returns a 400. Usethinking: {"type": "adaptive"}instead.Set your effort level explicitly if cost predictability matters. The default is
high.Test one real call before you flip the model ID everywhere. Confirm the response shape and the cost look right.
A clean migration request looks like this:
{
"model": "claude-opus-4-8",
"thinking": {"type": "adaptive"},
"output_config": {"effort": "high"},
"messages": [{"role": "user", "content": "Your task here"}]
}The most common breaking change is the sampling parameters. If you copy an older payload forward, this is what fails:
{
"model": "claude-opus-4-8",
"temperature": 0.7,
"messages": [{"role": "user", "content": "Your task here"}]
}That request returns a 400 error because temperature is no longer accepted on this model. The fix is to delete the line. The effort parameter is the replacement for tuning how the model behaves.
How Do Dynamic Workflows Work in Claude Code?
Dynamic Workflows is the feature Claude Code users will care about most. It is a research preview, which means it is available now but Anthropic is still refining it.
Here is the shape of it. You give Claude Code a large task. It plans the job, breaks it into subtasks, spawns parallel subagents to work those subtasks at the same time, and verifies the results before returning anything to you.
For big jobs like migrating a codebase or hunting one class of bug across many files, this is a real change in what one session can do.
Anthropic's demo was a port of the Bun project: 750,000 lines of code moved from Zig to Rust, with 99.8% of existing tests still passing, in 11 days, using hundreds of agents in parallel.
One honest caveat to carry: that migration was not in production at the time of the announcement. It is a capability demo, not a shipped result.
Who has it, and how you turn it on:
On Max plan, Team plan, and the API, it is on by default.
On Enterprise plan, it is off by default. An admin enables it in Claude Code settings.
To trigger it, ask Claude to create a workflow, or switch on the
ultracodesetting in Claude Code.
The gotcha that almost no launch coverage mentioned: this is not one conversation. It is many agents working at once, so it uses a lot more tokens than a normal session.
That is also how you generate a large invoice. Scope tightly.
Good triggers are bounded: migrate one module from one pattern to another, audit one folder for a specific bug class, refactor one subsystem without changing behavior.
A bad trigger is "make my app better." Start with one module, not your whole project, and check whether Claude surfaced uncertainty and preserved existing behavior before you trust it on something bigger.
Get PluggedIn
Want the deeper builds behind posts like this one? PluggedIn members get the full migration kits, the production configs, and the systems I use, documented with every issue.
Why Your Bill Can Change Even Though the Price Did Not
This is the part nobody spelled out.
Effort levels are how you tell Opus 4.8 how hard to think. The model defaults to high on every surface, including the API and Claude Code.
The levels were recalibrated in 4.8, so the same label no longer means the same amount of thinking.
Here is the change:
mediumnow allows somewhat more thinking than before.highnow allows somewhat less than before.xhigh(the API calls itextra) now allows substantially more.
So if you switch from claude-opus-4-7 to claude-opus-4-8 with the same effort setting, you will not get the same cost. Budget for that before you flip the model ID, then check your real costs after the switch.
For harder tasks where you want more reasoning, set it explicitly:
{
"model": "claude-opus-4-8",
"thinking": {"type": "adaptive"},
"output_config": {"effort": "xhigh"},
"messages": [{"role": "user", "content": "Your complex task here"}]
}A simple guide for everyday decisions:
Casual chat or a simple lookup: omit
effort. The defaulthighis fine.Debugging a specific bug:
highorxhigh.Large codebase migration or a long async workflow:
xhigh. This is Anthropic's recommendation.High-stakes production change where a mistake is expensive:
max.Fast exploration or first drafts: use Fast mode instead.
What Does Fast Mode Cost, and When Should You Use It?
Fast mode gives you up to 2.5x higher output speed. Set speed: "fast" in your API request, or type /fast in Claude Code.
{
"model": "claude-opus-4-8",
"speed": "fast",
"messages": [{"role": "user", "content": "Draft three approaches to this problem"}]
}It costs $10 per million input tokens and $50 per million output tokens. That is more than standard, but Anthropic calls it roughly 3 times cheaper than the fast inference option on previous Opus models.
Use it for exploring options, drafting first passes, comparing approaches, and rewriting small pieces.
Do not use it as the final judge for risky migrations, security-sensitive work, or production decisions. For those, stay on standard mode and inspect the output.
Let Us Do the Cost Math
Pricing only means something at your real volume. Take a daily automation that processes 2 million input tokens and produces 500,000 output tokens.
On standard Opus 4.8:
Input: 2 x $5 = $10
Output: 0.5 x $25 = $12.50
Daily total: $22.50, which is about $675 per month.
On Fast mode, same volume:
Input: 2 x $10 = $20
Output: 0.5 x $50 = $25
Daily total: $45, which is about $1,350 per month.
So Fast mode is roughly 2x the cost for up to 2.5x the speed. That is a fair trade for the exploratory parts of building. It is a poor trade for a job you could run overnight without watching.
A practical way to think about it, call it your cost stack for solo builders:
Fast mode for exploration, drafts, and low-risk loops where speed matters most.
Standard `high` for normal coding and reasoning work, your everyday default.
`max` effort reserved for the rare high-stakes call where being wrong is expensive.
One platform note for GitHub Copilot users. Opus 4.8 is now generally available on Copilot Pro+, Business, and Enterprise.
Until June 1, 2026, it carries a 15x premium request multiplier against your monthly quota. In plain terms, each Opus 4.8 request counts as 15 requests, so a 300-request allowance becomes about 20 Opus 4.8 calls.
After June 1, usage-based billing replaces the multiplier. If you are on Copilot and pricing matters, factor this in before June 1.
Two API Capabilities Worth Knowing
Two smaller additions shipped with this release that help on long agentic loops.
1. Mid-conversation system messages.
Opus 4.8 now accepts a role: "system" message immediately after a user turn in the messages array. You can update instructions mid-task without restating the full system prompt, and it preserves your prompt cache hits on the earlier turns. No beta header is needed.
{
"model": "claude-opus-4-8",
"messages": [
{"role": "system", "content": "You are a code migration assistant."},
{"role": "user", "content": "Start migrating the auth module."},
{"role": "assistant", "content": "..."},
{"role": "system", "content": "Focus only on the token validation functions for now."},
{"role": "user", "content": "Continue."}
]
}2. Lower prompt cache minimum.
The minimum cacheable prompt length is now 1,024 tokens on Opus 4.8, lower than on 4.7. Prompts that were too short to cache before can now be cached with no code changes, which trims input cost on repetitive calls.
Is Claude Opus 4.8 Worth Upgrading From 4.7?
Here is the honest both-sides read, because the internet split hard on this one.
What the launch coverage got right:
the price held flat,
the self-checking is a genuine reliability gain, and
Dynamic Workflows is a real jump for bounded, large jobs.
For a builder feeding Claude output into a pipeline, fewer confident wrong answers is worth the upgrade on its own.
What the launch coverage skipped:
the effort recalibration that moves your bill,
the token risk of pointing many agents at a big job, and
the Copilot 15x multiplier.
What the skeptics raised, fairly. On Reddit, the day-one reaction ran cool. Treat that as early, emotional, anecdotal sentiment, not measured testing. But the themes are worth knowing.
Some users found the new honesty behavior patronizing in casual chat, with replies opening "Let me be honest." So the same self-checking that helps in code can read as preachy in conversation.
Others feared token burn, with one unverified claim that three questions ate 45% of a five-hour limit.
That worry connects straight back to the effort recalibration. And some long-time users prefer an older Claude Opus. That is subjective, not a benchmark.
On benchmarks themselves, be careful.
Strong scores were reported by third-party trackers citing Anthropic materials, but they were not independently verified against primary sources at the time of writing. Use them as a signal, not as settled fact.
The builder's verdict
If you ship real work through the API or Claude Code, upgrade, but set your effort levels explicitly and watch your first week of costs. If you only chat casually, the upgrade is fine but less urgent, and you may notice the honesty tone.
Frequently Asked Questions
What is the Claude Opus 4.8 API model ID?
The model ID is claude-opus-4-8. That is the exact string you put in the model field of your API request. There is no separate name for Fast mode. You enable Fast mode by adding speed: "fast" to the same request.
How much does Claude Opus 4.8 cost per 1M tokens?
Standard pricing is $5 per million input tokens and $25 per million output tokens, the same as Opus 4.7. Fast mode costs $10 per million input tokens and $50 per million output tokens.
Why did my API call return a 400 error after migrating to 4.8?
The most likely cause is temperature, top_p, or top_k in your request body. Opus 4.8 rejects all three with a 400 error. Remove them. A second cause is sending thinking: {"type": "enabled", "budget_tokens": N}, which also returns a 400. Use thinking: {"type": "adaptive"} instead.
How do Claude Dynamic Workflows work, and do I need an Enterprise plan?
Dynamic Workflows plans a large task, splits it into subtasks, runs parallel subagents, and verifies the results before answering. It is on by default for Max plan, Team plan, and API users. On Enterprise it is off by default and an admin must enable it. You do not need Enterprise to use it.
What is the difference between high, xhigh, and max effort?
Effort tells Opus 4.8 how hard to think. high is the default and fits most coding and chat. xhigh (written extra on the API) allows substantially more thinking, recommended for large migrations and long workflows. max is for high-stakes work where a mistake is expensive. The levels were recalibrated in 4.8, so the same label does not cost the same as it did on 4.7.
Does Claude Opus 4.8 support a 1M token context window?
Yes, by default on the Claude API, Amazon Bedrock, and Google Vertex AI. Microsoft Foundry is the exception at 200k. Maximum output is 128k tokens per response.
Should I use Opus 4.8 Fast mode for production work?
No. Fast mode is built for exploration, drafting, and low-risk loops where speed matters. For risky migrations, security-sensitive tasks, and final production decisions, stay on standard mode and inspect the output carefully.
Key Takeaways
The upgrade is judgment, not raw IQ. Opus 4.8 is about 4 times less likely than 4.7 to let its own code flaws pass silently. That means fewer confident wrong answers in your pipeline, but it does not replace your tests.
Migration is a 5-step job. Change the model ID, remove
temperature/top_p/top_k(they 400), usethinking: adaptive, set effort explicitly, and test one real call first.
The same effort label can cost more. Effort levels were recalibrated.
highthinks a little less,xhighthinks substantially more. Check your costs after switching.
Dynamic Workflows is powerful and pricey. Many parallel agents run at once, so scope tightly and start with one module, not your whole codebase.
Match the run mode to the job. Fast mode for exploration, standard
highfor everyday work,maxeffort for the rare high-stakes call.
Copilot users have a deadline. The 15x premium multiplier on Opus 4.8 runs until June 1, 2026, then flips to usage-based billing.
Your 15-Minute Challenge
Open one script in your codebase that calls Claude. Do three quick edits. First, change the model ID to claude-opus-4-8 and remove any temperature, top_p, or top_k lines.
Second, add output_config: {"effort": "high"} so your cost is predictable. Third, run one real call and write down the input and output token counts from the response.
That single run confirms two facts: that your migration works, and what one job costs at the new effort calibration. Once you have that number, you can decide where Fast mode and max effort belong in your stack.
Do not migrate your whole project until that one call looks right.
Next week, I will break down Dynamic Workflows on a real repo, with the file count, the time, and the manual fixes, so you can see when the agent mode earns its token bill and when it does not.











