Migrating to Claude Fable 5: The Practical Guide

The Fable 5 Moment
31 parts- 1Claude Mythos 5 Explained: What It Is, Who Can Access It, and Why It's Gated
- 2Migrating to Claude Fable 5: The Practical GuideCurrent
- 3Claude Fable 5 Access After the June 22 Deadline: Where Things Stand
- 4Claude Fable 5 vs GPT-5.6 Sol: Benchmarks, Pricing, and When Each Wins
- 5Fable 5 vs Opus 4.8: A Data-Driven Decision Guide for Engineering Teams
- 6How to Model Fable 5 Costs Before They Blow Up Your Budget
- 7Claude Fable 5 API: Production Integration Patterns, Rate Limits, and Migration Gotchas
- 8Handling Fable 5 Refusals: A Working Guide to the Fallback API
- 9Why Fable 5 Refuses Your Cybersecurity Queries (And How the Fallback Works)
- 10Fable 5's Hidden Guardrails: What Developers Need to Know About Silent Degradation
- 11Fable 5 Broke Enterprise ZDR Agreements: What Dev Teams Must Do Now
- 12Claude Managed Agents: Dreaming, Outcomes, and Multi-Agent Orchestration Explained
- 13Claude Managed Agents Public Beta: What's Actually Available vs What's Gated
- 14Dario Amodei Wants FAA-Style AI Regulation: Open Questions for Developers
- 15The Exponential and the Working Developer: Sitting With Amodei's Hardest Questions
- 16The Dario Paradox: Warning About the Exponential While Shipping It
- 17The Pushback on Amodei's Exponential Essay: Too Slow, Too Convenient, or About Right?
- 18Fable 5 Before June 22: The Decision Checklist for Every Plan Tier
- 19Fable 5 on AWS Bedrock: When Your Data Leaves the AWS Boundary
- 20Why Claude Desktop Installs a 1.8 GB Hyper-V VM on Windows
- 21Anthropic Model Names Explained: Fable, Mythos, Opus, Sonnet
- 22Managed Agents vs LangGraph vs Rolling Your Own: Who Should Run Your Agent Loop in 2026
- 23Claude Usage Limits With Fable 5: Windows and Burn Rates
- 24Fable 5 for Government and Regulated Teams: The GovCloud Question
- 25Fable 5 vs DeepSeek V4: The Cost-Quality Gap Measured in Real Tasks
- 26Fable 5 Orchestrator Playbook: Smart Model, Cheap Workers
- 27Prompt Caching Economics on Fable 5: When the 5-Minute TTL Pays
- 28Fable 5 with 1M Context: What Actually Works in Practice
- 29Claude Effort Levels Explained: Fable 5, Opus 5.5, Haiku 5.5
- 30Fable 5 Effort Levels vs Switching Models: When to Dial and When to Change
- 31Recursive Self-Improvement: What Fable 5, Dario's Essay, and Anthropic's Own Data Actually Tell Us
TL;DR
Migrating to Claude Fable 5 from Opus 4.8 or older models - every breaking change, what to delete from your code, and the prompt audit to run before switching.
Last updated: June 10, 2026
Anthropic shipped Claude Fable 5 on June 9. It's a new tier above Opus: $10 per million input tokens, $50 per million output, 1M context window, 128K max output. The model ID is claude-fable-5.
If you're on Opus 4.8, migration is close to a one-line change. If you're on anything older, there's a stack of breaking changes between you and Fable 5, and one of them has a deadline this week: claude-sonnet-4-20250514 and claude-opus-4-20250514 retire on June 15, 2026.
Here's the full migration, in order.
The one-line version#
response = client.messages.create(
model="claude-fable-5", # was: claude-opus-4-8
max_tokens=32000,
messages=[{"role": "user", "content": "..."}],
)
This works for most Opus 4.8 codebases. Now here's everything that can break.
1. thinking: disabled is now a 400 error#
This is the one new breaking change versus Opus 4.8. Fable 5 has exactly one thinking mode: adaptive, always on. There is no way to turn it off.
# Opus 4.8: valid, runs without thinking
thinking={"type": "disabled"}
# Fable 5: 400 error. Delete the parameter entirely.
If you omit thinking, you get adaptive thinking. That's the only option. Search your codebase for "disabled" near any thinking config and remove it.
Two related carryovers from the Opus 4.7/4.8 surface, in case you skipped those releases: budget_tokens returns a 400, and so do temperature, top_p, and top_k. The effort parameter is the only depth control now.
2. Raise max_tokens on workloads that ran without thinking#
Because thinking is always on, and thinking tokens count against max_tokens, any workload you previously ran with thinking disabled now needs headroom it didn't need before.
A classification task that comfortably ran at max_tokens: 500 on Opus 4.8 with thinking off can now hit the cap mid-thought. Budget for thinking plus response text, not response text alone.
3. Start effort at high, not xhigh#
See the full breakdown of effort levels if you need more than the summary below. Effort levels are low, medium, high, xhigh, and max, set via output_config:
output_config={"effort": "high"}
Anthropic's own migration guidance is direct about this: even if you ran xhigh on Opus 4.8, start at high on Fable 5. Lower effort on Fable 5 often beats xhigh on prior models. Given that output costs $50 per million tokens, the difference between high and xhigh shows up on your bill fast. Reserve xhigh and max for work where capability genuinely matters more than cost.
4. Handle the new refusal stop reason#
Fable 5 runs safety classifiers on requests and during generation, targeting three categories: offensive cyber, biology and chemistry, and attempts to extract the model's raw reasoning. When a classifier fires, you get HTTP 200 with a new shape:
{
"stop_reason": "refusal",
"stop_details": {
"type": "refusal",
"category": "cyber",
"explanation": "..."
}
}
The categories are "cyber", "bio", "reasoning_extraction", or null. Anthropic says fewer than 5% of sessions trigger a fallback, but the classifiers are tuned conservative and benign work trips them. Day-one reports include a base64 implementation flagged as cybersecurity and genome-alignment work force-routed away from Fable.
If your code doesn't check stop_reason, a refusal looks like a short, useless completion. At minimum, log it. In production, you want the fallback pattern: retry on Opus 4.8 automatically. That's a big enough topic that we wrote a separate guide to the new Fallback API. For the reasoning behind the classifiers themselves, see Fable 5's safeguards and refusal architecture; if you're running multiple agents, handling refusals across an agent fleet covers the retry patterns in more depth.
The billing rule worth knowing: a request refused before any output is generated is not billed and doesn't count against rate limits.
5. Audit your prompts for "show your reasoning"#
This one will bite teams with mature prompt libraries. The reasoning_extraction classifier targets attempts to pull out the model's chain of thought, and old prompts are full of phrases like "show your reasoning step by step" and "explain your thought process before answering."
On Fable 5, those instructions can trigger refusals or elevated fallback rates. The model's raw chain of thought is never returned anyway: thinking.display defaults to "omitted", and the most you can get is "summarized". So those instructions buy you nothing and cost you reliability.
Grep your prompts, skills, and CLAUDE.md files for reasoning-extraction language and cut it. If you need visibility into the model's process, read the summarized thinking blocks instead.
6. Re-baseline your costs, not just your code#
Two facts to hold at once:
- Fable 5 is exactly 2x Opus 4.8 pricing across the board, including cache writes and batch.
- Token counts are roughly unchanged from Opus 4.8 (same tokenizer), and early production reports suggest Fable 5 uses substantially fewer tokens to finish the same agentic work. One pre-launch tester measured roughly half the tokens of Opus 4.8 in agentic harnesses.
So your real cost delta is workload-dependent and probably less than 2x on long agentic tasks. Don't guess. Run a week of representative traffic and compare actual spend, not unit prices. For a deeper walkthrough of the math, see production cost modeling for Fable 5.
Two pricing notes that help: the full 1M context window bills at standard rates with no long-context premium, and the prompt-cache minimum drops to 512 tokens on the Claude API (it stays 1,024 on Bedrock). Short system prompts that never cached before now do.
7. Trim your prompts. Seriously.#
Anthropic's Fable 5 prompting guide makes a point that's easy to skim past: old, prescriptive prompts can make Fable 5 worse. Instruction following is strong enough that brief instructions beat enumerated rule lists, and skill files written to keep weaker models on rails now read as constraints that degrade output.
The shift in one line: give it objectives, not task lists. If your CLAUDE.md spells out a 14-step procedure for something Fable 5 can figure out, the procedure is now the bottleneck. There is a full walkthrough of this rewrite process in rewriting your prompts and skills for Fable 5.
While you're in there: single requests can run many minutes at high effort, so raise client timeouts, stream responses, and treat long runs as async jobs rather than blocking calls.
Coming from Opus 4.7 or earlier#
Apply the generations in order. Each one has its own breaking changes:
From 4.7 to 4.8: nothing breaks. Swap the ID and re-tune prompts.
From 4.6 to 4.7: remove temperature, top_p, top_k (all 400 now). Replace budget_tokens thinking with adaptive thinking plus effort. The 4.7 tokenizer produces up to 30-35% more tokens for the same text, so re-run count_tokens on your prompts and raise max_tokens and any compaction triggers accordingly.
From 4.5 or earlier to 4.6: assistant prefills return a 400 (replace with structured outputs via output_config.format). Remove beta headers that went GA (effort-2025-11-24 and friends). Stream anything above roughly 16K max_tokens. Handle the refusal and model_context_window_exceeded stop reasons.
If you're on the retiring claude-sonnet-4-20250514 or claude-opus-4-20250514, you have until June 15. That's not a Fable 5 decision, it's a "your API calls stop working" decision. Move to claude-sonnet-4-6 or claude-opus-4-8 first, then evaluate Fable 5 from stable ground.
The checklist#
- Swap model ID to
claude-fable-5 - Delete any
thinking: {type: "disabled"} - Raise
max_tokenson previously non-thinking workloads - Set effort to
high, benchmark before going higher - Handle
stop_reason: "refusal"andstop_details.category - Grep prompts for "show your reasoning" language and remove it
- Run a cost comparison on real traffic before committing
- Cut prescriptive procedures from prompts and skills
- Raise client timeouts and stream long requests
One more date for your calendar: Fable 5 is included free on Pro, Max, Team, and seat-based Enterprise plans only through June 22. From June 23 it requires usage credits. If you're evaluating on a subscription, this is the week to do it.
Update, October 2026: Fable 5 now has a successor at the same per-token price. The Claude Fable 5.1 and Mythos 5.1 migration guide covers the three new breaking API changes on top of this checklist, and Claude Fable 5.1 in Claude Code covers switching and pinning the model in the CLI.
FAQ#
Is migrating from Opus 4.8 to Fable 5 really a one-line change?#
For most codebases, swapping the model string is enough to get a working response. Whether it's a good response depends on the seven items above: thinking: disabled becomes a 400 error, max_tokens may need raising, effort defaults change, and the new refusal stop reason needs handling before you can trust it in production.
What happens if I don't migrate off claude-sonnet-4-20250514 or claude-opus-4-20250514?#
Those model IDs retire on June 15, 2026. That's a hard stop on API calls, not a Fable 5 decision. Move to claude-sonnet-4-6 or claude-opus-4-8 first, confirm stability, then evaluate Fable 5 separately.
Why does Fable 5 refuse requests that Opus 4.8 answered fine?#
Fable 5 runs safety classifiers targeting offensive cyber, biology/chemistry, and reasoning-extraction categories. Anthropic says under 5% of sessions trigger a fallback, but the classifiers are tuned conservative, so benign work (like base64 handling or genome-alignment code) can trip them. See Fable 5's safeguards and refusal architecture for how the categories work.
Will Fable 5 cost more than Opus 4.8 for the same workload?#
Unit pricing is exactly 2x Opus 4.8, but token counts on agentic tasks are often lower because Fable 5 needs fewer tokens to finish the same work. The real delta is workload-dependent; run a week of representative traffic before drawing conclusions, and see production cost modeling for Fable 5 for the full math.
Sources#
Get the next deep dive like this in your inbox
One email a week on Claude and the rest of the AI dev stack. Free.
Read next on Claude Code
Handling Fable 5 Refusals: A Working Guide to the Fallback API
Handle Claude Fable 5 refusals with the fallback API: what a refusal looks like on the wire, three ways to handle it with code, and the billing rules.
10 min readClaude Fable 5 Access After the June 22 Deadline: Where Things Stand
Claude Fable 5 access after the June 22 free window closed on Pro, Max, Team and Enterprise plans: what credits cost now and how to control Fable 5 spend.
6 min readFable 5 Before June 22: The Decision Checklist for Every Plan Tier
Fable 5 June 22 decision checklist for Pro, Max, Teams and API users: what to decide and test before the window closes, and when Opus 4.8 is the right call.
9 min readTechnical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.








