Four legacy models retired: the migration checklist
On September 28, 2026, OpenAI retired gpt-3.5-turbo-instruct, babbage-002, davinci-002, and gpt-3.5-turbo-1106. Traffic reroutes to gpt-5.6-terra — so nothing hard-fails, but behavior, latency, and cost change silently. Here's the checklist to get off the reroute deliberately.
The retirement, plainly stated
| Retired model | Traffic now routes to | Typical use it served |
|---|---|---|
gpt-3.5-turbo-instruct | gpt-5.6-terra | Instruction-following completions |
babbage-002 | gpt-5.6-terra | Legacy base-model completions |
davinci-002 | gpt-5.6-terra | Legacy base-model completions |
gpt-3.5-turbo-1106 | gpt-5.6-terra | Pinned older chat snapshot |
Because traffic reroutes automatically, this retirement doesn't page you — it quietly changes what your system does. A different model answers, with different behavior, latency, and price. Automatic reroutes are for continuity, not for architecture. Every reference should be found and updated on purpose.
Migrate in four steps
1. Find every reference
Grep your codebase for all four model IDs — plus infrastructure-as-code, CI configs, eval harnesses, docs, environment variables, and feature flags. Then check third-party integrations: anything that pins models on your behalf (agent frameworks, eval tools, hosted wrappers) can carry a retired ID you never typed.
2. Test the reroute behavior
Send your real prompts through gpt-5.6-terra and compare outputs, latency, and failure modes against what the retired model produced. Base models (babbage, davinci) behave very differently from instruction-tuned reroutes — prompt adjustments are likely, not optional.
3. Choose deliberately, don't inherit
The reroute target isn't necessarily your best target. For high-volume simple work, evaluate GPT-6 Luna ($0.10/$0.50); for reasoning, Sol ($2/$10). Pick per task with our model routing guide, not by accepting the default reroute.
4. Verify cost impact
Legacy pricing is gone with the models. Run the cost-per-task math on the replacement before it runs at volume — a silent reroute can silently reprice your highest-traffic path.
Pin models behind an abstraction
Every retirement is the same lesson: model IDs are infrastructure, and infrastructure gets deprecated. Keep model selection behind a routing layer — one place where IDs are pinned, versioned, and swappable — instead of scattered string literals across code, configs, and docs. Then a retirement becomes a one-line change plus an evaluation run, not an archaeology project. That's the change-of-control and deprecation resilience that governed architectures are built for: the contract names the capability required, and the routing layer resolves it to whatever model currently serves it.
Frequently asked questions
Which models were retired on September 28, 2026?
gpt-3.5-turbo-instruct, babbage-002, davinci-002, and gpt-3.5-turbo-1106. Traffic reroutes to gpt-5.6-terra.
Will my app break?
Calls reroute rather than fail — but behavior, latency, and cost change silently. Update references deliberately instead of riding the automatic reroute.
How do I find all references?
Search code, IaC, CI configs, eval harnesses, docs, env vars, and feature flags — then audit third-party integrations that may pin models on your behalf.
What replaces babbage-002 or davinci-002?
Evaluate GPT-6 Luna for high-volume simple work or Sol for reasoning-heavy tasks. Test completion rates on your own tasks first — see the model routing guide.
Land the migration
How this page is verified
Retirement dates on this page reflect OpenAI’s API deprecations page as read on September 25, 2026: the Videos API and Sora 2 models on September 24, gpt-3.5-turbo-instruct / babbage-002 / davinci-002 / gpt-3.5-turbo-1106 on September 28, and GPT-5.4-Cyber on October 1. Confirm the current list on OpenAI’s official deprecations page before planning migrations — dates move. This page will be refreshed after the September 29, 2026 DevDay keynote with anything OpenAI confirms.