AI Token Usage Monitors for macOS

A practical look at menu bar apps that show how much quota you have left, what they actually read from your machine, and which one fits which workflow.

Let me explain why I started looking for a token usage monitor in the first place. When I work on something, I usually dive in completely. My head builds a fragile mental web of bits and pieces: the task itself, snippets of code, overlapping ideas from a dozen open tabs, docs, saved articles, replies from different LLMs, and so on. And then, in the middle of all that, at the most inconvenient moment possible, your main LLM tells you that your quota is gone.

That’s annoying because you have to stop or park your work right when your thought process has built up momentum. Sure, you still have a brain and you should use it. But AI is a convenient and powerful tool, especially once you have a decent grasp of how to use it properly. So when it suddenly “switches off” mid-process, it throws you off your rhythm.

To avoid this, you need to track your quota and how much of it you’re burning. Every LLM lets you do that with varying degrees of convenience. Claude Code has a /usage command, desktop apps show a status icon, Cursor has its own dashboard, and so on. The numbers are there. The problem is different: you don’t see them. And until the “quota exhausted” message hits, I usually forget the quota exists at all.

The second issue is less severe but equally annoying. You typically break a big task into smaller chunks. Each one doesn’t use that many tokens. But before starting the next one, the question comes up: do I have enough tokens left, or am I about to hit the wall again? To answer that, you have to check manually. Again.

These two situations are what made me look for something that shows quota usage in a visible spot. Without opening anything, without running commands, without breaking focus. Just an indicator that’s always there. On macOS, that’s usually the menu bar at the top of the screen.

A small menu bar app showing tokens, spend, and timers to reset won’t solve the limits themselves. But it removes the uncertainty. You glance at the indicator and see how much you have left. You decide whether to start a heavy task right now or wait twenty minutes. That alone is worth the few seconds it takes to install one of these.

In this article, I’m comparing the menu bar monitors I think are genuinely useful on macOS, what they read from your machine, and which scenario each one fits best.

This part matters more than it sounds, because it explains which permissions an app asks for and how much you can trust the numbers.

Most of these monitors don’t hit provider APIs directly. They read what your local AI tools have already written to disk. Claude Code writes JSONL logs to ~/.claude/projects/. Codex CLI writes similar files. The app parses them, multiplies by current model prices, and shows the result. It’s fast and accurate for past usage. It works offline if prices are cached.

For services that don’t log locally (Claude in the browser, Cursor’s web dashboard, Copilot’s quota), apps either read browser cookies to call the provider’s internal endpoints, or use OAuth tokens from the macOS Keychain. That’s why you see Full Disk Access prompts and Keychain dialogs. Nothing sinister about it, but it helps to understand why the app is asking.

The third pattern is API key aggregation, used for providers like OpenRouter, DeepSeek, or Mistral: you paste a key once, and the app sums up usage from request metadata.

Free, open source, by Peter Steinberger (founder of PSPDFKit and developer of OpenClaw). Supports 40+ AI coding providers including Codex, Claude, Cursor, Gemini, Copilot, and Grok, with separate session, weekly, and monthly windows for each. The menu bar icon uses a two-bar design: the top one shows the 5-hour session window, the bottom one shows the weekly quota. Visually, it’s a clean solution that reads at a glance.

CodexBar doesn’t poke around your filesystem and doesn’t request Screen Recording, Accessibility, or Automation permissions, though it may ask for Full Disk Access if you use Safari cookies for web providers. It’s signed and notarized, and installs via Homebrew. This is what I’d recommend most developers start with.

It’s my current pick for several reasons. I like the interface, which feels well thought out. Lots of settings, like showing how much you have left versus how much you’ve already used. Whatever matters more to you. So you can tune the app to your taste and your workflow. It’s actively developed and Peter responds to GitHub issues frequently, and very quickly.

A couple of things I ran into: occasionally the monitor reports being rate limited (it polled too often), and I haven’t been able to hook up the Antigravity monitor yet, but Peter already replied that it’s fixed in the new version. So I’m waiting for the release.

A paid alternative for $2.99 one-time. Tracks Claude, Codex, Copilot, Cursor, and Gemini with live usage, cost, and limits in the macOS menu bar. The main pitch is simplicity: install it, it auto-detects your tools, no API keys needed for local CLI providers.

By coverage, SessionWatcher is narrower than CodexBar but very focused. If you want a native minimalist app and you’re willing to pay three bucks to skip the configuration dance, it’s a reasonable trade.

A commercial menu bar app by Aura Technologies. Pricing: $5 for Basic or $15 lifetime for Pro, no subscriptions, local-first by default, usage analytics stay on your Mac. TokenBar is more about spending awareness than pure quota tracking. Recently they also added system load monitoring (CPU, memory, temperature), which you can read as either a useful adjacent feature or feature creep, depending on taste.

A good choice if you want a well-built paid app and you care more about spending trends than session windows.

UsageScope is available on the Mac App Store for $1.99 one-time, requires macOS 13.5+, and is local-first by default. It supports Claude, ChatGPT, and Gemini with 5-hour and weekly limits, auto-syncs tokens from Claude Code, Codex, and Gemini CLIs, and stores tokens in the macOS Keychain. App Store distribution is a plus for anyone who prefers that channel over direct downloads.

A solid middle ground: official distribution, a narrower provider list than CodexBar, no installation headaches.

Tracks Claude Code, Codex, and Kimi Coding from the menu bar, with a 7-day token usage chart, threshold notifications, and a transparent local proxy that catches usage from any client. The local proxy is interesting if you use custom scripts or tools that don’t write standard logs. Most monitors miss those, BurnRate doesn’t.

This is the right tool if you want pattern analysis over time, not just current numbers.

Free, open source (GPL-3.0), by the onllm.dev team. Architecturally it’s different from the rest of this list: onWatch is a Go background daemon that polls providers every 60 seconds and stores snapshots in a local SQLite database. The dashboard opens at localhost:9211 in your browser, and the menu bar companion for macOS is still in beta. Cross-platform: installs on macOS, Linux, Windows, and Docker.

Supports eight providers: Anthropic, Codex, GitHub Copilot, Synthetic, Z.ai, MiniMax, Gemini CLI, and Antigravity. The nice bits: historical usage pattern tracking, anomaly detection (for example, when a provider resets limits earlier than expected), burn-out forecasts to the next reset, and cross-provider headroom comparison. Optionally it sends email or push notifications when thresholds are crossed. Claimed memory footprint is under 60 MB. Zero telemetry, everything stays local.

Worth a look if you’re not only on macOS, or if you want a proper web dashboard with history rather than a single menu bar icon. Also a good fit if what you really need is “will my quota survive until end of day” forecasting, not just the current number.

A menu bar utility with an interesting design and easy installation. The free tier of Tokens4Breakfast lets you connect one provider, which is enough if you live in just Claude Code or just ChatGPT. A one-time $7.99 payment unlocks all eight: Claude Code, Claude Web, OpenAI, Cursor, Copilot, OpenRouter, DeepSeek, and Mistral.

A sensible option if the free monitors feel overloaded and you just want one compact indicator with clean visuals. You can always pay later, once you add a second provider.

Free, open source, plugin-based. OpenUsage is built on Tauri, React, and TypeScript, with each provider implemented as a plugin so new ones can be added without updating the whole app. Clearly inspired by CodexBar but with a different architectural approach. If you want full transparency and the option to fork or contribute, this one’s for you.

Worth knowing: the project description openly states it was mostly built with AI tools. Some will see that as a feature, some will see it as a yellow flag on code quality. Skim the issues before relying on it for anything critical.

Not a menu bar app, but a well-known CLI utility worth mentioning, because many of the GUI monitors above are essentially wrappers around the same approach ccusage made popular. Runs without installation via bunx ccusage or npx ccusage@latest, and parses token usage from local CLI agent data, including Claude Code, Codex, OpenCode, Amp, and others.

You get daily, weekly, monthly, and session breakdowns as a table right in the terminal. Paired with the customizable status line in Claude Code, you can show live numbers inside Claude Code itself by setting the statusLine command in ~/.claude/settings.json.

If you live in the terminal and don’t like menu bars, this is your pick.

ToolPriceOpen sourceBest for
CodexBarFreeYesWidest provider coverage
SessionWatcher$2.99 one-timeNoMinimalist, coding session focus
TokenBar$5 or $15 lifetimeNoSpending trends, polished UI
UsageScope$1.99 one-time, App StoreNoApp Store distribution
BurnRateFreeNoBurn rate analysis, custom tool support
onWatchFreeYesCross-platform daemon with web dashboard and forecasts
Tokens 4 BreakfastFree for one provider, $7.99 for all 8NoEasy install, interesting design
OpenUsageFreeYesOpen source alternative to CodexBar
ccusageFreeYesTerminal users, statusline integration

A note on the table: pricing pages change. Check the project’s own site for current numbers before buying.

First question: are you tracking subscriptions or pay-as-you-go API usage? These two cases call for slightly different tools.

If you live on Claude Pro, Max, Cursor Pro, Copilot, or any other fixed-price plan, the main pain point is the limits and reset windows. You need a tool that clearly shows session and weekly quotas. CodexBar, SessionWatcher, and UsageScope all do this well. For most people, I’d suggest starting with CodexBar because it’s free, open source, and covers the most providers without paying anything.

If you’re mostly on pay-as-you-go API access (OpenAI API, Anthropic API, OpenRouter), what matters isn’t the session window but the actual spend. TokenBar and BurnRate are built exactly around this. Tokens 4 Breakfast is another option in this category if you want spending forecasts. onWatch fits if you want more than current numbers, specifically a forecast of quota exhaustion before the next reset and anomaly detection for when providers reset limits earlier than expected.

If you only use one AI tool and that tool is Claude Code, then ccusage in the terminal is probably all you need. Combined with Claude Code’s status line, you get live numbers without installing anything in the menu bar at all.

If you work on something other than macOS, the choice narrows fast: most utilities on this list are Mac-only. onWatch stands out here because it installs on Linux, Windows, and Docker, and the dashboard opens in a browser.

For privacy-minded folks, open source matters because you can verify what the app reads and where it sends anything. The strongest candidates here are CodexBar, OpenUsage, and onWatch. All three are local-first by default, and onWatch specifically advertises zero telemetry.

Three quick checks save a lot of pain later.

First, look at what permissions the app actually requests. Full Disk Access is justified for reading browser cookies, but unnecessary if you only use CLI providers. Keychain access is expected when the app reads OAuth tokens. Requests for Screen Recording or Accessibility, on the other hand, should be a red flag for this category, none of these monitors need them.

Second, check where API keys are stored if the app asks for them. The right answer is the macOS Keychain. Storing keys as plain text in config files is not a great practice.

Third, look at how the app handles provider changes. Anthropic and OpenAI occasionally change internal endpoints or cookie formats, and any tool that reads dashboards rather than CLI logs temporarily breaks at that moment. Active projects fix it within a few days. Check the last commit date on GitHub before relying on any of these for daily work.

None of these apps will make you spend fewer tokens or change your provider’s limits. But they can remove the surprise factor. So you can plan your effort and distribute it more sensibly.

I like CodexBar: free, open source, wide provider coverage, sensible permission model. If you want it from the App Store, UsageScope. If you live in the terminal only, ccusage. If you work outside macOS or want a web dashboard with history and forecasts, onWatch. The rest are good options when your specific needs line up with what they do better than the defaults.

Pick your own. I’m sure working with a monitor like this will make life easier.

Good luck!

🤓