Codex feels slow today, or a command keeps failing. Before you change your model or your setup, look at the numbers. The Telemetry view of Usage Insights for Codex shows how long turns take, what goes wrong and where the time is spent.
Read turn times
Press Telemetry. Turn duration shows how long a prompt took from start to finish, tools included, with the median (p50) and the slow end (p95). p50 and p95 by day draws both over the range.
A rising p95 with a flat p50 means a few turns got much slower: long commands, big patches or retries. Both rising together is usually the model or the service.
Find the errors
Turn error rate counts turns that failed, by error class, with a bar per day under it. A spike on one day is often the service; the same class every day is your setup.
Tool success rate lists the twelve most-used tools with their success over 30 days. A command tool below 90% points at a broken test script or a missing dependency.
See what was allowed
Permission decisions splits tool calls into Ran, Declined (you said no) and Blocked (a rule or the sandbox stopped it), by where the tool comes from. Many blocked calls of one kind mean a rule could allow them, or Codex keeps trying something it should not. Skill activations sits under it.
Compactions and where the time goes
Compactions counts how often the context was compacted, automatically or by you, and the average context before and after. Where the time goes splits the time into the model, commands and retries.
If commands take a large share, a faster test command helps more than a faster model. If it is nearly all model, a lower reasoning effort for routine work is the lever.
Send it to your own tools
Codex OpenTelemetry reference at the bottom lists what Codex can send to an OpenTelemetry collector, with the [otel] table to add to ~/.codex/config.toml. Leave log_user_prompt off so prompt text stays out.
Next: a Codex usage dashboard for a team, and taking the report with you.