You pick the cheap model to save money, and 20 minutes later you are still watching it go in circles. That is the classic mistake with AI coding tools: the price per run looks great, but the price of getting the job finished does not.
Short answer: use Luna for clear, repetitive jobs, Sol for everyday Codex work, and Astra for messy problems where nobody knows yet what is broken. Below is why the most expensive model can end up being the cheapest per finished task.
1. What was added in September 2026
OpenAI released GPT-6 Sol and GPT-6 Luna in the API on September 22, 2026, and added both to ChatGPT Work and Codex.[1][2]
OpenAI pitches Sol for complex coding and multi-step jobs where the model uses tools on its own. Luna is built for narrow jobs done in large numbers. Both can take in up to 1.05M tokens at once and write up to 128K tokens in one answer.[3][4][5]
Above them sits GPT-6 Astra, which OpenAI describes as its model for the hardest jobs from start to finish: coding, operating a computer, research and writing documents.[6]
In office terms:
- Luna: the low-cost helper who clears the pile of routine tasks
- Sol: the reliable lead you hand most of the work to
- Astra: the person who walks into the server room and immediately asks why that cable is plugged in backwards
2. "GPT-6 is in ChatGPT" doesn't mean what you think
The ChatGPT release notes from September 22 say Sol and Luna were added to ChatGPT Work and Codex, and that they are separate from the models available in regular Chat.[1]
So "Sol is part of ChatGPT" and "you can pick Sol in a normal chat" are two different claims. Dig through the regular chat model menu looking for it and you are hunting for a treasure chest that isn't in this dungeon.
Astra is different again: its announcement in early September said it would also roll out to paid ChatGPT plans.[6] Same GPT-6 name, different places to find each one.
3. The price tags are wildly different
Standard API prices as of September 23, 2026, per 1 million tokens of input / output:[3][4][6][7][8][9]
| Model | Input | Output |
|---|---|---|
| GPT-6 Luna | $0.10 | $0.50 |
| GPT-6 Sol | $2.00 | $10.00 |
| GPT-6 Astra | $10.00 | $50.00 |
| GPT-5.6 Luna | $0.20 | $1.20 |
| GPT-5.6 Terra | $2.00 | $12.00 |
| GPT-5.6 Sol | $4.00 | $20.00 |
For the same amount of text, Sol costs about 20× Luna, and Astra costs 5× Sol.
Looking at this table alone, "just use Luna for everything" sounds smart. It's the same logic as saving on movers by carrying the fridge across town on your back.
4. Quick math: one task with 100K tokens in, 20K out
Say a task reads 100,000 tokens and writes 20,000. Leave out caching discounts, tool fees, extra charges for very long inputs, and retries.
| Model | Rough API cost per run |
|---|---|
| GPT-6 Luna | $0.020 |
| GPT-6 Sol | $0.400 |
| GPT-6 Astra | $2.000 |
| GPT-5.6 Luna | $0.044 |
| GPT-5.6 Terra | $0.440 |
| GPT-5.6 Sol | $0.800 |
On raw price, Luna wins by a mile.
But the number that matters is a different one:
cost to finish ≈ cost per attempt × number of attempts + time a person spends stepping in + context lost when an attempt fails
At the same token count, one Astra run costs the same as five Sol runs. If Sol needs five tries on a hard task and Astra gets it in one, the API bill is already even.
Add the time you spend rereading logs and typing "no, not there, we already checked that," and Astra pulls ahead even sooner.
5. The expensive model really can cost less
OpenAI's own numbers back this up. On Terminal-Bench 4.0, GPT-6 Astra scored 57.9% against 37.3% for GPT-5.6 Sol, and OpenAI reports that Astra's estimated API cost per task was about 9% lower in the setups it compared.[6]
On AutomationBench the gap was 41.4% vs 18.1%, and on OpenAI's internal tasks of moving databases to a new structure, 63.9% vs 42.7%.[6]
A higher price per token and a higher cost to finish the job are two different things.
Astra also gives Codex a new way to keep and look up earlier context during long sessions.[6] In long bug hunts and big code cleanups, that means fewer rounds of forgetting why the last fix failed and walking straight back into the same hole.
A taxi is expensive. It is still cheaper than walking around the mountain three times and then calling one.
6. Sort the task first instead of always starting cheap
Pushing every job through Luna, then Sol, then Astra until something works is the wrong habit. Look at the shape of the task, send it to the right model from the start, and move up one level after one honest failure.
GPT-6 Luna
Good for:
- searching code, making lists, sorting and reformatting
- small edits with a clear spec
- lots of independent jobs at once
- running tests and summarizing the results
- work where a script can tell pass from fail
GPT-6 Sol
Good for:
- normal changes across several files
- bug fixing when you roughly know where the problem is
- jobs that need a few tools in a row
- the usual look → fix → test loop
- your everyday Codex default
GPT-6 Astra
Good for:
- problems where you don't even know what is broken
- issues that cross several services, permissions, networks or saved state
- long debugging sessions
- database moves and large code reorganizations
- the task that gets 80% done and dies at the same spot every time
- anything Sol has already investigated properly once without closing
That last group is where cheap models start doing "AI overtime": more searching, more tokens, more logs, and no closer to the real cause.
7. Where does GPT-5.6 Terra fit now?
On price alone, Terra is in an awkward spot.
- GPT-5.6 Terra: $2 input / $12 output
- GPT-6 Sol: $2 input / $10 output
Same input price, cheaper output for Sol.[3][8] Sol is also the newer model, aimed at complex coding and multi-step tool work.[3]
So for a new project there is little money reason to default to Terra. If you already have prompts tested on Terra and need results you can predict, keeping it is still reasonable. Models get replaced fast, so don't swap everything the day a new one ships.
For new setups, three tiers cover most of it:
Luna = volume and clear rules. Sol = the default. Astra = the hard cases.
8. Test it on 20 of your own tasks
Benchmarks are a map, not the wiring diagram of your own codebase.
Split your real work into three to five types and log about 20 tasks of each. Track:
- how often it finished without extra instructions from you
- time until the tests pass
- number of retries
- tokens or credits used
- how much log output a person had to read
- new bugs it introduced
- how often you ended up switching models anyway
Then judge by:
total cost per finished task
and
how much work gets done per minute of your attention
Choosing by price per token is like ordering four small cheap meals, still being hungry, and then ordering the big set meal anyway. All you did was order more often.
Conclusion: Sol for everyday work, Luna for routine volume, Astra for the maze
GPT-6 Luna: many clear, independent tasks.
GPT-6 Sol: normal Codex work.
GPT-6 Astra: vague, long problems that cross several systems.
The costly move usually isn't picking Astra. It's running Luna or Sol on a hard problem again and again to avoid Astra, then handing it to Astra at the end anyway.
What a top model buys you is not cheaper words but a better chance of finishing without getting lost. And the time you spend reading the same log for the fourth time is a cost too.
References (9)
- OpenAI, ChatGPT Release Notes, Sep. 22, 2026 help.openai.com
- OpenAI API Changelog, Sep. 22, 2026 developers.openai.com
- OpenAI, GPT-6 Sol model developers.openai.com
- OpenAI, GPT-6 Luna model developers.openai.com
- OpenAI, Models catalog developers.openai.com
- OpenAI, GPT-6 Astra openai.com
- OpenAI, GPT-5.6 Sol model developers.openai.com
- OpenAI, GPT-5.6 Terra model developers.openai.com
- OpenAI, GPT-5.6 Luna model developers.openai.com






