Codex CLI set to GPT-5.5, but Cloud Analytics attributes most turns to GPT-5.4

Open 💬 4 comments Opened Jun 22, 2026 by 0xZOne
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

<img width="3822" height="1863" alt="Image" src="https://github.com/user-attachments/assets/47263bb1-1591-4dc4-bf4e-fb2cfa4e945e" />

Summary

I'm on the ChatGPT Pro plan and use Codex almost exclusively through the Codex CLI, with my local config.toml explicitly set to GPT-5.5. However, the Cloud Analytics page (Settings → Analytics, chatgpt.com/codex/cloud/settings/analytics) under Usage → Turns → By model shows that the overwhelming majority of my turns over the last month (total 8,558 turns) are attributed to GPT-5.4, with GPT-5.5 only a thin band on top. I have never configured or manually selected GPT-5.4.

Expected behavior

With config.toml set to GPT-5.5, requests should run on — and be reported as — GPT-5.5.

Actual behavior

Analytics attributes the vast majority of turns to GPT-5.4 (legend shown: gpt-5.4, gpt-5.5, gpt-5.4-mini, gpt-5.3-codex-spark).

Questions

  1. Why is GPT-5.4 used for the vast majority of turns when my config is set to GPT-5.5?
  2. Are requests being automatically routed / fell back to GPT-5.4? If so, what triggers it (capacity limits, task type, Pro-plan quota policy)?
  3. Is this a reporting/display issue in Analytics, or is the actual model being called different from my config?
  4. How do I ensure requests always use my configured GPT-5.5?

Environment

  • Plan: ChatGPT Pro
  • Surface: Codex CLI (codex-cli 0.141.0)
  • OS: Windows 11
  • ~/.codex/config.toml:

``toml
model = "gpt-5.5"
model_reasoning_effort = "xhigh"
``

Related

Forum discussion (with Analytics screenshot): https://community.openai.com/t/codex-analytics-shows-gpt-5-4-for-most-turns-but-my-cli-is-configured-to-gpt-5-5-why/1384303

View original on GitHub ↗

4 Comments

github-actions[bot] contributor · 2 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #29362

Powered by Codex Action

Necmttn · 2 months ago

For this to be debuggable from the CLI side, I would want the analytics row to separate four fields instead of one model label: requested_model, effective_model, billable_model, and routing_reason.

That would distinguish a real fallback from a display/aggregation bug. Pair it with surface (cli/desktop/cloud), request id, plan bucket, and timestamp, and users can reconcile local config against cloud analytics without guessing which side is lying.

Generated with ax - https://github.com/Necmttn/ax

0xZOne · 2 months ago

<img width="3822" height="1731" alt="Image" src="https://github.com/user-attachments/assets/dae92633-8359-4386-8928-7d609d96d659" />

Additional context:

Before May 15, 2026, my Codex usage looked normal and I was normally using GPT-5.5.

sada913 · 2 months ago

I encountered the same issue as well.

After checking the forum, it seems that in 5.4, the execution of the auto review sub-agent is reflected there.

https://community.openai.com/t/5-5-xhigh-requests-going-to-5-4-solved/1384128/5