{"slug": "show-hn-pacer-realtime-claude-code-usage-tracking-pacing", "title": "Show HN: Pacer – Realtime Claude Code Usage Tracking / Pacing", "summary": "Pacer, a free open-source macOS app by developer Eric Andrechek, tracks Claude Code token usage, costs, and rate limits in real time from the menu bar, with features including pace charts, per-project and per-model breakdowns, widgets, and CSV export. The app requires macOS 15 or newer, supports multiple Claude accounts, and is pre-1.0 with active development.", "body_md": "**Know what Claude Code is costing you — and how close you are to your limits — right from your Mac's menu bar.**\n\nPacer is a free, open-source macOS app that keeps an eye on your Claude Code usage: the tokens you're burning, what they cost, how close you are to your 5-hour and weekly rate limits, and where the spend is going — by project, by model, by day. It sits quietly in your menu bar, keeps itself up to date, and keeps all of your data on your own Mac.\n\nMenu bar & click-down popover |\nHome-screen & Notification Center widgets |\n\n**Share your 5-hour & 7-day burn charts as an image**\n\n**More screenshots** — models, projects & collections, six-month history\n\n[\n](/EricAndrechek/Pacer/blob/main/docs/screenshots/models.png)**Models — share, trend, and per-model table; group by model or class**\n\n[\n](/EricAndrechek/Pacer/blob/main/docs/screenshots/projects-collections.png)**Projects & Collections — group projects, scope totals to a collection**\n\nHeads up — early days.Pacer is pre-1.0 and under active development. It works and it's useful today, but expect the occasional rough edge, and your saved history may need to be rebuilt between 0.x versions.\n\n(grab the[Download the latest version →](https://github.com/EricAndrechek/Pacer/releases/latest)`Pacer-x.y.z.dmg`\n\nfile under \"Assets\").- Open the downloaded file and drag\n**Pacer** into your**Applications** folder. - Launch Pacer. It lives in your\n**menu bar**— look for the little gauge icon up top (there's no Dock icon). Click it to open the dashboard. - The first time, macOS asks permission for Pacer to read Claude Code's files.\nClick\n**Allow**— that's how Pacer sees your usage. Nothing leaves your Mac.\n\nThat's all. **Pacer keeps itself up to date automatically:** when a new version\nships, it offers to install it for you — no re-downloading, no reinstalling.\n\n**You'll need** macOS 15 (Sequoia) or newer, on either Apple Silicon or Intel.\n\n**Rate-limit pacing.** Your 5-hour, weekly, and any**per-model** windows — the scoped caps Anthropic reports for your account, like a weekly Fable limit — as easy-to-read pace charts. Are you ahead, on track, or about to hit the wall? Color bands (behind / on track / ahead / nearly maxed) tell you at a glance, and*every*window gets the same forecast: projected fill, time-to-limit, and calibrated bands. Refreshed every few minutes from Anthropic's usage data.**Costs, your way.** See spend the way Claude Code reports it, or have Pacer price it from tokens itself — switchable in Settings. Daily, monthly, and all-time totals included.**Where it's going.** Break usage down by project — grouped into your own non-destructive**collections**— and by model, with every Claude model in its own color and groupable by class. Drill into any single day, and see a GitHub-style activity heatmap of the last six months.**Live \"today\" view.** Your current burn rate plus a running \"at this pace, today will end at about $X\" projection.**Multiple accounts.** Signed into more than one Claude account? Pacer tracks each account's usage and limits separately and lets you switch between them.**At a glance, always.** A configurable menu-bar readout — an activity-ring icon, percent chips, and an explicit choice of which window drives the icon — plus home-screen-style widgets, each pickable to whichever window you care about (5-hour, weekly, or a per-model cap) for cost and pacing.**Optional nudges.** Local notifications when you cross a rate-limit threshold (50 / 75 / 90%) — on any window, including a per-model cap — or blow past a daily spending limit you set. Off by default.**Export.** Send daily totals, daily-by-model, or per-project numbers to a CSV for your own spreadsheets.\n\nYou've got options for keeping an eye on Claude Code usage — Claude Code's own\n`/usage`\n\n, the popular [ ccusage](https://github.com/ryoppippi/ccusage) CLI, and\nseveral menu-bar apps — the closest being\n\n[Token Pacer](https://tokenpacer.app), a paid, closed-source namesake, plus\n\n[Claude God](https://claudegod.app)and\n\n[ccseva](https://github.com/Iamshankhadeep/ccseva). They're good tools; here's the honest lay of the land.\n\nPacer |\n|\n|\n|\n|\nCC `/usage` |\n|\n|---|---|---|---|---|---|---|\n| Form factor | Menu-bar app | Menu-bar app | Menu-bar app | Menu-bar app | CLI | In-terminal |\n| Native macOS (not Electron) | ✓ | ✓ | ✓ | – (Electron) | – | – |\n| Always-on, glanceable | ✓ | ✓ | ✓ | ✓ | – | – |\n| Live limit % from Anthropic's API | ✓ | ✦ | ✓ | ✦ | ✦ | ✓ |\n| Per-model (scoped) limit windows | ✓ | – | – | – | – | – |\n| Pace vs. ideal-burn line | ✓ | – | – | – | – | – |\n| End-of-day spend projection | ✓ | ✓ | ✓ | ✓ | – | – |\n| Activity heatmap (6 months) | ✓ | – | – | – | – | – |\n| Per-project & per-model breakdown | ✓ | ✓ | ✓ | ✓ | ✓ | – |\n| Beyond Claude Code (Codex, opencode, …) | – | ✓ | – | – | – | – |\n| Home-screen / Notification Center widgets | ✓ | – | ✓ | – | – | – |\n| Threshold / budget notifications | ✓ | ✓ | ✓ | ✓ | – | – |\n| CSV export | ✓ | ✓ | ✓ | – | ✓ | – |\n| ROI: cost vs. git commits | – | – | ✓ | – | – | – |\n| Claude Code plugin marketplace | – | – | ✓ | – | – | – |\n| Price | Free | $29 one-time | Free | Free | Free | Included |\n| Free & open source | ✓ | – | ✓ | ✓ | ✓ | – |\n\n✦ estimates the windows from your local JSONL logs rather than reading\nAnthropic's usage API. Token Pacer is a paid, closed-source app, so its column is\nread from its public site rather than its source — and some of its features (CSV\nexport, custom model pricing) are Pro-tier. Best-effort as of June 2026 — these\ntools all move fast, so corrections are welcome via an issue or PR.\n\n**The gist:**\n\n**vs.**— Claude Code's built-in view is a`/usage`\n\n*snapshot you ask for*in one terminal; Pacer is the always-on, zoomed-out companion that remembers every session. The speedometer in one car vs. the dashboard that logs every trip.**vs.**— a great CLI for scriptable numbers (Pacer's tests even cross-check their scanner against it); Pacer is the GUI you glance at instead of a command you re-run, and it reads your`ccusage`\n\n*actual*limit % from Anthropic rather than estimating from logs.**vs. Claude God / ccseva**— the closest rivals, and genuinely nice. Pacer leans into*pacing*(your windows against an ideal-burn line, \"will I run out before the reset?\"), native + quiet-by-default, and signed/notarized self-update; Claude God goes further on ROI/git correlation and a plugin marketplace, and ccseva on its glassy UI. Pick the one that thinks about your usage the way you do — they coexist happily.**vs. Token Pacer**— the close namesake, and the nearest thing to a direct rival: also a native, local-first macOS menu-bar tracker, and it reaches*wider*— covering Codex and opencode alongside Claude Code, with \"next action\" nudges. The trade-offs: it's**$29 and closed-source**, where Pacer is free and open; Pacer reads your*real*limit % from Anthropic and adds the ideal-burn pacing line, the 6-month heatmap, and widgets. Multi-agent and willing to pay? Fair pick. Claude Code-first and value open source? Pacer.\n\nPacer is **local-first**. It reads only the files Claude Code already writes to\nyour own Mac, and it sends nothing about your usage anywhere:\n\n`~/.claude/projects/*.jsonl`\n\n— your session token usage, read on your machine.- The Claude Code login token in your macOS Keychain — used only to ask Anthropic for your rate-limit status, the same way Claude Code itself does.\n\nThe **only** network connections Pacer makes are:\n\n`api.anthropic.com`\n\n— to check your rate-limit windows (~12 small requests an hour while it's running).`github.com`\n\n— to check for, download, and install app updates (at launch, then every 6 hours; installs happen in the background when automatic updates are on).\n\n**No analytics, no telemetry, no third parties.** Your data stays on your Mac in\n`~/Library/Group Containers/…/pacer.sqlite`\n\n, and it persists across app updates.\n\nPacer is SwiftUI + SwiftData + Charts, signed with Developer ID and notarized,\nauto-updating via [Sparkle](https://sparkle-project.org). Contributions welcome —\nsee [ CONTRIBUTING.md](/EricAndrechek/Pacer/blob/main/CONTRIBUTING.md).\n\n| Component | Role |\n|---|---|\n`Pacer.app` |\nMain UI + menu-bar item. Data collection (FSEvents JSONL scan + OAuth poll) runs in-process inside this binary — there is no separate daemon. |\n`PacerWidgets` |\nWidgetKit extension — reads the shared App Group store directly. |\n`PacerCore` |\nShared Swift package — parsers, models, scan coordinator, recomputers. |\n\nFor everyday use, the [released DMG](https://github.com/EricAndrechek/Pacer/releases/latest)\nis what you want — this section is only for hacking on Pacer.\n\n**Requirements:** macOS 15 SDK (Xcode 16+) and `xcodegen`\n\n(`brew install xcodegen`\n\n).\nThe Xcode project is generated from `project.yml`\n\n— never edit the `.xcodeproj`\n\ndirectly.\n\n```\nmake verify       # unsigned compile-only check (no Apple account needed)\nmake test         # PacerCore unit + ground-truth tests\nmake install      # signed + notarized build → /Applications/Pacer.app\nmake screenshots  # regenerate the README screenshots (see docs/screenshots.md)\nmake help         # everything else\n```\n\n`make verify`\n\nand `make test`\n\nneed no signing setup and are all that CI runs.\nTo build a *runnable* app you need your own Apple Developer account — point the\ninstall at it with `PACER_SIGN_IDENTITY=\"Developer ID Application: <Name> (<TEAMID>)\" make install`\n\n.\nSee [CONTRIBUTING → \"Building and running it yourself\"](/EricAndrechek/Pacer/blob/main/CONTRIBUTING.md#building-and-running-it-yourself)\nfor the full story (and why an App Group ties signing to your Team ID).\n\n[ AGENTS.md](/EricAndrechek/Pacer/blob/main/AGENTS.md) is the deep architectural guide (performance invariants,\nthe SwiftData schema, the recomputer pattern);\n\n[covers the design, perf-tuning,](/EricAndrechek/Pacer/blob/main/docs)\n\n`docs/`\n\n[screenshot generation](/EricAndrechek/Pacer/blob/main/docs/screenshots.md), and release process.\n\nPushing a `vX.Y.Z`\n\ntag triggers\n[ .github/workflows/release.yml](/EricAndrechek/Pacer/blob/main/.github/workflows/release.yml), which builds,\nsigns, notarizes, packages a DMG, signs the Sparkle update, publishes the GitHub\nRelease, and updates\n\n`appcast.xml`\n\non the `gh-pages`\n\nbranch. See\n[for the secrets and the cut-a-release checklist.](/EricAndrechek/Pacer/blob/main/docs/releasing.md)\n\n`docs/releasing.md`\n\n[MIT](/EricAndrechek/Pacer/blob/main/LICENSE). Pacer reads data from Anthropic's Claude Code product but is not\naffiliated with or endorsed by Anthropic.", "url": "https://wpnews.pro/news/show-hn-pacer-realtime-claude-code-usage-tracking-pacing", "canonical_source": "https://github.com/EricAndrechek/Pacer", "published_at": "2026-08-20 16:23:20+00:00", "updated_at": "2026-08-20 16:45:16.126073+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools", "ai-products"], "entities": ["Pacer", "Eric Andrechek", "Claude Code", "Anthropic", "Token Pacer", "ccusage", "Claude God"], "alternates": {"html": "https://wpnews.pro/news/show-hn-pacer-realtime-claude-code-usage-tracking-pacing", "markdown": "https://wpnews.pro/news/show-hn-pacer-realtime-claude-code-usage-tracking-pacing.md", "text": "https://wpnews.pro/news/show-hn-pacer-realtime-claude-code-usage-tracking-pacing.txt", "jsonld": "https://wpnews.pro/news/show-hn-pacer-realtime-claude-code-usage-tracking-pacing.jsonld"}}