Build a Contact page for this website with a form (name, email, message),
send the submission to the company address, and finish the page before you
answer.
In the Invoker Assistant you pick a provider and a model per chat. On the Codex side there are five: GPT-5.5, GPT-5.6 in the Sol, Terra and Luna variants, and GPT-6-Astra. The question we get most about that is simple: which one should I have?
The honest answer is that it matters less than you think, and that the difference there is comes down mostly to pace. Here is what we measured ourselves.
What we measured ourselves
For our series of build runs we let an assistant build a complete website in four instructions, in automatic mode, with the time per instruction in the log.
| Model | Instructions | Net time |
|---|---|---|
| GPT-6-Astra | 4 | 25 minutes |
| GPT-5.6 Sol | 4 | 8 minutes 30 seconds |
Do not read that as a scoreboard. The instructions were not the same: one run started on an empty domain with a WordPress install and a custom plugin, the other built a bilingual site with a booking form. So compare tasks, not models.
What you can take from it: on Astra you wait minutes per instruction, on Sol seconds to a couple of minutes. For a task you leave running that makes no difference. For five small changes in a row it does.
Astra is thorough, not fast
GPT-6-Astra does a lot without being asked. In our run it wrote its own tests, looked at its own work with screenshots on desktop and mobile, and checked afterwards whether the page did what was asked. That is where those minutes go.
For an instruction that has to be right first time, that is exactly what you want. For "make that heading one size bigger" it is not.
Sol fills things in faster by itself
GPT-5.6 Sol works in shorter strokes and fills in missing details more readily with recognisable example values, such as an address or a phone number, and tells you afterwards. In our run that produced a complete bilingual site with a working request form in eight minutes.
That is a trait, not a fault. But it means that after a big instruction you have to go through which details are not real yet. That is usually in the answer itself, at the bottom.
On Terra and Luna we have no figures of our own
GPT-5.6 Terra and Luna are selectable, and we have not done build runs with them. We are not putting numbers here that we did not measure. If you want to try them, that is exactly what the per chat model choice is for: your website notes and your previews stay the same, so you can run the same instruction on two models and judge for yourself.
What matters more than the model
In automatic mode Codex asks nothing along the way. It works on with assumptions instead of stopping at a missing detail. That goes for all five models, and it shapes your result more strongly than your model choice does.
Three things that always help, whatever the model:
- Say what has to be finished. "Finish the page before you answer" prevents an answer that ends with "I will let you know when it is done".
- Give the details up front. Address, phone number, opening hours. Otherwise it fills them in and you have to go find them afterwards.
- Write the result into the notes. Every chat starts fresh; the website notes are the only bridge between two instructions.
There is more on that in writing instructions for Codex.
What the model cannot help
Twice an instruction of ours came to a halt over something outside the model, and that is useful to know before you blame a model.
The sandbox. Codex works in a fenced off folder. A tool that has to write outside that folder gets stuck, even when the instruction is entirely right. See the Codex sandbox and workspace-write.
Limits of your plan. In one of our runs the first instruction failed because the account had already reached its maximum number of databases. What struck us: it did not simply delete one, it stopped and asked which one could go. In automatic mode that is exactly the right behaviour.
Common mistakes
"I always pick the newest model." For us the newest is also the most thorough, and therefore the slowest. For small changes that is a waste of your time.
"I compare two models on two different tasks." Then you are comparing the tasks. If you really want to choose, give the same instruction from the same starting point.
"The model is slow, so it does not work." First check whether something is waiting on a tool or on a limit of your plan. In our own series the longest wait of all runs was a hiccup in the connection, not in the model.
"I switch models halfway through an instruction." Switch between instructions, not inside one. A chat that changes model halfway loses the thread of what was just agreed.
"I pick a Codex model and I am stuck with it all year." You pick per chat, and that goes for Claude versus Codex as well. See choosing Claude Code or Codex for the difference between the two sides.