Cursor plan usage in your macOS menu bar
See Cursor Models %, Other Models %, and days until reset without opening Cursor Settings. Same two usage pools as the in-app Usage panel.
git clone https://github.com/rlimberger/CursorUsage.git
cd CursorUsage
./scripts/build-app.sh installBuilds a release app, installs to ~/Applications/CursorUsage.app, enables Open at Login, and launches.
Requires Xcode or Xcode beta (macOS 14+). Bare Command Line Tools are not enough.
| Live menu bar | icon → Cursor % → API % → days at system menu-bar font size |
| Popover | Progress bars, plan name, refresh, dashboard link |
| No extra login | Reuses the session from the Cursor IDE |
| Open at Login | Registered on first launch (toggle in the popover) |
| Cursor-aware | Item shows only while Cursor is running |
- Sign in to Cursor as usual.
- Keep CursorUsage running (it starts at login by default).
- When Cursor is open, the menu bar shows usage; click for details.
[◆] 14% 85% 13d
│ │ └─ days until billing cycle resets
│ └─ Other Models (API / named models)
└─ Cursor Models (e.g. Grok / Composer)
Quit: popover → Quit, or killall CursorUsage.
- Reads your access token (read-only) from
~/Library/Application Support/Cursor/User/globalStorage/state.vscdb - Calls Cursor’s
GetCurrentPeriodUsageAPI with that token - Maps
autoPercentUsed→ Cursor Models,apiPercentUsed→ Other Models - Refreshes every 5 minutes (or on Refresh)
Uses an undocumented Cursor API. It may change without notice. Not affiliated with Anysphere / Cursor.
# Build only → dist/CursorUsage.app
./scripts/build-app.sh
# Build + install + launch
./scripts/build-app.sh installThe script prefers /Applications/Xcode-beta.app, then /Applications/Xcode.app:
export DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer- Token is only sent to Cursor’s own API as a Bearer credential
- No third-party analytics or servers
- Local database access is read-only
Nothing appears in the menu bar
CursorUsage only inserts the item while Cursor.app is running. Open Cursor, or check System Settings → Menu Bar if macOS is hiding the item.
Open at Login didn’t stick
Enable CursorUsage under System Settings → General → Login Items (SMAppService sometimes needs approval).
Numbers look wrong / failed to load
Sign out and back into Cursor, then click Refresh. The local session token may have expired.
Is this official?
No. Community tool that scrapes the same usage data the IDE already uses.
Issues and PRs are welcome for bugs and small improvements. Please open an issue before large design changes.
MIT © Rene Limberger

