Where did my Codex / Claude Code quota go?
QuotaTrace reads the session logs already on your machine and lines up your plan's quota percentage with the tokens behind every call. You see which quota jumps were out of line with your work, and what actually burned your tokens.
Run it
$ npx github:lowkey-studio/quotatrace --since 30d
.codex/sessions or .claude/projects folder and the analysis runs inside the page.
Writes quotatrace-report.md with counts only (hashed session ids, no prompts, paths or file names), so you can attach it to an issue or a support ticket.
| Time (UTC) | Quota jump | Tokens since last step | Expected |
|---|---|---|---|
| 2026-10-10 15:20 | +9% | 123,300 | +0.1% |
- Waiting and polling: 40 calls (22.2%) followed a sleep / wait poll, costing 4.77M tokens (28.6%).
- One 60,000-token command output was re-sent 109 times: 6.54M input tokens.
What the report shows
Quota points per million tokens, per window
Codex logs used_percent with each call. Comparable work should cost comparable points per million tokens; a sudden multiple on the same plan and model points to metering, not you.
Quota jumps out of line with the tokens behind them
With UTC timestamps. Jumps with zero local calls point to another device, a cloud task or background use.
Where the tokens went
Context replay, big-context calls that produced almost nothing, sleep and wait polling, and the tool outputs that were re-sent on every later call (size × times re-sent).
Claude Code
Cache writes vs reads, cache rebuilt after a pause, subagent share, and the tool results that were re-read the most.
Claude Code keeps your plan's usage percentage out of its transcripts, so quotatrace meter install adds a status line hook that records it (your existing status line keeps working). After that you get quota points per 1M tokens for Claude Code too.
Live speedometer
Tokens per minute and cache hit rate per running session, quota points per hour, and time until each window is empty.
$ npx github:lowkey-studio/quotatrace live
Can you trust it with your logs?
No network requests
The CLI has no fetch, http or net imports: check it. The browser version keeps working after you disconnect.
Small and read-only
Under 800 readable lines with zero dependencies. It only reads your logs and writes one report. Source: github.com/lowkey-studio/quotatrace
Contribute to the public quota dataset
This prints a link to a prefilled GitHub issue holding only per-window aggregates (date, window, plan, points used, thousands of tokens). You review it before posting. Pooled, these show what a quota point buys per plan and model, and when that changed.
$ npx github:lowkey-studio/quotatrace --share
Caveats
- Only calls logged on the machine you run it on are counted.
- Codex reports quota in whole points, so short windows are noisy.
- Tool-output sizes are estimated at 4 characters per token.
- Claude Code does not log your plan's usage percentage, so its section reports tokens.