Skip to content
Menu-bar app for Claude Code

See what your Claude Code consumes and spends.

A menu-bar dashboard tracking token usage and cost by model — daily, weekly, monthly — plus MCP and Skill call counts. Read-only, zero intrusion.

View on GitHub
Tokenscope
Day
Week
Month
Total tokens
0.00M14%
Est. cost
$46.10
Input 8.13M Output 4.27M56% cached
Mon
Tue
Wed
Thu
Fri
Sat
Sun
Tokens by model
Claude Sonnet 4.5
5.82M46.9%
Claude Opus 4.1
3.07M24.8%
GPT-5
1.94M15.7%
Gemini 2.5 Pro
910K7.3%
Llama 3.3 70B
660K5.3%

Daily, weekly, monthly token usage breakdowns.

Stats by model share, plus MCP and Skill call counts. Spot which models burn the most and which tools you actually use.

Cost by model

Where the dollars actually go, per period.
$46.10
Opus 4.1$19.10
Sonnet 4.5$18.40
GPT-5$6.20
Gemini 2.5 Pro$2.40
Requests
2,847
143 sessions
Cost trend
$46.10
this week

Tools you actually use

Only the MCP servers and Skills you installed yourself.
MCP calls10 · 5 servers
github
3
playwright
2
figma-dev-mode
2
context7
2
firecrawl
1
Anthropic's bundled MCP and every built-in tool are filtered out.
Skill calls12 · 5 skills
find-skills
4
skill-creator
3
design-taste-frontend
2
seo-audit
2
vercel-react-best-practices
1
Read from your own ~/.claude/skills/ directory.

Token usage heatmap

Daily token volume across the last twelve months.
DecJanFebMarAprMayJun
LessMore

Cache changes everything

56% cached
Claude Code writes long context into a prompt cache (cache write), and the next time the same context is sent it's replayed from there (cache read) — no need to re-process it. Cache writes cost about 25% more than fresh input, but cache hits are priced at roughly 10% of fresh input. Inside a running session, the system prompt, project files, and tool descriptions are carried along as context with every turn, so the higher the hit rate, the less the same conversation costs.

Read-only by design — no telemetry, no API key.

Tokenscope reads the JSONL request logs your Claude Code already writes to disk. No uploads. No API keys. No calls to Anthropic. Nothing leaves your computer. No security or privacy concerns, and no usage data is ever tracked or analyzed.

Read

Scans ~/.claude/projects/**/*.jsonl for every assistant message, its usage, model, and tool calls.

Dedupe

Collapses streaming retries by message.id and merges multi-line messages, so each turn is counted exactly once.

Price

Matches models.dev first, then LiteLLM, then a built-in snapshot. Cached for 24 hours with an offline fallback.

Show

Renders today's usage in the menu bar and the full dashboard a click away, auto-refreshed every 30s in the background, with right-click to refresh on demand.

How your Claude Code token cost is calculated.

Each JSONL request logs token usage. Tokenscope rolls it up per session, multiplies each type by its own rate, and sums the four to get the request's total cost.

// claude-sonnet-4-6 · one coding session
tokens: {
  input_tokens               : 88,000
  cache_creation_input_tokens: 1,120,000
  cache_read_input_tokens    : 2,400,000
  output_tokens              : 320,000
}
typetokens × $/Mcost
Input88,000 × $3.00$0.2640
Cache write1,120,000 × $3.75$4.2000
Cache read2,400,000 × $0.30$0.7200
Output320,000 × $15.00$4.8000
total · one session$9.98

Notice that 2.4M cache-read tokens cost just $0.72. while 0.32M output tokens cost $4.80, over six times more on far fewer tokens. Cost is summed from each model's per-type input/output rates — for reference only; your actual bill is authoritative.

Install on macOS or Windows.

On macOS, one line of Homebrew clears the quarantine flag for you, so it's ready to use right away. On Windows, download the installer and run it. Either way, it starts in your menu bar on every boot.

macOS
$ brew install --cask hdusy/tokenscope/tokenscope
Windows
Download .exe (x64)

Unsigned build — on first launch click More info → Run anyway to clear SmartScreen.

Prefer a direct download on macOS? Grab the universal .dmg from GitHub Releases. It is an unsigned build, so on first launch right-click and choose Open, or run xattr -cr /Applications/Tokenscope.app once in the terminal.

Frequently asked.

The questions that come up before someone chooses Tokenscope.

No. It reads the JSONL logs your Claude Code already writes to ~/.claude/projects/, prices them against a locally cached snapshot of models.dev / LiteLLM, and renders the statistics in your dashboard. No telemetry, no account, no API key.
Tokenscope isn't code-signed through the Apple Developer or Windows publisher programs yet. On macOS, Homebrew clears the quarantine flag for you, so the brew route is ready to use right away. For a direct .dmg download, right-click → Open the first time, or run xattr -cr /Applications/Tokenscope.app and then open it. On Windows, the .exe installer is unsigned, so on first launch click More info → Run anyway to clear SmartScreen.
Input/output types — input, cache write, cache read, output — are each priced at their corresponding rate, pulled from models.dev first, LiteLLM as a fallback, then a built-in snapshot if you're offline. Rate data is cached on disk for 24 hours. Numbers track Anthropic's billing to the cent for priced Claude models; any model with no published pricing is temporarily flagged as “unpriced” in the panel.
ccusage is a terminal CLI over the same JSONL files. Run npx ccusage and you get a one-shot summary in the shell. Tokenscope reads the same logs and uses the same models.dev / LiteLLM rate tables, but as a menu-bar GUI: today's token cost is always visible, the panel adds bar charts, a donut chart, and a heatmap. Reach for ccusage when you want a scriptable terminal command; reach for Tokenscope when you want to visualize usage anytime.
No — they are different tools that happen to share a name. opencode-tokenscope is a plugin for opencode that analyzes token usage and cost inside opencode sessions; Tokenscope is for Claude Code. Different ecosystems, no shared code. That said, Tokenscope is open source — you're welcome to fork it and spin up an opencode edition.
The background process watches the projects directory for file changes and only re-parses files whose mtime moved. Idle CPU is essentially zero; memory holds steady around 40MB. Refreshing the panel is just a single pass over the new JSONL bytes since the last read. Performance is excellent.
Today only Claude Code's JSONL format is parsed. Other tools write different shapes — if you want one supported, open an issue on the repo with a redacted log sample and I'll consider adding support.
Yes. MIT licensed, no paid tier, and it never sells your data. The repo is at github.com/HduSy/tokenscope.

Reviews from developers tracking their Claude Code cost.

A few notes from developers who installed Tokenscope and kept it.

Genuinely fun to use - every time your usage ticks past another 100M tokens, Tokenscope sets off this little fireworks animation 🎉. Weirdly satisfying, and it actually makes you feel like you've accomplished something.
alifeiliuFull-stack (Frontend) Engineer
The token count is spot-on. I ran Tokenscope against GLM-5.2 for a while and cross-checked with the Coding-Plan dashboard - the two lined right up. The dollar figure is an estimate, of course.
alifeiliuFull-stack (Frontend) Engineer
One thing Tokenscope is great for: seeing how many tokens you actually get out of the various Coding-Plan and subscription tiers within a refresh window. Zhipu Lite's 5h Coding-Plan comes to about 20M; ByteDance Volcano Ark's Pro 5h plan, roughly 70M.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope's Tokens/Cost by Model view makes it dead easy to compare how pricey different models are. Same token usage, GLM-5.2 runs about a seventh of what Claude-Opus-4-8 costs.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope gives you daily, weekly, and monthly breakdowns - the weekly and monthly views even reveal your own AI-usage habits and patterns, which is pretty cool. Plus there's a GitHub-style commit heatmap that shows the full picture of how much you've poured into AI.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope's screenshot feature is really handy too - easy to share straight to your socials, so everyone can compare notes and show off their 'report cards'.
alifeiliuFull-stack (Frontend) Engineer
Genuinely fun to use - every time your usage ticks past another 100M tokens, Tokenscope sets off this little fireworks animation 🎉. Weirdly satisfying, and it actually makes you feel like you've accomplished something.
alifeiliuFull-stack (Frontend) Engineer
The token count is spot-on. I ran Tokenscope against GLM-5.2 for a while and cross-checked with the Coding-Plan dashboard - the two lined right up. The dollar figure is an estimate, of course.
alifeiliuFull-stack (Frontend) Engineer
One thing Tokenscope is great for: seeing how many tokens you actually get out of the various Coding-Plan and subscription tiers within a refresh window. Zhipu Lite's 5h Coding-Plan comes to about 20M; ByteDance Volcano Ark's Pro 5h plan, roughly 70M.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope's Tokens/Cost by Model view makes it dead easy to compare how pricey different models are. Same token usage, GLM-5.2 runs about a seventh of what Claude-Opus-4-8 costs.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope gives you daily, weekly, and monthly breakdowns - the weekly and monthly views even reveal your own AI-usage habits and patterns, which is pretty cool. Plus there's a GitHub-style commit heatmap that shows the full picture of how much you've poured into AI.
alifeiliuFull-stack (Frontend) Engineer
Tokenscope's screenshot feature is really handy too - easy to share straight to your socials, so everyone can compare notes and show off their 'report cards'.
alifeiliuFull-stack (Frontend) Engineer

Start watching your tokens.

Free, MIT licensed, and it lives in your menu bar.

View on GitHub