OpenAI told developers on Wednesday, October 14, that GPT-4o, GPT-4o mini, GPT-4.1 and GPT-4.1 mini will be removed from its API on January 14, 2027, according to its deprecations page.
The recommended replacement for all of them is gpt-6-luna. Fine-tuned versions “follow the same shutdown schedule as their underlying base models,” so custom models built on these snapshots go away on the same day. After shutdown, OpenAI says, the model “will no longer be accessible.” There’s no automatic fallback.
The models on the list
- GPT-4o:
gpt-4o-2024-08-06andgpt-4o-2024-11-20 - GPT-4o mini:
gpt-4o-mini-2024-07-18 - GPT-4.1:
gpt-4.1-2025-04-14 - GPT-4.1 mini:
gpt-4.1-mini-2025-04-14
The undated aliases (gpt-4o, gpt-4.1 and friends) go too. The developer tool Arbor, which tracks retirements, says OpenAI’s models API began returning the January 14 date for each alias by October 18.
A long goodbye for GPT-4o
GPT-4o has been dying in slow motion for more than a year. OpenAI first tried to retire it from ChatGPT during the GPT-5 launch in 2025, then brought it back after a subset of paying users objected. In January 2026, OpenAI announced it would pull GPT-4o, GPT-4.1, GPT-4.1 mini and o4-mini from ChatGPT on February 13, 2026, saying users had wanted more time and “preferred GPT‑4o’s conversational style and warmth,” and that the vast majority of usage had already shifted to GPT-5.2.
That post said, “In the API, there are no changes at this time.” Nine months later, there are. The consumer chatbot moved on first; the developer platform, where apps have pinned these snapshots into production code, is getting its eviction notice now.
The catch: the notice period
Three months is short by OpenAI’s own standards. The same deprecations page promises minimum notice of “at least 6 months” for generally available models, “unless safety or compliance concerns require a faster timeline.” Specialized variants, such as Codex or chat-tuned versions, get at least three months. Preview models can get as little as two weeks. AI Compass pointed out the gap on announcement day, and FrontierDot’s tracker summarizes the policy.
GPT-4o and GPT-4.1 aren’t previews or specialized variants. They’re the definition of generally available. The October 14 notice doesn’t explain why they get the shorter window, and we can’t find any statement from OpenAI that a safety or compliance issue is involved. For now, it’s just a gap between the policy and the practice.
Why it matters
GPT-4o and GPT-4.1 are old in AI years, but “old” isn’t “unused.” Plenty of production apps pin a specific snapshot precisely so behavior doesn’t drift. Moving to a new model means rewriting prompts, re-running evaluations and, for anyone with a fine-tune, retraining and retesting.
Fine-tunes are the sharpest pain point. A company that spent months tuning GPT-4o mini on its support tickets doesn’t get to port that model. It has to rebuild on something else and hope it behaves the same.
The cheap tier matters too. GPT-4o mini and GPT-4.1 mini have been the workhorses for classification, extraction and routing jobs where cost per call matters more than brilliance. Whether gpt-6-luna is cheaper or pricier in practice depends on how many reasoning tokens it burns, which brings us to the next problem.
The replacement isn’t a drop-in swap
gpt-6-luna is a reasoning model, meaning it “thinks” with extra hidden tokens before answering. Its default reasoning effort is medium. As the developer blog if.codes and the migration guide at ImportStatic both note, OpenAI’s latest-model guide says Luna supports function calling in Chat Completions only with reasoning_effort set to none.
That’s a trap for anyone doing a find-and-replace on the model name. Code that calls tools through Chat Completions will need that parameter added, or a move to OpenAI’s newer Responses API. The same guide says parameters like temperature and top_p should be removed whenever effort isn’t none, so sampling settings that tuned the old models’ behavior may have to go.
The practical checklist looks like this:
- Find every pinned call. Search code and config for the five snapshot IDs and the aliases.
- Replay real traffic. Run recorded requests against
gpt-6-lunaand compare outputs, tool calls and formatting. - Check the bill. Reasoning tokens are billed as output; a “cheaper” model can cost more if it thinks out loud.
- Rebuild fine-tunes early. Training and evaluating a replacement takes longer than swapping a string.
It’s a busy cleanup season
This isn’t the only batch. An earlier set, including gpt-4o-2024-05-13, gpt-4.1-nano, gpt-3.5-turbo, and the older gpt-4 and gpt-4-turbo snapshots, was scheduled to go on October 23, 2026, according to ImportStatic’s read of the deprecations page. Another wave, including the original gpt-5-2025-08-07 and o3, is listed for December 11. OpenAI’s page also lists gpt-5.1 and gpt-5.3-codex among models announced on October 1 for removal in April 2027.
Put together, developers face rolling deadlines in October, December and January, all landing during the end-of-year code freeze many companies observe.
Two practical notes from the page: developers can check a model’s shutdown_date field through the List models endpoint, and OpenAI says some customers “may be able to provision dedicated capacity for continued access after a model’s shutdown date” through its sales team. Translation: nostalgia is available, at enterprise pricing.
Who’s affected
- Startups with fine-tunes on GPT-4o mini: the most work, on the shortest clock.
- Enterprises with pinned snapshots and compliance testing: re-validation takes time and paperwork.
- Hobbyists and small apps using the aliases: probably fine, as long as someone remembers to change one line and add the reasoning setting before January 14.
The takeaway
Our read: retiring old models is normal, and running ancient snapshots forever costs OpenAI real compute. But a company that publishes a six-month minimum and then gives three months owes developers a sentence of explanation.
What to watch: whether OpenAI extends the date or explains the exception, how gpt-6-luna pricing compares in real workloads once reasoning tokens are counted, and how many apps quietly break on January 14.
Image: Jernej Furman from Slovenia / Wikimedia Commons, CC BY 2.0




