If a production feature depends on one model version, the platform you buy it through decides how long you get to migrate, and the gap between platforms is measured in months. Anthropic retired Claude Sonnet 4 on its own API on June 15, 2026; the same model stays on Amazon Bedrock until October 14, 2026. Claude Opus 4.1 went dark on Anthropic's API on August 5, 2026 and runs on Bedrock until January 8, 2027.
The verdict: for Claude, buy through a cloud marketplace if retirement runway matters to you, and read the model card for its Legacy period first. For OpenAI models, Microsoft Foundry is the one platform that publishes a retirement date the day a model launches, but its default auto-upgrade will swap your model for you unless you change a setting. The loser is Anthropic's first-party API: its retirement commitment is 60 days' notice, and it has retired Claude models months before the clouds that resell them. Anything you run on a preview model or a "latest" alias is worse still: two weeks.
All policies below were read on each vendor's live documentation on October 3, 2026. The workload they are normalised to is one feature on one generally available flagship model, called on-demand in one commercial region, with no fine-tuning.
| Platform | Minimum notice before a GA model retires | Retirement date known at launch? | Silent swap risk | Who should not rely on it |
|---|---|---|---|---|
| Claude API (Anthropic) | 60 days | A "not sooner than" date, roughly a year out | Low: requests to a retired model fail | Teams that need a quarter to re-certify a change |
| OpenAI API | 6 months (3 for specialised variants, ~2 weeks for previews) | No | Plain-text aliases resolve to dated snapshots | Anyone calling an alias in production |
| Gemini API and Vertex AI | Unspecified for stable; 2 weeks for previews and the "latest" alias | "Earliest possible" shutdown dates | High on "latest": hot-swapped on every release | Anyone on a preview model or alias |
| Microsoft Foundry | 60-day email; date set 18 months out at launch (12 for Anthropic, Mistral and others) | Yes | High: Standard deployments auto-upgrade by default | Teams that cannot absorb an unscheduled model change |
| Amazon Bedrock | 6-month Legacy period for most models; 45 days for some | Yes, as an "EOL no sooner than" date on the model card | None: migration is never automatic | Low-traffic fallbacks (15 days idle can cost you access) |
How Much Notice Does Each Provider Actually Give?
Notice ranges from two weeks to eighteen months of known lifespan, and it depends as much on the platform as on the model maker. A deprecation notice is the announcement that a model will stop serving on a specific date; a retirement (also called shutdown or end of life) is the date requests start failing.
Anthropic. The deprecations page commits to "at least 60 days' notice before model retirement for publicly released models." Every active model carries a tentative retirement date: Claude Opus 5.5 is listed as "not sooner than September 22, 2027." The most recent notice went out September 30, 2026, for Claude Sonnet 4.5, retiring November 30, 2026. That is 61 days. The same page says its dates cover the Claude API, Claude Platform on AWS and Microsoft Foundry, while Bedrock and Google Cloud "set their own retirement schedules."
OpenAI. The deprecations page promises at least six months for generally available models, at least three months for specialised variants such as chat, Codex and deep research models, and "much shorter notice, such as 2 weeks" for previews. Safety or compliance concerns can cut that short. The policy is being exercised heavily: an April 22, 2026 notice retires twelve model IDs on October 23, 2026, including gpt-4o-2024-05-13, o1-2024-12-17 and o4-mini-2025-04-16.
Google. The Gemini API deprecations page lists shutdown dates as "the earliest possible dates" and promises "advance notice" without a number. The models page is specific about the risky tiers: preview models "will be deprecated with at least 2 weeks notice," and the latest alias "will get hot-swapped with every new release," with two weeks' email notice for breaking changes. Vertex AI runs its own calendar: an April 2, 2026 release note moved the retirement of Gemini 2.5 Pro, Flash and Flash-Lite to October 16, 2026, while the Gemini API page shows no shutdown date for the same models.
Microsoft Foundry. The lifecycle policy is the most predictable on paper. A GA model's retirement date is "set programmatically" at launch, 18 months out. At 12 months it becomes unavailable to new customers. Generally available models from Anthropic, DeepSeek, Fireworks and Mistral AI follow a 12-month lifecycle instead. Subscription owners get an email at least 60 days before retirement, and the page answers the extension question plainly: "No. Retirement dates aren't extendable."
Amazon Bedrock. For models launched before September 7, 2026, the legacy lifecycle page guarantees at least 12 months on the platform and at least six months in Legacy before end of life. For models launched on or after that date, the current policy moves the guarantee onto each model card: an "EOL no sooner than" date and a Legacy period of either six months or 45 days. Most models get six months. GPT-6.1 Sol on Bedrock follows OpenAI's own deprecation terms and has no separate Bedrock minimum.
Why the Same Model Retires on Different Dates
Each platform runs its own retirement calendar, so the model ID you buy matters less than where you buy it. The examples on the live pages on October 3, 2026:
- Claude Sonnet 4: retired on Anthropic's API June 15, 2026; end of life on Bedrock October 14, 2026.
- Claude Opus 4.1: retired on Anthropic's API August 5, 2026; end of life on Bedrock January 8, 2027.
- GPT-4o
2024-05-13: shuts down on OpenAI's API October 23, 2026; Microsoft's lifecycle page gives December 9, 2026 for the same version on Foundry.
The extra months are not free. Bedrock's legacy policy puts models into "public extended access" after at least three months in Legacy, and during that window "you should expect higher pricing, which will be set by the model provider." Claude Opus 4.1 enters extended access on October 8, 2026 by Bedrock's schedule. Bedrock also states that existing customers "may lose access after 15 days of inactivity" once a model is Legacy. That clause matters for the fallback design below.
Steel-manning Anthropic's position: its 60-day notice sits on top of a published "not sooner than" date about a year after launch, so a team reading the table knows roughly when a model is at risk. The trouble is what teams do with that information. An empirical study of 22,555 migration commits across 17,703 public GitHub repositories estimated that 82% of migrations away from retired models were committed after the shutdown date. The share was 89% for Anthropic's 60-to-114-day notices and 13% for OpenAI's one-year Assistants API notice. Open-source projects are not enterprise production, and the authors count only commits that name the retired ID, but the pattern is consistent: short notice goes with late migration, and with 60 days a late start leaves no room to test.
What Silently Changes When You Move a Version
A model swap changes token counts, request validation, response shape and item-level accuracy, and only the validation changes announce themselves with an error. Treat the new version as a new dependency.
The explicit breaks are the easy ones. Anthropic's Opus 5.5 migration guide lists requests that now return a 400 error: forced tool calls via tool_choice any or tool, and prefilled assistant turns. The same deprecations page notes that temperature, top_p and top_k at non-default values return a 400 on Claude 4.7 and later. You find these in the first test run. We covered the tool-choice change in Claude Opus 5.5 Rejects the Forced Tool Calls Opus 5 Accepted.
The quiet ones cost more:
- Token counts move. The Opus 5.5 guide says the tokenizer introduced with Opus 4.7 "may use roughly 1x to 1.35x as many tokens" for the same text. Your
max_tokensceilings, compaction triggers and cost forecast were all tuned on the old count. - Response shape moves. On Opus 5.5, responses can begin with
thinkingblocks, so code that readscontent[0].textbreaks. Thinking content is empty by default from Opus 4.7 onward, a change the guide itself calls "silent." - Accuracy moves in both directions at once. Xu and Wu queried 900 benchmark items 50 times each across three GPT upgrades and found that "edges with aggregate gains of up to 7.3 percentage points contain up to 8.3% reliably regressed items." On instruction following, a 3.9-point regression under strict scoring shrank to 0.04 points under loose scoring.
- Behaviour drifts even under one name. The 2023 Stanford and Berkeley study measured GPT-4 identifying primes at 84% accuracy in March and 51% in June, under the same product name.
The fourth point is why aliases are dangerous in production. A dated snapshot ID fails loudly on retirement day. An alias like Gemini's latest, or an Azure Standard deployment left on auto-upgrade, changes under you and keeps returning 200s. See DeepSeek Swapped the Model. Your Eval Didn't Notice. for what that looks like.
How to Regression-Test a Model Swap
Freeze a set of your own production cases now, run each one several times on both versions, and block the swap on specific regressed items rather than on the average. A regression suite for a model swap is a fixed list of real inputs with pass/fail checks, run against the old and new model so you can compare item by item.
The Xu and Wu result tells you how to build it. A suite that runs each case once can't separate a real regression from sampling noise, and an average hides regressions behind gains elsewhere. Repetition per item matters more than breadth. Score with your strict production parser as well as a lenient grader, because the formatting regressions only show up under the strict one. Track tokens and latency per item next to accuracy, since the tokenizer change alone can move cost by up to 35%.
Size the suite before you trust its verdict; Only 3 of 36 Model Gaps Were Real walks through the arithmetic. For tooling, Braintrust vs Langfuse vs Promptfoo compares the options. Keep the harness portable: OpenAI's own Evals platform is on the deprecation list for November 30, 2026, with Promptfoo named as the replacement.
Re-check your prompts as well as the model. Few-Shot Stopped Paying on GPT-4o shows prompt techniques that helped one version and stopped helping the next.
Contract Language That Buys You Time
The notice periods above live in documentation pages, which a vendor can edit; if retirement timing matters to you, get it into the order form. Anthropic's Commercial Terms contain no clause setting a model retirement notice period, and Section M.3 lets Anthropic update the Terms 30 days after posting. The 60-day commitment is a docs-page promise.
What to ask for, in rough order of how often a vendor will move on it:
- The published notice period, written into the contract for the specific model IDs you use. This costs the vendor nothing if they intend to honour it.
- A no-earlier-than retirement date that binds. Anthropic, Google and Bedrock all publish one; ask that the date in your order form cannot be brought forward.
- A price cap on extended access. Bedrock's legacy policy lets the model provider raise prices during public extended access. If you plan to use those months, cap the uplift.
- Replacement price parity for the first term after a forced migration, so a retirement can't double as a price increase.
- Named continued access. Bedrock's lifecycle pages say requests fail after end of life "unless there is a private arrangement between you and the provider for continued access." That arrangement exists; ask whether you can have one, and at what spend.
On Microsoft Foundry, don't spend negotiating capital on an extension. The policy says retirement dates aren't extendable. Your levers there are the deployment type and the upgrade setting.
Anthropic's deprecation commitments of November 4, 2025 promise to preserve the weights of all publicly released models for "the lifetime of Anthropic as a company." Archived weights won't answer your API calls, and the same document only says Anthropic is exploring keeping select models publicly available after retirement.
Pinning and Multi-Model Fallback Design
Pin a dated model ID, keep it in configuration rather than code, and keep a second model warm with real traffic. Pinning is what turns a silent change into a loud one; the remaining work is making the loud one cheap.
In the open-source projects the migration study examined, 94% of migrations edited a hard-coded model identifier and only 3% happened behind an abstraction layer. The abstraction layer made fixes smaller, and teams that had one still migrated no earlier. The fix is a process: someone owns the retirement calendar.
Put that calendar on an API, not a person's memory:
- Microsoft's Models API exposes
lifecycleStatusand per-SKUdeprecationDate. Mind the naming trap the policy page spells out: API statusDeprecatedmeans retired and returning410 Gone, whileDeprecatingmeans still serving. - Bedrock returns a
modelLifecyclefield fromGetFoundationModelandListFoundationModels. - Anthropic's Console usage export breaks usage down by API key and model, which is the fastest way to find the forgotten service still calling a deprecated ID.
On Foundry, set versionUpgradeOption deliberately. OnceNewDefaultVersionAvailable swaps your model whenever Microsoft changes the default; NoAutoUpgrade means the deployment stops working at retirement. Provisioned deployments are never auto-upgraded.
For fallback, the trap is a cold standby. A secondary model that receives no traffic can be lost to Bedrock's 15-day inactivity rule after it enters Legacy, and it drifts out of your eval coverage either way. Route a small share of real traffic to it and keep it in the regression suite. Expect fallbacks across model families to lose state: the Opus 5.5 guide warns that a router moving a conversation to another model will run "without Claude Opus 5.5's thinking blocks." A gateway such as LiteLLM or OpenRouter makes the switch a config change, and the second model will still answer differently from the first. Model Router Buyer's Guide: Buy Failover, Not Judgment covers that trade.
Which Criteria Predict Regret
The teams that regret their platform choice picked on model quality and price and never checked three things: the notice length, whether swaps are automatic, and how long a re-certification takes them.
- Your re-certification time versus the notice. If a model change needs legal, compliance or clinical sign-off that takes a quarter, Anthropic's 60 days and Google's preview two weeks are both too short. Buy through Bedrock or Foundry, or contract for more.
- Whether your change control tolerates an automatic swap. If a model change needs a ticket, turn off auto-upgrade on Foundry and never call
lateston Gemini. - Traffic shape. Spiky or seasonal workloads that sit idle for weeks are exposed to Bedrock's 15-day inactivity rule on Legacy models.
- Fine-tuning. The migration study measured roughly 700 lines across 14 files for a fine-tuned application against six lines for a prompt-only one. If you fine-tune, Bedrock blocks new fine-tuning jobs on Legacy models and Foundry runs a separate training retirement schedule; plan the retrain before the notice arrives.
What changes the answer: if you only use a model through one vendor's first-party API for features (a new tool type, a beta header) that the clouds lag on, the runway advantage may not be worth the feature gap. Check feature parity on the marketplace before you move.
What to Do Next
This Week:
- Export every model ID in production, by service, with the platform it is called through. Anthropic's usage CSV and the Bedrock and Foundry lifecycle APIs give you this in an afternoon.
- Flag anything on a preview model, a
latestalias, or a Foundry deployment with auto-upgrade on.
This Month:
- Freeze 200 or more real cases per feature as a regression set, with strict parsers, and run each case several times on the current model so you know its noise floor.
- Put the retirement dates for every pinned ID into the same calendar as your certificate expiries, with an owner.
Before Your Next Renewal:
- Write the notice period, a binding no-earlier-than date and an extended-access price cap into the order form.
- For Claude workloads with long sign-off cycles, price the same model on Bedrock and compare the end-of-life dates on the model card against Anthropic's table.
The Bottom Line
Model retirement now runs on a published schedule at every major provider, which is better than the same-name drift researchers measured in 2023. The schedules differ by platform, though, and the gap between Anthropic's API and Bedrock on the same Claude model was four to five months in 2026. Sonnet 4.5 retires from Anthropic's API on November 30, 2026; check where yours is served before that date.
Continue Reading
- Claude Opus 5.5 Rejects the Forced Tool Calls Opus 5 Accepted
- Your Assistants API Dies Aug 26. Azure's Exit Is Different.
- DeepSeek Swapped the Model. Your Eval Didn't Notice.
- Braintrust vs Langfuse vs Promptfoo: Don't Pay for the Gate
- Model Router Buyer's Guide: Buy Failover, Not Judgment
- AWS Kills Q Business, Kendra, Bedrock Agents: 90-Day Plan
