OpenAI Retires Six Models on October 23: The Swap Table, and Which Replacements Cost More
By Promptster Team · 2026-10-21
On 2026-10-23, OpenAI stops serving six models: o3-mini, o4-mini, gpt-4.1-nano, gpt-4-turbo, gpt-4 and gpt-3.5-turbo. Requests that name them will stop working on that date, whether they come from your code, a cron job, or a saved test.
Each one has a named replacement. (For gpt-4.1-nano we skip OpenAI's pick, for a reason explained below.) Three of those replacements are cheaper than the model they replace. Three are more expensive, and one of them costs 5.8× more. If you swap ids without checking the price, your bill will change.
The swap table
Prices are list rates per million tokens (input / output) from shared/pricing.ts, the file Promptster prices every test with. "Blended" weights input and output 3:1, which is a reasonable shape for most prompt-and-answer traffic. How blending works.
| Retiring 10-23 | Price | Named replacement | Price | Blended change |
|---|---|---|---|---|
o3-mini |
$1.10 / $4.40 | gpt-5.5 |
$5.00 / $30.00 | 5.84× more |
o4-mini |
$1.10 / $4.40 | gpt-5.4-mini |
$0.75 / $4.50 | 0.88× |
gpt-4.1-nano |
$0.10 / $0.40 | gpt-6-luna |
$0.10 / $0.50 | 1.14× more |
gpt-4-turbo |
$10.00 / $30.00 | gpt-5.5 |
$5.00 / $30.00 | 0.75× |
gpt-4 |
$30.00 / $60.00 | gpt-5.5 |
$5.00 / $30.00 | 0.30× |
gpt-3.5-turbo |
$0.50 / $1.50 | gpt-5.4-mini |
$0.75 / $4.50 | 2.25× more |
The arithmetic for the first row: o3-mini blends to (3 × $1.10 + $4.40) / 4 = $1.93 per million tokens. gpt-5.5 blends to (3 × $5 + $30) / 4 = $11.25. On output alone the jump is wider: $4.40 to $30.00, or 6.8×.
The gpt-4 and gpt-4-turbo swaps are straightforward savings. Anyone still on gpt-4 cuts their blended rate by 70% by moving.
The three swaps that raise your bill
o3-mini → gpt-5.5: 5.84× more
This is the one to look at first. o3-mini was a small, cheap reasoning model, and the named replacement is a full-size model priced like one. If you picked o3-mini because it was cheap, the named replacement does not match that choice.
There are cheaper options already in Promptster's model registry:
| Option | Price | Blended vs o3-mini |
|---|---|---|
gpt-5.5 (named) |
$5.00 / $30.00 | 5.84× |
gpt-5.4-mini |
$0.75 / $4.50 | 0.88× |
gpt-6-luna |
$0.10 / $0.50 | 0.10× |
gpt-5.4-mini is the replacement OpenAI names for o4-mini, which was priced identically to o3-mini. That makes it the like-for-like move on price.
gpt-3.5-turbo → gpt-5.4-mini: 2.25× more
gpt-3.5-turbo was $0.50 / $1.50. gpt-5.4-mini triples the output rate. gpt-6-luna at $0.10 / $0.50 is 0.27× the blended rate of gpt-3.5-turbo, so it is the cheaper move if your workload tolerates it.
gpt-4.1-nano → gpt-6-luna: 1.14× more
This one needs a note. OpenAI's own replacement for gpt-4.1-nano is gpt-5.4-nano ($0.20 / $1.25, blended 2.64× more than gpt-4.1-nano). But gpt-5.4-nano is itself scheduled to retire on 2027-04-01, with gpt-6-luna named as its replacement. Moving to it now buys you about five months before you migrate again.
So the table above, and Promptster's retirement notices, skip it and point at gpt-6-luna directly. Luna keeps the same $0.10 input rate and raises output from $0.40 to $0.50. On a 3:1 blend that is a 14% increase, the smallest of the three.
Do the cheaper options hold up?
We ran gpt-5.4-mini and gpt-6-luna through our October battery: three script-graded tasks (strict JSON extraction from a messy support ticket, a multi-step arithmetic word problem, and a three-bullet instruction-adherence task), five runs each, on 2026-10-19. Both passed all 15 calls. So did every other model in that battery, which means it cannot tell you that one of these is better than another. What it does tell you is that neither cheap option failed on ordinary structured work.
| Model | Calls passed | Measured cost, 15 calls | Median latency (all calls) |
|---|---|---|---|
gpt-5.4-mini |
15/15 | $0.014671 | 2.1 s |
gpt-6-luna |
15/15 | $0.001096 | 2.3 s |
Neither o3-mini nor gpt-5.5 was in that battery, so we have no measured comparison against them. If your o3-mini workload is hard multi-step reasoning, test it before you settle on the cheap option.
The parameter change nobody mentions
Four of the six retiring models (gpt-4.1-nano, gpt-4-turbo, gpt-4, gpt-3.5-turbo) accept temperature and max_tokens. Every replacement in the table is a GPT-5-or-later model, and those reject a custom temperature and expect max_completion_tokens instead.
If you call OpenAI directly, changing only the model string is not enough. A request that still sends temperature: 0.7 will fail. We covered that error and the fix in The temperature parameter deprecated error. The two o-series models already had these rules, so o3-mini and o4-mini users only need to change the id.
Inside Promptster you do not need to do anything: the OpenAI handler detects GPT-5-and-later ids and sends max_completion_tokens and reasoning_effort in place of temperature automatically.
What happens to your saved tests and schedules
The six retiring models are already out of Promptster's model picker. Their prices stay in shared/pricing.ts, so the cost history on saved tests that used them still renders correctly.
What Promptster does not do is change the model on a saved test or a schedule for you. A schedule pinned to gpt-4 will keep requesting gpt-4, and from 10-23 OpenAI will refuse the call. That is deliberate: a silent swap would change your results and your bill without your knowledge, which is the problem pinning exists to prevent.
As of 2026-10-20, Promptster tells you instead:
- In-app notifications. A retirement watch scans schedules, saved tests (including every slot of an N-provider comparison) and the last 30 days of your API requests for retired or retiring models, and sends one in-app notification per model naming the replacement and the test or schedule that uses it. It runs as a daily job that we are switching on this week, so if you are pinned to one of the six IDs above, expect a notification before the 23rd rather than a failed run after it.
- API warnings.
/v1/prompts/test,/v1/prompts/compareand the MCPtest_prompttool return awarningsarray with amodel_retiringentry (model, shutdown date, replacement) when a request names a model on the list. - Model picker badge. Any selectable model within 90 days of a scheduled shutdown shows a "Retires <date>" badge, so you see it before you build on it.
What to do before Friday
- Search your code and config for the six ids. Include environment variables and any model names stored in a database.
- Pick replacements on price as well as name. The
o3-miniandgpt-3.5-turbonamed swaps raise costs;gpt-5.4-miniandgpt-6-lunaare the cheaper alternatives. - Skip
gpt-5.4-nano. It retires 2027-04-01. - Remove
temperaturefrom requests to the new models if you call OpenAI directly. - Update pinned schedules and saved tests, then rerun them once to get a new baseline. Scheduled drift detection covers why that baseline matters.
- Keep pinning. The answer to a retirement is a planned swap, not a
latestalias that changes under you.
Try it yourself
- Run the version-pinning prompt — the instruction-adherence task from our battery, no account needed
To compare gpt-5.4-mini, gpt-6-luna and your current model on your own prompts before the 23rd, that's Promptster. For how this fits the wider open-versus-closed picture, see Benchmarking open-source vs. closed-source models.
Shutdown dates and replacements from shared/model-retirements.ts, which records OpenAI's deprecations page. Prices from shared/pricing.ts at list rate on 2026-10-19; blended rates weight input and output 3:1. Battery figures for gpt-5.4-mini and gpt-6-luna come from three script-graded tasks, five runs each, run 2026-10-19 through Promptster's provider handlers with max_tokens 1,500; GPT-5-and-later models reject a custom temperature, so none was sent. Latency is wall-clock from one machine. No retiring model was benchmarked; they were already removed from the runnable registry.