# I wanted to know which project was eating my Claude Code quota

> Source: <https://dev.to/rosehsu47/i-wanted-to-know-which-project-was-eating-my-claude-code-quota-5e7k>
> Published: 2026-10-05 17:10:37+00:00

When I hit my Claude Code 5-hour or weekly limit, I want to know which project used it up. `/usage` doesn't answer that. It gives account-wide percentages plus a few tags like ">150k context" or "4+ parallel sessions". Nothing is broken down per project, and I can't check those percentages against anything.

Claude Code already writes per-message token usage into every local session transcript under `~/.claude/projects/*/*.jsonl`. So I wrote a plugin, quota-audit, that reads those files and breaks the usage down per project and per skill. It also shows the exact times a rate limit was hit and which repo was blocked. Everything stays on your machine. It only reads those files and sends nothing anywhere.

It opens with a few computed findings. After that comes one overview row per window (5h, 24h, 7d), then detail for the longest window. Here's a trimmed example:

```
KEY FINDINGS (7d window)
  • Estimated cost $147.31, 65% of it in my-app ($95.20)
  • Top skill is ai-work at 54%
  • 11 sessions crossed 150k context, $88.40 combined (60% of window cost)
  • 3 rate-limit hits in 7d; 14 all-time, most often blocking my-app (9 times)

window     est. cost  sessions   >150k   hits   top project
5h            $12.40         5       2      0   my-app 81%
24h           $38.75        21       4      1   my-app 70%
7d           $147.31        99      11      3   my-app 65%
```

Skills are attributed per message, not by whatever command a session started with, so the split between named skills and general interactive use holds up. Sessions that crossed 150k context are listed by name with the most expensive first, because that's usually the biggest lever. Rate-limit hits are grouped by repo and time of day.

There's also a check for polling loops, like a browser tab or script left open and calling something every minute or two. Those inflate session counts without spending real quota. To see every window's detail and every individual hit, pass `--full` to `render.py`.

The current version is v1.3.0. Inside an interactive Claude Code session:

```
/plugin marketplace add rosehsu47/claude-code-quota-audit
/plugin install quota-audit@rosehsu47
```

Or non-interactively:

```
claude plugin marketplace add rosehsu47/claude-code-quota-audit
claude plugin install quota-audit@rosehsu47
```

If the install summary says `Run /reload-plugins to activate`, run that. After that, ask something like "who's eating my quota" or "which repo is burning through my 5-hour limit". You can also call `/quota-audit` directly. The report comes out in English or Traditional Chinese depending on your locale. Set `QUOTA_AUDIT_LANG=en` or `QUOTA_AUDIT_LANG=zh` to force one.

The dollar figures are estimates from a pricing snapshot bundled with the plugin. They are not your bill. I'd trust the ratios between projects more than the absolute total, and I'd check the total against a live `claude -p "/usage"`. Per-project subagent cost isn't available. Like `/usage`, it only sees the machine it runs on, not other devices or claude.ai.

The code is at [github.com/rosehsu47/claude-code-quota-audit](https://github.com/rosehsu47/claude-code-quota-audit), and I'd like to hear how other people figure out where their quota goes.
