Stats for Nerds
What counts?
We add up completed Codex turns over the last 30 full days, ending yesterday. If three agents each run for an hour, that counts as three agent hours. Days with no use still count in the average.
Which sessions?
The default counts interactive sessions. Add
--include-exec to count batch sessions too. These
scores have their own community list.
How does the math work?
Daily hours = total hours ÷ 30. The preview multiplies agents by hours per agent. The optional ratio divides agent hours by your estimated time: weekly hours × 30 ÷ 7.
What about gaps and missing logs?
Each gap between recorded events counts for up to 30 minutes. Sparse logs use a short fallback estimate. Unfinished turns do not count. Missing logs can lower your score.
Which day gets the hours?
A turn's full time counts on the day it started, in your chosen timezone. We count matching turn IDs only once when you combine profiles or machines.
Published benchmarks ↗ · Full method ↗
No uv? Use Python 3.11 or later:
python -m pip install codex-agent-hour-tracker
agent-hours
--share --format json
YOUR CODEX HOURS, COUNTED LOCALLY
Your day has 24 hours.
Your agents can have more.
See how long your agents ran over the last 30 days. Agents working at the same time each count.
Hours show runtime, not work quality or time saved. All scores are self-reported and unverified.
1. Run this on your machine
uvx codex-agent-hour-tracker --share --format json
Needs uv and local Codex sessions. The command reads timing data, not your chats.
See what others are running.
Browse the community’s self-reported scores, or choose to share your own.
Visit the community ↗