
OpenAI filed the paperwork today: GPT-4o, GPT-4o mini, GPT-4.1, and GPT-4.1 mini are being pulled from the API on January 14, 2027. If you have fine-tuned models on any of these, the window is tighter — new training jobs freeze on January 6. The replacement is gpt-6-luna, which is 96% cheaper and outperforms GPT-4o on quality benchmarks. Here is what you need to change and when.
Which Models Are Affected
These are the specific model IDs going dark on January 14:
gpt-4o-2024-08-06gpt-4o-2024-11-20gpt-4o-mini-2024-07-18gpt-4.1-2025-04-14gpt-4.1-mini-2025-04-14
Any fine-tuned model built on these bases follows the same schedule. If you hardcoded a snapshot ID in your application, your code breaks on that date. If you used a generic alias like gpt-4o, OpenAI will auto-redirect you — but verify that behavior in your environment before trusting it.
Two Dates That Matter
Most coverage will focus on January 14. The date that matters more if you own fine-tuned models is earlier: January 6, 2027 is the last day to create new fine-tuning jobs on any of the deprecated base models. After that, you can still run inference on existing fine-tuned models until the 14th — but you cannot retrain or create new variants.
Write both dates down. Miss January 6 and you have no path to iterate your fine-tuned model before the lights go out.
GPT-6 Luna: The Replacement
Luna is not just the default fallback — it is genuinely better across most dimensions. At $0.10 per million input tokens and $0.50 per million output tokens, it costs 96% less than GPT-4o ($2.50/$10.00). Its context window is 1,050,000 tokens, roughly eight times larger than GPT-4o’s 128,000. On the composite quality index, it scores 167% higher than GPT-4o. See the full benchmark breakdown for a detailed comparison.
The one real tradeoff is streaming latency. Luna is a reasoning model — it thinks before it outputs, so per-token streaming is slower than GPT-4o. For interactive, low-latency applications, test carefully. For batch processing, agents, and anything where quality matters more than time-to-first-token, Luna is the obvious upgrade.
How to Migrate
OpenAI’s official migration guide recommends four steps. Follow them in order and do not skip the baseline phase — you will need it to catch regressions.
- Baseline. Record a set of representative production requests and their current outputs. This is your ground truth.
- Evaluate with Luna. Run the same requests through
gpt-6-lunawithreasoning_effortset to"none". This mode makes Luna behave closest to GPT-4x without engaging the reasoning engine. - Adjust. Compare outputs. Tune prompts, adjust verbosity expectations, and check formatting assumptions. Most prompts migrate cleanly; some verbose outputs need trimming instructions added.
- Gradual rollout. Route 5–10% of production traffic to Luna, monitor quality metrics, latency, and error rates, then increase incrementally.
Breaking Changes to Catch Before You Ship
Two specific API parameters that will break your calls:
temperature and top_p: Luna rejects both. If your code passes these parameters, your API call returns an error. Remove them from any request targeting Luna.
Function tools with reasoning enabled: If you use function calling with any reasoning_effort setting other than "none", you must switch from /v1/chat/completions to /v1/responses. Starting with reasoning_effort: "none" lets you stay on the completions endpoint during initial migration.
# Before (breaks January 14, 2027)
response = client.chat.completions.create(
model="gpt-4o-2024-08-06",
temperature=0.7, # Remove this
top_p=0.9, # Remove this too
messages=[{"role": "user", "content": prompt}]
)
# After (working Luna call)
response = client.chat.completions.create(
model="gpt-6-luna",
# reasoning_effort="none" for closest GPT-4x parity
messages=[{"role": "user", "content": prompt}]
)
If You Have Fine-Tuned Models
This is the group that needs to move fastest. Before January 6:
- Export your training data from the OpenAI platform
- Start a new fine-tuning job targeting
gpt-6-luna - Evaluate the new fine-tuned Luna model against your benchmarks
- Update your endpoint references from
ft:gpt-4.1-...to the new fine-tuned Luna model ID
Fine-tuning on Luna is available now. There is no technical reason to wait — and the cost of training is lower given Luna’s pricing. The only reason people will miss January 6 is procrastination.
Start Now
91 days sounds like enough time until your Q4 roadmap fills up. The migration itself is straightforward — OpenAI did the work to make Luna the clear upgrade path. What takes time is evaluating output quality, catching the temperature/top_p parameter errors in your codebase, and retraining any fine-tuned models. Check the GPT-4o vs Luna side-by-side comparison if you need to build a case internally for the switch.
The official deprecation page lists all affected models and dates. January 14 is a hard cutoff with no grace period.













