Reasoning effort is how much the model thinks before it answers. More effort means slower turns and more tokens, and better results on problems that need several steps of reasoning. Set it in any of these places:
bash
# Default, in ~/.codex/config.toml
model_reasoning_effort = "high"
# One run
codex -c model_reasoning_effort=high
# Mid-session: /model, then pick the level
The levels belong to the model, not to Codex. OpenAI's config reference lists low, medium, high, xhigh, max and ultra as examples and says the available levels depend on the model. On the ChatGPT login we checked in October 2026, the catalog described them like this:
| Level | Catalog description |
low | Fast responses with lighter reasoning |
medium | Balances speed and reasoning depth for everyday tasks |
high | Greater reasoning depth for complex problems |
xhigh | Extra high reasoning depth for complex problems |
max | Maximum reasoning depth for the hardest problems |
ultra | Maximum reasoning with automatic task delegation |
Not every model offered every level: some stopped at max. Older guides mention minimal, which none of those models listed. Run the catalog command above to see the levels for your models today.
The default is per model
If you never set model_reasoning_effort, Codex uses the model's own default_reasoning_level, and that is not the same everywhere. In the same catalog some models defaulted to low and others to medium. So switching models without setting effort can quietly change how hard Codex thinks. Set the key explicitly if you compare models or care about cost.
Plan mode has its own setting
plan_mode_reasoning_effort sets the level used while Codex is in plan mode (/plan). When it is unset, plan mode uses its built-in preset default rather than following your normal setting.
Which level to use
- Low or medium for edits you could describe in a sentence, renames, test scaffolding and questions about the code.
- High for debugging, refactors across several files and anything where a wrong first guess is expensive.
- The top levels for a stuck problem, not as a default. They spend your usage limit fastest, and on a ChatGPT plan that is the budget that runs out. See Codex usage limit reached.