Claude Token Vampire – Monitor Claude Code token usage

Claude Token Vampire monitors your Claude Code token usage in real time. Anthropic doesn’t show you how much of your current 5-hour session quota you’ve consumed — Claude Token Vampire does.

Free. Open source. Runs offline. Uses zero tokens.

GitHub repository  |  Download (ZIP)  |  Vote on next feature

Claude Token Vampire logo

Why it exists

Anthropic’s usage page shows percentage bars: “Current session — Resets in X hours”, plus the weekly limits. No token counts, no breakdown, no cost, no per-project history. Just bars and countdowns.

The session bar is honest about the reset (the 5-hour session really does hard-reset at that timestamp). What it is not honest about is the ceiling: Anthropic never publishes the exact token cap, so 72% could mean you have 10 minutes or 2 hours of heavy use left. That is the gap Claude Token Vampire fills.

How Anthropic’s 5-hour window actually works

Your first message starts a 5-hour clock. Every subsequent message counts against the same session budget. When the clock hits 5 hours the entire counter hard-resets to zero — not gradually, all at once. Your next message after that starts a fresh 5-hour session.

Anthropic’s own support page confirms this: “Your plan’s included usage limit will reset every five hours once you reach it.” (source). The Claude Code statusline exposes a single rate_limits.five_hour.resets_at timestamp (statusline docs) — one reset moment per session, not continuous expiry.

Correction note (2026-04-24): an earlier version of this page described the quota as a true sliding window where individual tokens “drip off” after 5 hours. That was wrong. The window is session-based. The rest of the page has been updated accordingly.

What’s actually missing from Anthropic’s UI

The reset countdown is fine. What you cannot see on the usage page:

  • How many tokens you’ve actually burned (only a percentage)
  • When inside the 5-hour session they were burned (early big burst vs steady drip looks identical)
  • What kind of tokens (cache reads are cheap; cache creation is expensive)
  • Per-project split (one heavy project can eat a quiet day’s budget)
  • Cache status (5-minute and 1-hour tiers — about to cost you a rebuild?)
  • A hard dollar number for the session so far
  • A pace projection (at the current burn rate, when do you hit the cap?)
  • What your subscription is worth (the same use, priced at API list prices)

A percentage bar crushes all of that into one number.

What Claude Token Vampire shows instead

A per-15-minute bar chart spanning the full 5-hour session (start → +1h → +2h → +3h → +4h → end (reset)), with:

  • Exact token counts by type (input, output, cache creation, cache read)
  • A configurable ceiling so the bar chart’s colours actually mean something (green → yellow → orange → red)
  • A real countdown to the session hard reset
  • A cost estimate in USD, each reply priced at its own model’s published rate
  • Cache warmth per tier (5-minute / 1-hour), with a warning before you pay for a full rebuild
  • Per-project breakdown so you know which project is eating the budget
  • 7-day tally alongside the session number, so the weekly cap doesn’t ambush you
  • Pace projection — “at this rate you’ll hit the cap in 47 min” when usage is on track for an early lockout
  • Top tool calls — which tools your sessions actually spend on, ranked over the last 7 days
  • Recent sessions — read a past session and reopen it in its own terminal, for when a crash takes the windows but not the transcripts
  • API value – what your Claude Code use would cost at API list prices, month by month

Claude Token Vampire main window: Claude Code 5-hour session bar chart, token counts and cost

Comparison

claude.ai/settings/usageClaude Token Vampire
Token countsHidden behind a vague percentageExact numbers by type
Usage over timeFlattened into one bar5h bar chart, 15-minute buckets
Reset timerCorrect, but the ceiling it resets against is hiddenSame hard countdown, plus your configured ceiling so the percentage means something
Per-project splitNoneEvery project tracked separately
Cache statusNot shownHit rate + warm/cold warning per tier
Cost estimateNot shownPer-model published rates
7-day capA percentage barAnthropic’s percentage plus this PC’s token count
Value of your planNot shownYour use priced at API list prices, per month
Pace projectionNone“At this rate, cap in X min”
Chart spanNoneCurrent 5-hour session (20 bars)
Works offlineNeeds browser + loginLocal files only. Zero tokens. Zero API calls.

Anthropic tells you that you’re using tokens. Claude Token Vampire tells you how many, where, how fast, what kind, and how long until the session resets.

Related reading: The 5-hour mirage — Anthropic’s moving goalposts.

What it does

It puts you in control of your Claude Code tokens:

  • Tracks all billable token types: input, output, cache creation, cache reads
  • Shows the current 5-hour session with a per-bucket bar chart spanning session_start → session_end
  • Tracks the 7-day cap alongside the session, with a configurable weekly limit
  • Color-coded bars: green → yellow → red as you approach your limit
  • Estimates cost per model — Opus, Sonnet, Haiku and Fable are each priced at their own rate, and a “Models used” row shows the mix. A single flat rate under-reported a mixed-model week by roughly half.
  • Shows Anthropic’s own percentage, read from Claude Code’s statusline (Pro/Max plans only). Since version 1.2.0 it leads the 5-hour bar and the weekly row by default, because it counts your whole account (every PC, claude.ai); this PC’s own count is shown beside it. Settings > “Main bar shows” switches the bar back to this PC’s count.
  • Counts each reply once. Claude Code writes one reply as several log lines; versions before 1.2.0 counted every line, so their token and cost totals were about 2.5x too high.
  • Scans in the background with a disk cache, so the window never freezes, even with gigabytes of session logs. Session logs with a path longer than 260 characters are counted too.
  • Shows cache hit rate and warns when the 5-minute cache gap expires
  • Counts down until the session hard-resets (all tokens reset at once, not gradually)
  • Projects pace: “at this rate, you’ll hit the cap in N minutes”
  • Ranks your top tool calls over the last 7 days — calls, estimated cost, average duration
  • Lists your recent sessions with their /rename names, lets you read one, and reopens it in its own terminal — written after a power failure killed eleven open sessions at once
  • Restores several sessions at once: tick them, click “Restore selected”, confirm once, and they reopen one after another
  • Shows the messages and cost of each session, subagents included, and draws a line between sessions more than an hour apart, so the batch one crash killed stands out
  • Shows the cost of each prompt in the transcript of a session, so you see which prompt burned the tokens
  • Prices your whole history at API list prices, per month and model, and estimates what the same work cost Anthropic itself. One click copies the report as text for a forum post
  • Lets you add manual entries for token usage from other machines or the claude.ai web interface (helps when one quota covers multiple devices)
  • Runs quietly in the system tray — click the icon to show/hide. Choose between a solid status square or a 5-hour sparkline icon.
  • USES 0 TOKENS by default — runs entirely offline, no API calls, no Claude queries. The optional auto-ping is opt-in and costs real tokens: each ping runs claude -p on Haiku with your hooks switched off, but it still loads your CLAUDE.md files (about 44,000 tokens per ping, billed at the Haiku rate). Hooks forced by an administrator policy still run.

Views

  • All Projects — combined current-session view across everything
  • Tools — your top tool calls over the last 7 days
  • Per Project — same chart broken down by project
  • Recent sessions — read and reopen the Claude Code sessions a crash killed
  • API value – your use priced at API list prices, per month and model

User manual

All Projects tab — Stats panel

Claude Token Vampire All Projects tab: Anthropic's 5-hour percentage, this PC's token count, reset countdown, cost, models used and the 5-hour bar chart
The All Projects tab a few minutes into a fresh 5-hour session. Anthropic’s own percentage leads; this PC’s count follows.
LabelMeaning
Total tokens (session)Input + output + cache creation + 10% of cache read in the current 5-hour session (the 10% is an estimate: Anthropic does not publish how cache reads count against the quota). With a fresh statusline reading, Anthropic’s own percentage leads the line and this PC’s count follows. Shown as used / limit. When the burn rate would hit the cap before the session ends, also shows (time) to cap at pace.
Total tokens (7d)Tokens of the last 7 days. Since version 1.3.0, when a fresh statusline reading is available, the count starts at Anthropic’s own weekly reset instead, so it covers the same week Anthropic counts. Shown raw if no weekly cap is configured, or as used / cap (%) when you set MaxTokensWeekly in Settings.
MessagesNumber of assistant responses in the current session.
Cache hit ratecache_read / (cache_read + input). Higher = cheaper. 99%+ is normal for long sessions.
Estimated costUSD estimate, each reply priced at its own model’s published rate (Fable, Opus, Sonnet, Haiku, including Fable 5.1, Opus 5.5 and Sonnet 5.5). The rates in Settings are used only for models the app does not know yet.
Reset inMinutes until the current session hard-resets. When it hits zero, the entire counter returns to zero — all at once, not per-message.
Cache statusTwo cache tiers. 5m cache (subagents/tools) — warm if last message < 5 min ago. 1h cache (main conversation) — warm if last message < 1 hour ago. Orange = 5m cold, 1h still warm. Red = both cold (full rebuild on next message).
Cache 1h / 5mBreakdown of cache creation tokens by tier: 1-hour ephemeral vs 5-minute ephemeral. Display only — already included in the total.

All Projects tab — Chart

Each bar = one 15-minute bucket (configurable 2–60 minutes per bar). The full 5-hour session has 20 bars at the default width, left edge at session_start, right edge at session_end (reset).

Y-axis is at least your per-bar budget (limit divided by the number of bars). With the default limit of 176M and 20 bars, that is 8.8M per bar. It grows when a bar is taller, and never drops below the Y-axis minimum set in Settings, so the scale stays sensible.

Bar colors (when a limit is set) show how much of the session limit was spent up to and including that bar:

  • Green: < 50% of the limit
  • Yellow: 50–75%
  • Orange: 75–90%
  • Red: ≥ 90%

Bar colors (no limit set): blue (auto-scale mode). A value label above each bar shows the token count for that interval. The labels are large, a label too wide for a narrow bar goes on two lines (830 / K), and a label that would overlap its neighbour is hidden.

Per Project tab

  • Project list: active projects (with token counts) and inactive known projects (gray, separated)
  • Per-project stats: tokens, messages, cache hit rate, cost, reset-in, cache status
  • Per-project bar chart (same renderer, filtered data)
  • Selection preserved across automatic refreshes

Tools tab

The 10 tools your sessions called most in the last 7 days, with three columns: Calls, Cost (est.) and Avg ms. The cost is an estimate: the output tokens of each reply are split evenly between the tool calls of that reply, priced at that reply’s own model rate. The tab scans only when you open it.

Claude Token Vampire Tools tab: the 10 most-called Claude Code tools of the last 7 days, with calls, estimated cost and average duration
The Tools tab on my PC: Read is called most, but Grep and Edit cost the most.

Recent sessions tab

  • Your latest Claude Code sessions, newest first, so everything one crash killed shows up as a tight band at the top. Choose how many to list (5 to 200).
  • Read a session: click a row and its conversation appears below the list, without the tool traffic.
  • Reopen a session: double-click a row (or click “Reopen session”) and it comes back in its own terminal, in its original folder, through claude --resume.
  • The Name column shows the name you gave a session with /rename. Hover a row for the full folder path.
  • A session that is still open is marked running now; reopening it asks you first.
  • Headless runs (claude -p, Agent SDK) are hidden unless you tick “Show automated sessions (claude -p)”.
  • Tick the Pick boxes and click “Restore selected” to reopen several sessions in one go, 2 seconds apart, after one confirmation. Sessions still running, and sessions whose folder is gone, are skipped.
  • Msgs and Cost columns for each session, subagents included (a dash means the session has no messages in the last 8 days), and an orange line between two sessions more than an hour apart.
  • Click a session to read its transcript. Each of your prompts shows what it cost and how many replies it took, for example YOU - $0.42, 12 replies: the replies (subagents included) between that prompt and your next one, each priced at its own model’s rate. Like the Cost column, this covers sessions with messages in the last 8 days.
Claude Token Vampire Recent sessions tab: Pick check boxes, last-used time, messages and cost per session, and an orange line between session batches
Recent sessions: Pick boxes, messages and cost per session, and the orange line. The Name, Session and Folder columns are cut off here, because they show my private projects.

API value tab

What your Claude Code use on this PC would have cost at Anthropic’s API list prices. A good way to see what your subscription is worth. One row per month and model, with:

  • messages and tokens (input, output, cache write, cache read)
  • the cost at list price, and how much of it is cache reads
  • the average context re-read per message (cache-read tokens per message)
  • an estimate of what the same work cost Anthropic: the list price × 0.30, based on the “over 70%” inference gross margin that SemiAnalysis estimated (an analyst estimate, not an audited number)

The report covers your whole history, so the first scan can take a few seconds. Copy as text puts it on the clipboard as a plain-text table, ready for a forum post. Manual entries are left out.

Claude Token Vampire API value tab: Claude Code use per month and model, priced at Anthropic API list prices, with the estimated cost to Anthropic
The API value tab: four months of my Claude Code use, worth $19,065 at API list prices.

Manual entries

The Add External toolbar button lets you log token usage that didn’t come from Claude Code on this machine — for example, sessions from claude.ai, the Anthropic console, or another computer running on the same account. Manual entries fold into the session and 7-day totals exactly like real entries, so the limits stay accurate when one quota covers more than one device.

Settings

Claude Token Vampire settings dialog

SettingDefaultNotes
Main bar showsAnthropicAnthropic: Anthropic’s own percentage leads the 5-hour bar, the weekly row and the tray colour; this PC’s count is the breakdown. Local: this PC’s count leads. Without a fresh statusline reading the bar always shows this PC’s count, labelled “this PC only, estimated”.
Max tokens (5h window)176,000,000Your estimated session ceiling for this PC’s count. Anthropic does not publish exact caps; the plan presets are community estimates. When Anthropic’s percentage leads the bar, this number only scales the “this PC” breakdown. Set to 0 if unknown (chart switches to auto-scale blue).
Max tokens (7d window)0 (= unknown)The 7-day rolling cap. Anthropic also doesn’t publish this number. Set to 0 to display raw weekly tokens, or enter your own estimate to get a percentage and color coding.
Cost: input tokens ($/1M)5.00Fallback price per 1M input tokens, used only for a model the app does not recognise (defaults: Opus 5).
Cost: output tokens ($/1M)25.00Fallback, per 1M output tokens.
Cost: cache read ($/1M)0.50Fallback, per 1M cache-read tokens.
Cost: cache creation ($/1M)6.25Fallback, per 1M cache-creation tokens.
Refresh interval (seconds)60How often to re-scan session files. Minimum 10.
Bucket width (minutes)15Width of each chart bar. Range 2–60. Smaller = more, narrower bars; larger = fewer, wider bars.
Y-axis minimum10,000,000Y-axis floor. Ratchets up as your usage grows so the scale stays useful; never shrinks back during a session.
Start minimized to trayoffHide window on app startup.
Launch at loginoffLaunch at Windows login (Run registry key).
Minimize on closeonIf on, the X button hides the app to tray. If off, X exits the app instead.
Tray icon: sparklineoffIf off, tray icon is a solid color square (green/yellow/orange/red by usage). If on, the icon shows a tiny 5-hour sparkline of your bucket data.
Auto-ping Claude to start the 5h session windowoffSends a short claude -p message on Haiku, with your hooks switched off, when no session is active or the current one has less than 30 minutes left, so a fresh 5-hour window is already running when you sit down. Costs real tokens: each ping still loads your CLAUDE.md files (about 44,000 tokens in one measured ping).
Auto-ping interval (minutes)60Minimum time between two pings. Range 30–240.

Tips

  • “CACHE COLD” warning: Two tiers. 5-min cache (subagents/tools): expires after 5 min idle — step away briefly and subagent calls get more expensive. 1-hour cache (main conversation): expires after 60 min idle — the full prompt rebuild only hits when you’ve been away for more than an hour. Orange = subagent cache cold, main cache still warm. Red = both cold.
  • Reset-in countdown: When this hits 0, the whole session resets and your next message starts a new 5-hour window with full quota.
  • Per-bucket chart: Helps spot usage spikes. A single tall bar suggests a big refactor or long conversation in that 15-minute window.
  • Pace projection: When the rate of usage projects you’ll hit the cap before the session ends (and at least 10 minutes have passed for the rate to be meaningful), the tokens row shows (time) to cap at pace. Otherwise it stays hidden — no fake “you’re fine” reassurance.
  • Cost estimate: Approximate. Real billing may differ. Useful for relative comparison.

Install

Download the ZIP from the GitHub repository and extract it.

  1. Copy the extracted folder somewhere permanent (e.g. C:\Tools\ClaudeTokenVampire)
  2. Double-click Install.cmd
  3. In Claude Code, run: /reload-plugins

Launch (two ways):

  • Fast: Type launch vampire, start vampire, or token monitor in Claude Code (instant, bypasses the model)
  • Skill: Type /claudetokenvampire:monitor in Claude Code (~5 sec, loads full context)

Requirements

  • Windows 10/11
  • Claude Code (no API keys needed)
  • No external libraries needed

Platform support

PlatformStatus
WindowsAvailable now
macOSComing soon

The codebase uses FMX (FireMonkey), which is cross-platform. The macOS port mainly requires swapping %USERPROFILE%\.claude\ for ~/.claude/.

Safety

  • Opens files in read-only shared mode — never interferes with Claude Code
  • Totally local
  • No data is sent anywhere
  • No tokens are spent (auto-ping is opt-in; when enabled, each ping costs tokens)
  • No API key required

Vote on the next feature

Claude Token Vampire’s roadmap is shaped by what users actually need. Drop a vote (or a feature request) on GitHub Discussions. The most-requested items get prioritised. The app itself nudges you to vote once after your third launch and never asks again unless you want it to.

Roadmap

  • Show window in “minimal” mode (only critical info)
  • Beep when approaching maximum quota
  • Budget enforcement via Claude Code hooks (warn or block before tools fire when you’re over budget)
  • Real-time activity indicator — tray icon flashes when Claude is actively writing to the session file
  • Session search — keyword search across all session files, with one-click resume
  • Multi-computer support (live sync between two machines on the same account, beyond today’s manual-entry workaround)
  • macOS port

Sources

Stars are free

If you find Claude Token Vampire useful, drop a star on GitHub. It encourages further development.


Written in Delphi 13 (FMX). Part of my wider collection of open-source Delphi libraries and tools.

If AI-assisted Delphi development interests you, see my book “Delphi in all its glory – AI-Assisted Development for Delphi”.

Scroll to Top