- Neu
Multi-provider tracking — ChatGPT (chatgpt.com) and Grok (grok.com) join Claude. ChatGPT usage is counted locally per model (GPT-5, GPT-5 Thinking, o3, Deep Research…) against per-plan windows; Grok limits come straight from grok.com's own rate-limits API (Standard / Reasoning / DeepSearch). Both are opt-in: enabling one asks Chrome for access to that site only, and a floating gauge chip appears on the provider's pages — theme-aware (it samples the host page's real luminance), expanding into an editorial usage card on click
- Neu
The Meters tab now carries live provider chips — ChatGPT and Grok each show their primary utilization ring right on the chip (≈ when counted locally, exact when server-reported) and expand into the full provider card in place. A disabled provider shows a quiet OFF chip that jumps to Settings instead of a dead control
- Neu
UsageMeter rebrand — new name, new identity, same extension. Your settings, license, accounts and usage history are untouched (storage keys and sync endpoints did not change), and every one of the 34 languages was updated
- Neu
Complete popup redesign — four tabs (Meters / History / Accounts / Settings), a simplified header (logo, active account, settings — nothing else), at most ONE contextual status line instead of stacked banners, and a dark editorial skin (#0a0a0b ground, #131316 panels, brand-green actions, Geist + Geist Mono bundled locally). The 5h session ring grew to a 128px hero with a measured '≈ N messages left (calibrated)' line under it — hidden until 5 real observations, never an invented number. Themes and Achievements moved out of the main flow into Settings rows; History gets its own tab with 5h/24h/7d range chips, the weekly recap, the activity heatmap and smart insights
- Verbessert
Dashboard sync is now OFF by default on fresh installs (privacy-first); existing installs keep their current behavior. One honest toggle in Settings — only usage percentages and reset times are ever sent, never conversations or their content — with Force sync / Import right under it
- Verbessert
Honest numbers everywhere — buckets with no known limit show the raw count instead of a made-up percentage, every locally-counted or estimated value carries a ≈ prefix, and Deep Research runs are grouped into sessions within 10-minute gaps so one research doesn't count as five
- Fix
Sibling model slugs (gpt-4o-mini, o3-pro…) are no longer absorbed into the wrong quota bucket — model matching is longest-prefix-first with pool-qualifier exclusions, so a mini/pro variant never eats the base model's window
Extension
Extension-Changelog
Die vollständige Release-Historie der UsageMeter-Browser-Extension — jede Version, Funktion und jeder Fix.
- v1.4.010. Juli 2026
- v1.3.38. Juli 2026
- Fix
The usage-pace arrow finally tells the truth on weekly windows — its thresholds were absolute %/hour bands calibrated for the 5h session cycle, so a 7-day limit (ideal pace ~0.6%/h) ALWAYS showed a reassuring green ↓ even while you burned quota at twice the sustainable rate. Thresholds are now relative to each window's own ideal pace (↑↑ ≥1.5×, ↑ >1.05×, = around 1×, ↓ below), matching the popup's logic so the page and popup arrows always agree
- Fix
The on-page usage panel now refreshes live — the refresh path skipped the panel whenever the percentage hadn't moved, but reset countdowns, the theoretical pace comparison, per-window pace arrows and the ≈message/≈token estimates all drift with TIME, so an open panel froze on whatever it showed first. Every poll now swaps the panel's content in place (keeping hover/pin state) and re-evaluates the chip's arrow
- Entfernt
Auto-Reply is deprecated and gone: claude.ai now ships this capability natively, so UsageMeter's implementation — the composer button and its prompt queue, the <autoreply> tag interceptor, the ToS-risk warning modal, the per-conversation prompt storage and the setup/settings toggles — has been retired in full, in all 34 languages. Stored Auto-Reply data (one entry per conversation) is cleaned up automatically on update, and one less module gets injected into every page
- Fix
- v1.3.28. Juli 2026
- Neu
Full compatibility pass for claude.ai's 2026 "dframe" redesign (the new app shell with the Chat ⇄ Cowork switcher) — every on-page module was re-anchored and re-verified against the new DOM
- Fix
The usage stats panel opened far to the right of the chip instead of under the cursor — the redesigned shell creates containing blocks for position:fixed elements, so a tooltip nested inside the chip resolved its viewport coordinates against the wrong ancestor. It now portals to the page body (the same cure the /code chip already used), with viewport clamping so it never spills off the right edge, an arrow that keeps pointing at the chip, and a flip-below mode when the chip sits in the top half of the screen
- Fix
Switching Chat ⇄ Cowork froze the page — UsageMeter's bar re-anchoring ran synchronously on every DOM mutation during the switch's render storm: each pass forced a reflow, scanned the whole document, and could move the bar mid-render, fighting React move-for-move. It now coalesces to one pass per animation frame, throttles full scans to one per 150ms, and only relocates the bar when it is genuinely misplaced
- Fix
On the home page the "Project / Skip permissions" strip tucks under the composer with a negative margin; in Chat mode it collapses to zero height but KEEPS that margin, which pulled the UsageMeter bar up into the composer box. The bar now measures the strip's real layout contribution and pads its own margin dynamically — correct in both modes, glides along Anthropic's 280ms collapse animation, and re-settles after the transition ends
- Verbessert
Export survives the redesign's virtualized conversation feed — only a screenful of messages is mounted in the DOM now, so exports of long chats would silently truncate to the visible window. When UsageMeter detects an incomplete window (via the feed's aria-setsize turn count) it fetches the full transcript from Claude's own conversation API instead, keeping thinking blocks and still extracting fenced code blocks as files, with the DOM scrape as fallback
- Verbessert
More redesign adaptations: in-row chips (non-ring mode) now sit BEFORE the model selector wrapper (the new composer slides the wrapper sideways over anything placed after it while the send button is hidden); the disclaimer bar is found via the redesign's semantic role="note" hooks; the accounts button re-anchored into the new sidebar footer next to the user menu; auto-reply gained extra send-button label variants plus a synthetic-Enter fallback
- Neu
Notification system rebuilt from scratch: ONE notification instead of eleven. UsageMeter now only notifies when your 5h session reaches 100% — Pro plans only, at most once per cycle, and clicking it jumps back to claude.ai. A single toggle in Settings → Notifications turns it off
- Verbessert
Removed with the old notification pack: 80/90/95% threshold alerts, high-usage-rate warnings, reset reminders and "reset completed", the Monday weekly recap, x2 promo start/end alerts, streak milestones, "Claude finished replying", the SmartQueue sent notification and the whole in-page notification manager content script — one less script injected into every page, less background work, zero notification spam
- Neu
The on-page usage panel got a full visual refresh — frosted editorial card (backdrop blur, layered shadows, 14px radius), a soft pop-in animation (honoring reduced-motion), refined progress bars, and a plan chip in the header. Free accounts get one discreet "Upgrade to UsageMeter Pro" row at the bottom of the panel; Pro accounts get their PRO chip and nothing else. Bonus fix: the flipped-arrow color used a raw HSL triple as a color, so the arrow silently lost its fill when the panel rendered below the chip
- Neu
The Pro page was redesigned to actually sell: editorial ink hero with the live "users online" count (real heartbeat data, hidden when unknown), six concrete feature rows that finally use their accent colors, and an honest Free vs Pro comparison table where every line maps to a real gate in the code (3→10 accounts, 50-message md/txt exports → unlimited + PDF/DOCX/JSON/HTML, 24h & 7d insights, the 100% session alert, priority support). The Pro hint under the notification toggle is now a real door to that page instead of a dead-end sentence
- Fix
The "upgrade to see the chart" button on usage detail pages did nothing — the component emitted show-upgrade but nothing listened. It is now wired to the Pro page, and the six identical bland lock overlays were replaced by one shared teaser (crown, "Deep usage insights" pitch over the blurred real chart, trial CTA) that actually sells the unlock
- Verbessert
Every UI string now exists in all 34 languages — the redesign/Pro/notification additions were translated into the 32 remaining locales, and a full audit filled every historical gap (league tier names & descriptions, model breakdown labels, import/export strings, the Esperanto and Klingon stragglers). Missing-key count across all locales: zero
- Fix
Strict Pro gating for the quota-full notification: content.js now mirrors the VERIFIED license verdict to storage and the background checks that mirror (or the signed-in plan) — a leftover cached license key is no longer treated as proof of Pro, so free accounts can never receive the notification. The setup wizard shows the toggle with a PRO pill but keeps it locked on free
- Neu
Usage engine hardening (phase 0): the /usage parser now understands Claude's new limits[] schema COMPLETELY — session, weekly, and every per-model weekly limit (Opus, Sonnet, Fable) are mapped onto the fields all displays read, so the day Claude removes the legacy payload nothing goes blank. One shared implementation (core/usage-normalize.js) replaces the two divergent copies that background and content each carried
- Neu
The per-model weekly limit (e.g. "Fable (7d)") is now a selectable bucket everywhere the 5h/Sonnet/Weekly choices exist: on-page chips per page, the toolbar badge, Settings → Usage Indicator (labelled with the live model name) and the setup wizard
- Fix
Send-button detection no longer depends on the UI language — auto-reply, SmartQueue and scheduled sends matched the button's localized aria-label ("Envoyer"/"Send"), which silently broke in the other ~40 locales. They now resolve it structurally from the stable chat-input anchor (label match kept as a fast path, ProseMirror Enter dispatch as the last resort)
- Neu
Conversation length in tokens, computed 100% locally — a vendored o200k tokenizer runs in the background worker (never on the page), reads the same conversation-tree endpoint the exporter already uses, walks the CURRENT branch only, skips ephemeral thinking blocks, and estimates images (capped) and PDFs from their metadata. Shown as "≈N tok" next to the composer, red past 50k, marked ≈ when tool calls make the true weight unknowable. Zero external API calls, works offline
- Neu
"Messages remaining" the honest way: instead of the invented quota caps other trackers hardcode, UsageMeter measures the REAL % jump each of your messages causes on each limit (snapshot before send, /usage re-check after the reply), keeps a sliding window of 20 observations per limit, and extrapolates from the median of the cheapest limiting factor. Shows an em dash until it has 5 real observations — no false precision — then "· M msg" beside the token count, red under 15. Auto-calibrated to your plan, your models, your usage
- Verbessert
The new metrics chip is mounted through an idempotent anchor system (compare-then-insert, state kept in JS, 750ms repaint tick) — it survives claude.ai's SPA re-renders and works in any UI language, and never touches the DOM when nothing changed
- Verbessert
Conversation metrics polished and made configurable: a dedicated toggle in Settings → Features (and the setup tour) shows/hides the chip live; the chip itself got the house chip styling (hover, hairline separator, tabular numerals) with graduated amber→red states (30k/50k tokens, 30/15 messages). The usage panel now shows "≈M msg" remaining PER window (5h / weekly / per-model) once each has enough observations, plus a Conversation section with the measured token length and the ≈context headroom left before the 200k window fills
- Neu
Opt-in "Approximate usage": token counts on your quota windows (≈used / ≈cap under each bar, ≈tokens left on the binding limit in the composer chip) derived EXCLUSIVELY from your own measured messages — Δ% per limit vs the message's token cost, cap estimated on the 15th-percentile FLOOR of the ratio cloud so parallel Claude Code / other-device consumption (which can only inflate deltas) gets rejected instead of skewing the number. No hardcoded caps, no invented "credits", no per-model weight tables — the exact percentage always stays the primary figure
- Verbessert
The estimator plays it safe by design: a cross-tab single-flight lock discards any measurement taken while another claude.ai tab was answering (self-healing against crashed tabs), attribution windows wider than 8s are dropped, model switches between snapshots invalidate the per-model sample, each model keeps its own estimate, and nothing shows before 8 clean observations per window — the line stays dimmed until 25. Off by default; when off, zero token numbers appear anywhere
- Neu
- v1.3.12. Juli 2026
- Verbessert
Opening the popup no longer blocks on a full-screen loader — the header, tabs and views render instantly and a slim "Syncing" strip at the bottom of the window shows while fresh data loads, so you can check your usage or browse any tab right away. Your level, league tier and global rank are now visible directly on the Usage tab the moment the popup opens (served from the last sync, silently refreshed in the background), and the Ranks tab shows its cached leaderboard instantly instead of re-loading with a spinner on every visit
- Verbessert
Realigned the on-page usage indicators with Claude's new limit structure. Anthropic retired the dedicated Opus (7d) and Claude Design (7d) limits, so UsageMeter no longer surfaces them — the Claude Design chip now tracks the general 5h session like the chat and Code chips. In their place UsageMeter shows Claude's new per-model weekly limit (e.g. "Fable (7d)") in both the on-page usage tooltip and the popup usage view, labelled with the model name automatically
- Verbessert
Injected chips now fade and scale in smoothly on page load instead of popping in from nowhere, and they no longer blink when a usage refresh returns the same percentage — a chip is only redrawn when something actually changed. Both respect the OS "reduce motion" setting
- Verbessert
The usage ring now fills smoothly when your percentage changes — going from 10% to 20% glides the arc up to 20 instead of snapping there. It is driven by a per-frame requestAnimationFrame tween (easeOutCubic, 650ms) instead of a CSS transition on the SVG stroke, which never animated reliably across browsers, so the gauge used to jump. A new value mid-animation retargets from wherever the arc currently is, and the Claude Code web ring now fills up from empty on first paint. Applies to every injected ring: chat, chat-bar ring mode and Claude Code web
- Verbessert
Every animation UsageMeter injects into claude.ai was refined around one motion system — consistent easing (a premium decelerate for entrances, a soft spring for pops, a quick accelerate for exits) and harmonized durations. Toasts and notifications settle in with a subtle scale, button tooltips slide up as they fade in, and the queue / schedule / theme-nav buttons gain a gentle lift on hover. All of them now honor the OS "reduce motion" setting (previously only the MAX badge did), and every transition: all rule was replaced with explicit, GPU-friendly properties for smoother frames
- Fix
The Pro upgrade notification had silently lost its slide-in animation — its style block shared an id with the smart-notifications stylesheet, so whichever injected first won and the entrance class was dropped. With its own id it now slides in and out properly
- Neu
MAX state on every usage indicator injected into claude.ai — when the 5h session hits 100%, the chip or ring turns red with a subtle pulse and alternates between "MAX" and your live extra-usage amount (e.g. 0,00 €) on an 8-second cycle. Pure-CSS animation synced to the wall clock, so every chip on the page stays in phase and page navigations never restart the cycle; falls back to a static MAX without pay-as-you-go, and freezes cleanly under reduced-motion. Covers all six surfaces: chat, chat-bar ring, Claude Code chat, code main form, Claude Code web and Design
- Neu
When the session is maxed out, the Extra usage card in the popup is highlighted with a red border and an "Active now" badge (translated in all 34 languages) — so you immediately see that spending has taken over from the quota
- Verbessert
- v1.3.010. Juni 2026
- Neu
Complete popup redesign — the extension now wears the same editorial identity as usagemeter.app: deep ink (#0a0a0b), paper-white type, amber accents, hairline dividers, Instrument Serif display type and Geist Mono micro-labels (all fonts bundled locally). One visual language from the website to the popup
- Neu
The 5-hour session is now a hero circular gauge — one big tabular number inside a ring, color-coded by a single semantic scale used everywhere (green < 50%, amber < 75%, deep amber < 90%, red above), with the reset countdown right under it. The 7-day, Opus, weekly and Design counters become compact rows with thin bars, so the whole picture reads in a glance
- Verbessert
Every view was reskinned to the new language: tab bar with an ink pill indicator, editorial changelog, paper account rows with semantic usage colors, muted league/badge tints, paper-to-amber activity heatmap, redesigned login, error and loading states
- Neu
Activity heatmap, GitHub-style — a new card under "This week" maps your Claude activity hour by hour: Week view is a 24h × 7-day grid, Month view a calendar of weeks, each cell colored by the hour/day usage peak on a dark-to-amber 5-step ramp, with a smart tooltip (date · hour · %). Spot at a glance when you burn your quota
- Neu
The "This week" card now shows 7 per-day mini bars (daily peak, semantic colors, current day underlined in amber, hover tooltips) plus a delta versus the previous week — alongside the existing cumulative usage, resets and average peak numbers
- Neu
Each day of the week is clickable — it expands an inline hour-by-hour breakdown of that day (24 columns, hourly peaks, day header with peak and average), with real hover tooltips on every bar. Click again or hit the cross to collapse, click another day to switch
- Verbessert
The activity heatmap gained a GitHub-style legend (less → more), a peak insight line ("Peak: Wed 14:00 · 69%" plus active hours/days count), an amber outline on the current hour/day, cross-highlight of the day and hour labels on hover, weekday initials on the month view and smoother view transitions
- Verbessert
Usage history now compacts itself: flat stretches are stored as just their first and last points (charts render identically by interpolation), reset markers are pinned, and redundant fields are dropped. Around 90% lighter on storage, so the history cap was raised from 2,000 to 6,000 points per category — roughly 3× more depth for your charts, heatmap and CSV exports, with a gentle one-time migration of existing data
- Verbessert
The setup tutorial wears the dark editorial style too, and its live preview was rebuilt to faithfully mirror the real claude.ai dark interface — sidebar with recent chats, serif greeting, chat bubbles, rounded composer with the UsageMeter usage ring chip inside, coral send button — so theme and width choices preview exactly as they will look
- Neu
A farewell page now opens if you uninstall UsageMeter (usagemeter.app/goodbye) so you can tell us what went wrong — it carries only the version and language, no personal data
- Neu
- v1.2.2810. Juni 2026
- Neu
Ask Claude from the address bar — type "cl", press Space/Tab, type your question and hit Enter: a Claude chat opens with the question pre-filled. Works on Chrome and Firefox desktop, no extra permission needed
- Neu
"Claude finished replying" notification — start a long generation, switch to another tab, and UsageMeter sends a system notification the moment the response completes (only when the tab is actually in the background, once per generation, and never on intermediate Auto-Reply continuations). Clicking it brings you back to the conversation. Toggle under Settings → Notifications
- Neu
Send later in SmartQueue — queued messages can now be scheduled for a specific time (+1h, +3h, tonight 20:00, tomorrow 09:00, or any custom time). Scheduled items survive a 429 drain and browser restarts, fire even when the claude.ai tab is not focused, and can be unscheduled with one click. If no claude.ai tab is open at the chosen time, the message goes out the next time one is
- Neu
The first-run setup is now a real feature tour — every UsageMeter feature is explained AND configurable right from the wizard (usage indicators, page tools, notifications, toolbar badge bucket), with live apply to open claude.ai tabs and a "good to know" section for the zero-config goodies (omnibox, SmartQueue, exports, multi-account). Re-running it no longer wipes preferences it did not show
- Fix
Chrome Web Store rejection ("remotely hosted code in a Manifest V3 item") — the bundled PDF library (jsPDF) ships a CDN fallback script URL inside a code path the extension never calls, and the store scanner flags any remote script URL found anywhere in the package. The build now scrubs every remote script URL from that bundle AND refuses to produce a ZIP if any remote script/stylesheet reference ever reappears in the package. Belt-and-braces: the setup page also stopped loading its three font families from Google Fonts — all 17 font files are now bundled locally, so the wizard renders identically offline
- Verbessert
All the new strings of this release (feature tour, favicon ring, CSV export, finished-reply notification) are translated in the 34 supported languages instead of falling back to English
- Neu
Favicon usage ring — the claude.ai tab icon now wears a colored ring showing your 5h usage at a glance (green < 50%, orange < 75%, red above), updated live and resilient to claude.ai rewriting the tab icon while you navigate. Toggle it under Settings → Features → "Favicon usage ring"
- Neu
Export your usage history as CSV — a small button on the charts in the usage details view downloads every recorded data point (all accounts, all categories, ISO timestamps), because your data belongs to you
- Fix
The Weekly Recap notification was double-broken: it averaged a field that does not exist in the usage history (so it always reported "avg 0% usage"), counted every data point twice (per-account + global aggregate), and pointed at a non-existent icon file — which makes Chrome silently drop the notification, so most users never saw it at all. It now reads the right field, counts each point once, uses the real icon, and reports the weekly peak with its day (e.g. "peak 91% on Tuesday"). Same dead-icon fix applied to the SmartQueue "message sent" notification
- Fix
Usage percentage could freeze at a stale value for days — most visible on Firefox — because the background usage fetch was failing silently and nothing aged the cache out, so the popup kept showing the last-good number (a permanent "97%" for some users). Two-part fix: the content script now ages the cache out after 2 min and refreshes via a same-origin direct fetch from claude.ai (page cookies always attach, even on Firefox), self-healing a stuck number whenever a claude.ai tab is open; and the popup forces a fresh background fetch + retry when its cache is older than 3 min instead of trusting it
- Fix
The "updated X ago" stamp under the usage cards always read "just now", even on data that was days old — the popup read cache.ts / fetchedAt while the background wrote cache.timestamp (two writers, mismatched field names), so it always fell back to the current time. It now reads the correct field and shows days (e.g. "9d 4h"), making stale data obvious instead of looking live. Both cache writers now stamp a unified timestamp + source field
- Neu
The data-freshness stamp under each usage card is now a refresh button — click it to force a fresh fetch. The sync icon spins while refreshing and the whole stamp turns amber when the displayed data is stale, so a stuck percentage is both visible and one click away from recovering
- Fix
Removed a no-op Cookie request header the background fetch set "for Firefox" — Cookie is a forbidden fetch header the browser silently strips, so it never did anything; authentication rides on credentials: "include" and, on Firefox, the same-origin content-script path. The background also self-heals a stale lastActiveOrg cookie: on a 403/404 from the usage endpoint it re-derives the active organization from /api/organizations and retries once, recovering users who switched or left an org
- Verbessert
The background now records the outcome of every usage fetch (last HTTP status, last error, last attempt + last success timestamps under usagemeter_usage_fetch_status), so a failed refresh can be diagnosed — 401/403 means re-login, a network error means offline — instead of the percentage just silently freezing
- Neu
- v1.2.272. Juni 2026
- Neu
Leaderboard: Ligue / Global segmented switcher at the top of the Classement card, only shown when you're in a league (defaults to League view, falls back to Global otherwise). New tier explanation card tinted in the league color shows the league name (Bronze → Silver → Gold → Platinum → Diamond → Obsidian), the percentile threshold (e.g. "Top 2%" for Obsidian), a one-line description of the tier, and promote/relegate hints (top 5 promote, bottom 5 relegate — arrows hidden at the top of Obsidian and bottom of Bronze where they don't apply). Tier colors mirror the backend cron: bronze #cd7f32, silver #c0c0c0, gold #ffd700, platinum #e5e4e2, diamond #87ceeb, obsidian #7c3aed
- Neu
Badges: 25 new badges in 5 brand-new groups (53 total across 14 groups, up from 28). New groups: XP Milestone (1k / 5k / 25k / 100k XP), Weekend Warrior (5 / 20 / 50 weekend days), Perfectionist (10 / 50 / 200 / 1000 cycles with peak under 25%), Level Up (level 5 / 7 / 10), Challenger (5 / 20 / 50 weekly challenges completed). Every existing group now has 3 or 4 tiers — added a Legendary tier 4 (purple) to first_steps, night_owl, early_bird, zen, pace, limit, survivor and multi-tasker. The "Early Bird 1/1" you used to see is now "1/4" with a progression all the way to 100 mornings before 7am
- Neu
BadgeGrid UI: per-group tier counter (2/3 below the dots), header shows both flat count and grouped count (e.g. "6/12 · 5/9 catégories"), and the detail panel now renders a progress bar with current / required value for every unearned tier — so you see "8/10 cycles → Perfectionist II" at a glance instead of just a locked icon. Groups sort earned/in-progress first, fully locked last. Full-mastery checkmark only appears when ALL tiers in a group are unlocked
- Neu
5 new badge trigger types in web/src/lib/gamification.ts: total_xp (current totalXp), reach_level (current level), weekend_active (DAYOFWEEK SQL on daily_activity), perfectionist (JSON_EXTRACT on xp_ledger metadata.peak), challenges_completed (count of deviceChallengeProgress.completed). New computeTriggerCounts() helper batches every count in parallel and exposes currentValue/triggerValue per badge in the snapshot — that's what drives the progress bars above
- Fix
Retroactive badge awarding: buildGamificationSnapshot now re-runs checkAndAwardBadges on every snapshot read (bounded by the 10-min popup cache, so at most ~6 checks/hour per active user). Users who already qualified for a badge but never received it because the badge didn't exist at the time, a previous award attempt was skipped due to a bug, or the trigger type was added later, now automatically get the badge on next popup open. Also fixed: first_sync trigger falls back to counting daily_activity rows when totalSyncDays is 0 (could happen when processSync ran before processHeartbeat on a fresh device), and streak trigger now uses max(currentStreak, longestStreak) so a single missed day doesn't revoke a badge already earned. Companion script web/scripts/recheck-all-badges.ts batch-backfills the whole user base in one shot
- Neu
Model breakdown donut chart on the Usage tab — pure SVG (no library), shows the share of this week's usage split across Sonnet (#5b9bd5), Opus (#b45cff) and Claude Design (#ec4899). Center text: the dominant model + its share. Legend on the side lists each model's share % and raw utilization %. Only appears when at least 2 model buckets have data, hidden otherwise to avoid showing a one-color donut. Computed share = bucket_utilization / sum_of_all_bucket_utilizations, so it answers "which model burned my week?" rather than just repeating the per-bucket numbers already shown above
- Neu
Export to PDF and Word — two new format buttons in the Pro section of the export modal. PDF uses jsPDF (paginated A4, vector text, role-colored YOU / CLAUDE headers, thinking blocks in italic gray, title + metadata header, page footer). DOCX is hand-rolled — DOCX is just a ZIP of three XML files (Content_Types, .rels, document.xml) and we already had a STORE-method ZIP utility for the code-extraction feature, so the docx npm package is skipped entirely (~250 KB shaved). Opens cleanly in Word, Google Docs, LibreOffice. Both formats added to proFormats and gated to Pro like the existing JSON / HTML exports
- Fix
Firefox "limit refreshed" notification spam — users on free were getting a system notification every time they opened Firefox after using Claude, with no way to turn it off because the resetCompleted toggle lived in the Pro section with :disabled="!isPro". Meanwhile background.js was firing the notification regardless of Pro status (it only checked prefs.resetCompleted, not the plan). Moved resetCompleted to the free section so the toggle actually works, and removed the :disabled on the other Pro notifications for the same reason — every firing site in background.js only checks the pref, so locking the UI just denied free users an escape hatch. PRO badge above each toggle stays as informational marketing, but you can now actually disable any notification regardless of plan
- Verbessert
GitHub URLs consolidated to PiloteCode/UsageMeterIssues across the codebase — was a mix of PiloteCode/UsageMeter, PiloteCode/UsageMeter, pilotecode/usagemeter (lowercase), and PiloteCode/UsageMeterIssues. Touched package.json (repository.url), src/popup/components/settings/AboutSection.vue (GitHub + Report Bug links), src/README.md (clone command + issues link), and web/src/app/[locale]/bug-report/page.tsx (GitHub issues card on the bug report page)
- Neu
Desktop sign-in by code — in Claude Desktop the Google/OAuth redirect opens in the external browser and can't hand the session back to the extension, so login silently failed. New "Sign in with a code" flow: log in on usagemeter.app (which detects ?from=desktop and routes to /account/desktop), it shows an 8-digit PIN, you type it into the extension and it exchanges the PIN for a session token. PIN is single-use, 10-minute TTL, rate-limited. Backed by /api/extension/auth/desktop-pin (issue, session-gated) + /desktop-pin/claim (exchange) and a DesktopLoginPin table. The Google/GitHub buttons auto-route to this flow when running in Desktop
- Fix
Desktop: extension assets loaded via chrome.runtime.getURL — notably the Claude Code export button icon — were broken because chrome-extension://__usagemeter_desktop__/ doesn't resolve in the injected Electron build (the <img> 404'd). getURL now resolves to the local bridge (http://localhost:9333), which serves every embedded extension file, so icons and other getURL assets render correctly on the desktop app
- Verbessert
Version is now injected from manifest.json at build time (__APP_VERSION__ via Vite define) instead of a hardcoded fallback that drifted out of sync — the desktop About panel used to show a stale 1.2.14 whenever chrome.runtime.getManifest() returned no version. The desktop .exe build also rebuilds dist/ from src/ automatically (with a guard that refuses to package an empty dist/), so the embedded extension version can no longer lag behind the source
- Verbessert
Chat-bar ring mode is now ON by default — the usage ring + Auto-Reply + Export tools take over the "Claude can make mistakes…" disclaimer bar under the composer instead of sitting separately. Turn it back off in Settings → Features → "Chat bar: ring + tools" (existing installs that explicitly saved it OFF keep their choice)
- Fix
Ring mode left the native "Claude can make mistakes…" text showing ALONGSIDE the UsageMeter chips — the disclaimer text is a bare text node, not a child element, so the old hide-children pass missed it. It's now wrapped in a hidden span (restored when ring mode is turned off), so the bar shows only the chips
- Neu
UsageMeter Desktop (the standalone Windows app) now shares ONE data store with the real Claude Desktop — it launches the patched copy with CLAUDE_USER_DATA_DIR pointed at the Microsoft Store app's data container, so the login session, preferences, conversations and MCP config are identical whether you open Claude normally or through UsageMeter. Before, the de-packaged copy wrote to a separate folder, so you appeared logged out / unconfigured (and got usage 403s) when launched via UsageMeter. Build hardening on the side: the .exe build now rebuilds dist/ from src/ first, retries the occasional Windows vite segfault, and aborts rather than ship an .exe with an empty dist/
- Fix
Popup footer showed the legal + privacy links twice — removed the duplicate footer and kept a single refined row, with Confidentialité now pointing at the bundled privacy.html for Chrome Web Store compliance
- Fix
The "Usage Reset!" system notification no longer fires for a STALE reset — reopening the browser/extension hours after the 5h window reset used to pop it every time (Pro AND free, since background.js doesn't gate on plan). It now only fires when the reset happened less than 3h ago, derived from the API resets_at timestamp (last reset = resets_at − 5h)
- Neu
- v1.2.2625. Mai 2026
- Neu
HAPPYMAY promo — 1 full month of Pro FREE with code HAPPYMAY. Banner + celebration modal re-armed for everyone (dismiss/seen state is keyed by promo ID). Runs until June 15, 2026. Translated into all 34 locales
- Neu
- v1.2.255. Mai 2026
- Neu
Configurable browser-toolbar badge — pick which bucket the number on the UsageMeter extension icon reflects (5h session / Sonnet 7d / Weekly 7d / Opus 7d / Claude Design 7d) or disable it entirely. Default: 5h. Configurable from Settings → Usage Indicator → Browser badge
- Neu
Export to Claude Code — new white-icon button next to the chat composer (toggle on by default in Settings → Features → Export to Claude Code) opens a modal that builds a long, structured handover prompt of the entire current conversation: a localized preamble briefing Claude Code on the import, 7 explicit instructions (read every turn, summarize back, verify the workspace with Read/Glob/Grep, don't redo work already done, re-confirm destructive actions, propose the smallest next step, match the prior tone), the conversation metadata (title / id / model / export date / turn count), the full turn-by-turn transcript with thinking blocks preserved, and an outro asking for a 3–6 bullet recap before any filesystem action. The modal one-click copies the whole thing to the clipboard with a green ✓ Copied confirmation, and an orange notice reminds the user that file attachments (PDFs, images, uploaded source files) are NOT carried over because claude.ai exports are text-only. The button is also injected via the master MutationObserver, not just on init, so it lands the moment the composer renders — no flash of missing button on SPA navigation between chats
- Neu
Translations in all 34 locales for v1.2.25 — every new string lands fully localized: the browser-badge row + Disabled bucket label (settings.usageIndicator.badgePage / badgePageDesc / bucketOff), the Export-to-Claude-Code feature toggle (settings.features.claudeCodeExport / claudeCodeExportDesc), and the entire claudeCodeExport.* tree (modal title/intro/files notice/copy/copied/close/charCount + the 22 prompt sub-keys covering preamble, the 7 numbered instructions, attachments warning, metadata labels, transcript header, role names, thinking, and the outro). Variants inherit from base (es-AR / es-CL / es-ES / es-MX from es; pt + pt-PT from pt-BR; zh-TW from zh) so 32 non-EN/FR locales get hand-picked translations rather than English fallbacks. Generated via scripts/add-i18n-v1225.mjs
- Entfernt
Display Mode (Minimal / Default) toggle retired entirely — gone from the setup tutorial AND from Settings → Display mode in the popup. Minimal mode hid the trend arrow and the modified Code-chat buttons, but the toggle was confusing on first run (it hid the very indicators the user just configured) and barely anyone used it. The legacy `currentDisplayMode === 'minimal'` gates in content.js are removed too, so users with `displayMode: minimal` previously saved in storage now see the full UI on next page load
- Verbessert
Setup tutorial pruned — Focus Mode toggle dropped too. Collapsing the sidebar on first run was too aggressive a default; still available from the popup's Customize → Shortcuts panel for power users
- Verbessert
Settings → Ask Claude presets: clicking Edit (or Add preset) on a preset now smooth-scrolls the inline editor into view. Before, hitting Edit on a preset low in the list left the form below the fold and the user had to manually scroll to see the name + prompt fields
- Neu
- v1.2.2429. April 2026
- Neu
Chat Bar: ring + tools — new toggle in Settings → Features (off by default) that takes over the "Claude is AI, can make mistakes…" disclaimer bar under the composer and turns it into a compact icon row holding the usage chip + Auto-Reply + Export. Detection is structural (finds the disclaimer container by Tailwind classes, not by language-dependent text), so it works in every locale. On /new (and any page where Anthropic doesn't render a disclaimer) UsageMeter synthesises a styled bar in its place anchored after the composer; on /chat/<id> we override Anthropic's `py-2` to a tighter 4px so the row collapses to icon height
- Neu
Chat-bar chip switches to the /code ring style when ring mode is on — drops the bar-chart icon for a 12×12 SVG ring on the right with animated stroke-dashoffset gauge, percentage on the left, and the trend arrow (↑↑ / ↑ / = / ↓). The same digital-clock %-roll + arrow flip-blur morph that the chat chip already used now also animates the ring stroke between polls
- Neu
Setup tutorial redesigned with a 2-column layout — a new persistent ClaudePreview pane on the right shows a faux claude.ai surface that reacts live to every option the user touches on the left (theme color, chat width, font + size, ring mode, disclaimer mode, usage indicator). The right pane derives a full palette from the chosen accent (--cp-accent / -fg / -soft / -tint / -border / -strong) so the WHOLE preview re-themes in 0.4s, not just the send button. Sticky on viewports ≥ 900px, stacks vertically below; container bumped from max-w-2xl to max-w-[1480px] so users get an actual full-screen tutorial instead of a cramped column
- Neu
WelcomeStep gets the official UsageMeter logo PNG (assets/icons/usagemeter-logo-full.png, exposed via web_accessible_resources) with a subtle breathing animation and a cycled welcome title rotating through 13 languages. The in-step demo carousel moved to the new ClaudePreview so the lang grid has more room — went from 4 cols / 280px-tall to 4 cols / 240px with the scrollbar hidden
- Neu
CustomizeStep exposes ALL 56 built-in themes (was 16) — same Neutrals / Warm / Cool / Vivid / Pride / Gradients groups as the popup, with a "Voir plus (N)" toggle per group so only the first 6 swatches are visible at a time. Active swatch sticks visible even when collapsed. Pro themes are flagged with a small crown badge but still selectable in the tutorial; the licensing gate kicks in later. Chat width (default / wide / max) now actually changes the preview's conversation max-width with a 0.4s spring transition. Added a "Par défaut" reset button that clears font + restores 16px size, and the ring-mode toggle is now offered in step 2 too with a big iOS-style switch
- Entfernt
Focus Mode toggle dropped from the setup tutorial — collapsing the sidebar on first run was too aggressive a default. Still available in the popup's Customize → Shortcuts panel
- Neu
Translations in all 34 locales for every new setup string — preview/demo (10 keys), step badges, chat-bar ring mode (3 keys + ring on/off labels), achievements tier names (Bronze/Silver/Gold/Legendary), reset/seeMore/seeLess (~30 strings × 34 = ~1000 entries) via scripts/add-i18n-v1224b.mjs. Variants (es-AR, es-CL, …) inherit from their base locale automatically
- Fix
BadgeGrid expanded view no longer duplicates the badge name on every tier row — the group title above already says "Zen Master", so the row now shows Tier I + the palier name (Bronze / Silver / Gold / Legendary, coloured per tier) + the unlock criterion description. Description wraps freely instead of being truncate'd
- Fix
Backend gamification cycle-peak detection (web/src/lib/gamification.ts) — Zen Master / Pace Setter were silently mis-counted because processSync() used `prev.utilization` (the value just before reset) as the cycle peak instead of the actual maximum across the cycle. A run like 0% → 80% → 30% → 0% was wrongly counted as "under 50%" (peak appeared as 30). The peak is now tracked per-category as a running max, so consecutiveLow50/80 only increment when the cycle TRULY stayed under the threshold. Added `npm run seed:badges` to web/package.json so tier II/III rows can be re-seeded for users on the old DB schema
- Fix
UsageIndicatorPrefs dropdown no longer hides behind NotificationPrefs — `.glass-card` uses backdrop-filter which creates a stacking context, so the dropdown's z-30 was trapped inside the card. The card is now lifted to z-20 only while a dropdown is open, then drops back to auto so the rest of the layout flow stays intact
- Verbessert
Ring-mode modules drop their resting border + tighten to `h-6 px-1` so they look like icon-buttons rather than chips inside the disclaimer bar. Auto-Reply's active-state border is gone too — `on` is signalled by green text + bg fill alone
- Fix
Ring-mode chip no longer flashes in the composer for ~9 seconds on first page load — `loadFeaturePreferences()` is now awaited BEFORE the first `updateUsageDisplay()` call (it was running after, so the first inject ran with `chatBarRingMode=false` and dropped the chip in the composer until the next 15s poll cycle re-applied)
- Fix
Ring-mode chip no longer "teleports" back to the composer between polls — every inject path (chip, Auto-Reply, Export) now BAILS OUT when ring mode is on but the disclaimer-bar host isn't in the DOM yet, instead of falling back to the composer. The master MutationObserver retries inject on every DOM mutation, so the chip lands in the bar on the very first paint when the bar appears
- Fix
Ring-mode chip no longer drifts leftward as the optional Auto-Reply / Export buttons load 100-400ms after the chip — the host now uses a canonical DOM order `[Export, Auto-Reply, Chip]` so the chip is always last (rightmost under `justify-content: flex-end`). New `placeInRingHost()` helper finds the first existing later-sibling and `insertBefore`s, so insertion order doesn't matter
- Fix
Ring-mode host width is forced to `100% box-sizing: border-box` and styles are re-applied on every resolution — without it, some Anthropic flex ancestors made the host shrink-to-fit content, making the modules drift "right" only after the next 10-15s poll. Disclaimer-bar children are double-gated by both a dataset flag and `display: none !important`, idempotently
- Fix
New Claude Code web composer (claude.ai/code rebuild) — Anthropic shipped a fresh layout where the model selector and a new built-in usage gauge sit in a `.ml-auto.flex.items-center.gap-g4` row. Our previous /code injection code looked for `section#turn-form` and `[data-testid="model-selector-dropdown"]`, neither of which exist in the rebuild, so the UsageMeter % indicator silently disappeared. We now detect the rebuild by finding any `button[aria-haspopup="dialog"]` containing the official 12×12 progress-ring SVG (two stroked circles), regardless of language
- Neu
Replaced Anthropic's minimalist usage button with a richer UsageMeter version on the new Claude Code web — Claude's official chip is just a 12×12 ring with no number. Ours shows the percentage on the LEFT, the matching ring on the RIGHT plus a trend arrow (↑↑ / ↑ / = / ↓), color-coded (green <70% / orange 70-89% / red ≥90%) and animates between values with the digital-clock %-roll + arrow flip-blur the chat chip uses. The official button is hidden via display:none so the layout stays tight; UsageMeter's rich hover popover (5h session, weekly Sonnet/Opus, Claude Design 7d, Extra Usage) replaces Anthropic's sparse one
- Fix
/code chip hover popover was rendering ~120px off-screen — the new composer is wrapped by an ancestor with `contain: layout` (and another with `will-change: transform`) which establishes a containing block for `position: fixed` descendants, so the tooltip's viewport coords resolved against THAT ancestor instead of the actual viewport. The tooltip is now portaled to <body> (escaping the broken containing block) and clamped horizontally + vertically so it never overflows. Tied to the wrapper via a MutationObserver so it cleans up on SPA navigation
- Fix
Tooltip position calculation no longer drifts on the first open — `positionTooltip()` ran while the tooltip still had `display: none`, so `getBoundingClientRect()` returned 0×0 and the height fallback (200px) was off by 129px on real popovers (329px tall). We now reveal the tooltip BEFORE measuring, so the same JS tick paints the correctly-clamped position from the start
- Neu
Per-page Usage Indicator setting — new section in Settings → Usage Indicator lets you choose, for each of the three Claude pages (chat / Claude Code / Claude Design), which utilization bucket the on-page chip should show: 5h session, Sonnet 7d, Weekly 7d, Opus 7d, or Claude Design 7d. The full breakdown is still always available in the hover popover. Defaults: chat → 5h, Claude Code → 5h, Claude Design → 7d Design
- Verbessert
isCodePathname() now matches both `/code` (the new rebuild homepage) and `/code/<session-id>`, so the indicator (and the multi-account compact button) work whether you're on the Claude Code home or inside a session. The previous `.includes('/code/')` test missed the homepage entirely
- Fix
Usage chart reset markers now use the actual resets_at from the API instead of walking backward by a fixed 5h interval — Claude changed the 5h window so a new cycle starts when you send your next message (not on a fixed clock boundary every 5h). Past reset lines in the 24h/7d charts were being drawn on the wrong tiles; they now come from the resets_at values stored on each history point, so every line corresponds to a real reset that actually happened
- Fix
chrome.storage.local quota exceeded errors — an earlier internal bump of MAX_HISTORY_ITEMS (1 000 → 10 000 points per account per category, ×4 categories × multiple accounts) blew past chrome.storage.local's 10MB quota for users with 3+ accounts, causing background syncs to fail with `Resource::kQuotaBytes quota exceeded` and the usagemeter.app sync to time out. Cap is back to 2 000 points per account (~7 days at the 5-min cadence), 4 000 for the global aggregate. Existing oversized arrays get trimmed on first sync, and the save path now retries with progressively smaller caps if the quota errors persist (last-resort: keep only the global aggregate, which the charts can still read)
- Fix
All 56 themes work again on claude.ai — Claude shipped a new color system (data-color-version="v2" on the html element) whose default rules have higher CSS specificity than our themes, so legacy selectors like [data-theme=claude][data-mode=dark] were being silently overridden. Every theme now carries both the legacy selector AND a v2-scoped variant ([data-color-version="v2"][data-theme=claude][data-mode=dark]) so it wins on both the old and new Claude builds
- Fix
Claude Design (/design) chip popover no longer overflows off-page on hover — the tooltip used to open BELOW the chip with a centered transform, which pushed it off the bottom of the viewport since the composer lives at the bottom of the design page. It now opens ABOVE the chip, left-aligned to it (upper-right direction), with a subtle 4px slide-up animation
- Neu
At MAX usage with pay-as-you-go enabled, the /design chip now surfaces the extra credit burn inline (e.g. "MAX +€0.00") with a gentle 2s pulsing glow animation — previously only a tiny dot hinted that extra credits were being billed. Also fixed the stray double-percent glitch in the chip label ("MAX%" → "MAX", "67%%" → "67%")
- Fix
"Hide Claude note" button works again — the "Claude is AI, verify responses" disclaimer under the composer was no longer being hidden when you picked "Hidden" in Customize → Shortcuts. The content-script handler (applyDisclaimer) had been dropped in a past refactor; the UI kept saving the setting but nothing applied it on claude.ai. Restored with a MutationObserver so it survives SPA navigation between chats
- Fix
Custom disclaimer text now renders — in "Custom" mode the text you type in the popup is actually swapped in place of the default note (empty string falls back to the original). Uses a plain span with no link styling
- Entfernt
Cache Timer feature retired — the live "Cache: 4m 32s" countdown next to the usage indicator is gone, along with its toggle in Settings → Features and its onboarding card. The 5-minute prompt-cache window is still very real on the API side, but surfacing a fixed clock added more noise than insight (Claude's actual cache hit rate depends on the request, not just elapsed time). Cache Timer translation keys cleaned out across all 34 locales
- Verbessert
Removed the custom cursor from usagemeter.app marketing pages (home, pricing, /cgv, /legal, /privacy, /terms, /fair-use, /support, /download, /bug-report) — native browser cursor is used everywhere now for a more standard feel
- Neu
Translations in all 34 locales for the new Usage Indicator settings (settings.usageIndicator.title/description/chatPage/codePage/designPage + bucketSession/Sonnet/Weekly/Opus/Design) and the Chat-Bar Ring Mode toggle (settings.features.chatBarRingMode + chatBarRingModeDesc, EN + FR; other locales fall back to the EN string)
- Neu
- v1.2.2221. April 2026
- Neu
Rebrand — the extension is now called UsageMeter (new domain usagemeter.app). Same product, same code, new name. Logo updated everywhere (popup, setup, Chrome Web Store, Firefox Add-ons). All 34 locales translated
- Neu
Fair Use & trademark notice — new /fair-use page on usagemeter.app explaining our relationship to Claude.ai: UsageMeter is an independent third-party productivity tool, not affiliated with, endorsed by or sponsored by Anthropic, PBC. Claude™, Claude.ai™ and Anthropic® are trademarks of Anthropic, PBC used here for nominative reference only
- Neu
Non-affiliation disclaimer added in Settings → About and on every page of usagemeter.app (footer + updated Legal/Terms/Privacy with no-Anthropic-data-sharing clause and independence card)
- Verbessert
Migration shims — existing storage keys (usagemeter_auth, sync keys, license-encryption salt, device fingerprint seed) are preserved so users keep their session, customizations, account list and Pro plan after the upgrade. No re-login needed
- Verbessert
Backward-compatible exports — account/theme export keys now use the `usagemeter-` prefix, but the importer still accepts previously-exported `usagemeter-` keys so nothing you saved gets lost
- Fix
CORS origin list on api.usagemeter.app accepts both usagemeter.app and usagemeter.app during the transition, so already-installed 1.2.21 clients keep working while users update
- Neu
- v1.2.2119. April 2026
- Fix
Rename account now actually persists — the native window.prompt() was detaching the MV3 popup and the new name was getting lost on the way back to the store. Replaced with a real in-popup PromptModal that keeps focus inside the extension window
- Neu
PromptModal component — themed glass-card with auto-focus + auto-select of the default value, Enter to save, Escape to cancel, 60-char limit by default. Exposed via provide('showPrompt') so any view can do `await showPrompt({ title, defaultValue, … })` instead of the blocking browser prompt
- Verbessert
Rename flow uses the account's current customName (or the part before @) as the prefilled value, with the full email shown as placeholder, so the user starts from something sensible instead of a blank field
- Neu
Soft auto-update check — background poll of /api/extension/version every 6h (plus an immediate first check 5s after boot). If the extension is behind, the popup shows a green "New version available — Update" banner that opens the Chrome Web Store (or AMO on Firefox) on click. Dismissal is keyed to the specific version, so the banner reappears automatically on the next release
- Neu
Backend endpoint /api/extension/version — reads web/data/extension-version.json and supports `?v=1.2.X` to return { behind, ahead, upToDate } without an extra compare step in the client. 10 min / 1 h CORS cache headers so polling is cheap
- Neu
Translations for rename modal (accounts.renameTitle, accounts.renameHint, modal.save) + update banner (update.bannerTitle, update.bannerSubtitle, update.youreOn, update.updateNow, update.remindLater) in all 34 locales via scripts/add-i18n-v1221.mjs
- Fix
- v1.2.2019. April 2026
- Neu
Claude Design (7d) usage bucket — the new seven_day_omelette quota now appears in the popup as its own card and inside the in-page tooltip, with the same progress bar, reset countdown and trend arrow as the other limits
- Neu
Extra Usage card in the popup — pay-as-you-go consumption (used credits / monthly cap, in your billing currency) is shown whenever the bucket is exposed by Claude, with a colored utilization bar. The API returns amounts in cents, so values are divided by 100 before display (e.g. 244 cents → €2.44 of €170.00)
- Neu
Extra Usage detail view — clicking the pay-as-you-go card opens a dedicated page with three credit charts (24h, 7d, 30d). Purple area + line in EUR on the Y-axis, dashed red reference line at the monthly cap, hover tooltip with date + amount. History is now persisted with used_credits / monthly_limit / currency so charts fill in as points accumulate
- Neu
claude.ai/design overlay — a compact Claude Design % chip is injected into the design composer next to the model selector. When the 7-day Design quota hits 100% and pay-as-you-go is enabled, the chip also surfaces the extra credits being burned (e.g. +€2.44)
- Neu
Account deduplication — adding an account that already exists (same email or same Anthropic UUID) no longer creates a duplicate row. The newer sessionKey replaces the old one and any stale duplicates are collapsed, preserving the user-set customName and subscriptionTier
- Neu
Automatic subscription-tier detection — on first save and every subsequent heartbeat, the extension reads memberships[].organization.rate_limit_tier from /api/account and maps it to free / pro / max5 / max20 (e.g. default_claude_max_20x → Max x20). No more manual tier pill clicks for most users
- Neu
Translations in all 34 locales for the new labels (Claude Design, Extra Usage, disabled pay-as-you-go, "of", "used", cap, Last 30 days) via scripts/add-i18n-extra-usage.mjs
- Neu
Ask Claude presets — the right-click "Ask Claude" entry on any selected text is now a sub-menu with 12 ready-made prompts: plain ask, Translate to English/French/Spanish/German, Summarize, Explain simply, Fix grammar & spelling, Make it professional, Make it shorter, Code review, Explain this code. Each preset has a {selection} placeholder that gets replaced with the highlighted text and opened in a new Claude tab
- Neu
Presets manager in Settings — new "Ask Claude presets" panel lists every preset with reorder arrows, edit, delete, and "Add preset". Free users get the 12 defaults read-only; Pro unlocks add / edit / reorder / delete. "Reset to defaults" restores the seeded library. Built-in presets can be edited locally without losing the original
- Neu
Preset names + UI translated into all 34 locales via scripts/add-i18n-askclaude.mjs (askclaude.presets.* + askclaude.settings.*). Context menu rebuilds automatically when the preset list or UI language changes
- Neu
- v1.2.1916. April 2026
- Fix
Chat input layout — the usage %, Auto-Reply and Export buttons now sit on the same line as the model selector again. Claude wrapped the selector in an extra non-flex div, which pushed our injected buttons onto a new row. The usage indicator is now inserted as a sibling of the `.transition-all` wrapper inside the flex row instead of nested inside it, so Auto-Reply and Export (which are positioned after the usage indicator) land on the same line too
- Fix
- v1.2.1816. April 2026
- Neu
Cross-browser cloud sync — all extension settings, preferences, customizations and account list are now synced to the server automatically every 5 minutes. Data is available on any browser you sign in to. No opt-in required — sync is always on
- Neu
Auto-merge on login — when you sign in, data from all your devices is merged automatically (highest version wins per field). Anonymous users get a random pseudonym; data carries over when you create an account
- Neu
Tutorial redesign — the first-run wizard is now a 4-step flow (Welcome → Personalize → Your experience → What else) and lets you customize Claude's look right inside the tutorial: theme color, chat width, font family + size with live preview. The preferences step is reorganized into grouped setting cards (Appearance / Features / Alerts / Display) and every setting has a smooth ℹ expand for a longer explanation. Persists directly through the customization Pinia store so your choices apply instantly on your first visit to Claude.ai. Translated into all 34 locales
- Neu
Disclaimer customization — new option in Customize → Navigation & Shortcuts to hide or replace Claude's "Claude is AI and can make mistakes" warning. Three modes: Default (untouched), Hide (invisible but layout space preserved so the input area doesn't shift), and Custom (replace the text with your own). Translated into all 34 locales
- Neu
99PROMO promo — 1 full month of Pro at -99% with code 99PROMO. Banner + celebration modal re-armed for everyone (the dismiss/seen state is keyed by promo ID, so the new promo always shows again). Runs until May 15, 2026. Translated into all 34 locales
- Fix
Prisma P2002 race conditions — concurrent heartbeat/sync requests no longer crash with unique constraint errors on device_gamification, daily_activity and rate_limits tables. All upserts now retry once on conflict
- Fix
Forgot password — the reset button was sending 0 emails because it used a raw fetch instead of the Better Auth client. Now uses requestPasswordReset() which handles CSRF and triggers the email callback correctly
- Fix
Setup wizard translations — added 10 missing keys (setup.subtitle, themes, themesDesc, autoreply, autoreplyDesc, accounts, accountsDesc, export, exportDesc, usageDesc) to all 34 locale files so the features step no longer shows raw i18n keys
- Verbessert
Privacy policy updated with Data Synchronization section explaining what is and isn't synced
- Neu
- v1.2.1713. April 2026
- Neu
SmartQueue queue management — click the Queue button with an empty editor to view queued messages, remove individual items, or clear the whole queue
- Verbessert
Popup bundle code-splitting — the main popup chunk dropped from 258 KB to 50 KB. Heavy views (Settings, Customize, Achievements, License, Account, UsageDetails, Login, StreakPanel, PromoModal) are now lazy-loaded with defineAsyncComponent and Vue/Pinia/canvas-confetti are isolated in dedicated vendor chunks. First paint goes from ~101 KB gzip to ~58 KB gzip (−43%)
- Verbessert
Auto-Reply menu redesigned — now uses Claude's native design tokens (bg-bg-200, border-border-300, text-text-100, …) so it matches the % usage tooltip exactly: same colors, same shape, same font, with a tooltip arrow pointing at the trigger button + Escape-to-close + plan badge (PRO / FREE)
- Fix
Auto-Reply menu translations — added the new menu strings (title, loop, deleteAfterSend, prompts, noPrompts, newPromptPlaceholder, add, importFromEditor, upgradeForMore, remove) to all 34 locale files so the redesigned menu no longer shows raw "autoreply.xxx" keys when the locale doesn't have them yet
- Fix
Popup translations — added the missing keys (back, cancel, close, confirm, retry, settings.searchLanguages, settings.noLanguagesFound, upsell.contextual80, upsell.tryFree) to all 34 locale files. The language picker search field, modal buttons, and contextual upsell were displaying raw i18n keys instead of translated text
- Fix
SmartQueue: Queue button now stays visible (and re-appears at page load) whenever items remain in the queue, even after the rate-limit reset — previously the button was stripped on reset and orphan messages had no UI
- Fix
SmartQueue: rate-limit reset now drains the entire queue back-to-back with a 4s delay between sends — previously only the first queued message was auto-sent, the rest stayed orphaned in storage
- Fix
SmartQueue conversation isolation: each queued message now records the conversation it was queued from (convId + url). Drain only fires items belonging to the current chat, so opening another conversation no longer dumps your queued prompts into the wrong place. The panel shows a "↗ {short id}" link on items from other conversations to navigate back to the right tab, the queue button count is scoped to the active chat, and the SPA URL watcher refreshes everything when you switch chats
- Fix
Auto-Reply Pro detection: content scripts now also read the email/password auth store (usagemeter_auth) — users signed in via the popup were stuck on the Free 2-prompt limit because only the legacy license-key store was being checked
- Fix
Conversation Export Pro detection: same root cause as Auto-Reply — the export modal now reads both the legacy license and the new auth store, so JSON/HTML formats, code extraction and message selection unlock for popup-authenticated Pro users
- Fix
Pro plan check now accepts pro / team / enterprise (and the entreprise spelling) — was previously a strict "pro" comparison that excluded Team and Enterprise plans
- Fix
Mobile (Firefox Android) fallback: when the MV3 background worker can't run, content scripts now talk to claude.ai directly — getCookie reads document.cookie, getUserInfoFromCookies probes /api/account, and usage data is fetched from /api/organizations/{orgId}/usage with credentials:include so the active account still shows usage and works without background
- Fix
Usage tooltip now stays in sync when percentage updates (was showing stale data)
- Fix
Usage indicator now appears on Code draft/new session pages
- Fix
MutationObserver re-injects usage display on Code main form after DOM changes
- Neu
- v1.2.169. April 2026
- Neu
UsageMeter Desktop v1.0 — standalone Windows app to run UsageMeter outside the browser
- Neu
Desktop auto-update check at startup with version API
- Neu
Desktop DevTools toggle (Ctrl+Shift+I) + right-click Inspect Element
- Neu
Desktop MS Store support — patches Claude from Microsoft Store in-place
- Neu
1KCONNECTED celebration promo — modal with confetti animation, localized in 34 languages
- Neu
Toast notification component for in-app feedback
- Verbessert
Complete popup UI overhaul — redesigned tab bar, glass cards, new animations
- Verbessert
Animated usage cards — count-up percentages, progress bar fill animation, high-usage shimmer
- Verbessert
Tab bar: active tab shows label + icon, inactive tabs show icon only to save space
- Verbessert
Header now displays account count and limit
- Verbessert
License panel simplified and modernized
- Verbessert
Smart Insights and This Week panels now expanded by default
- Verbessert
XP bar animations and badge grid visual polish
- Verbessert
Respects prefers-reduced-motion for all popup animations
- Fix
Live theme/customization changes from popup now apply instantly on Claude.ai (Desktop)
- Fix
CSS link interception + usage % calculation in Desktop mode
- Fix
killClaude only targets Desktop processes, never Claude Code CLI
- Neu
- v1.2.157. April 2026
- Neu
Badge tier system — 30 badges across 10 groups with bronze/silver/gold/legendary progression
- Neu
Click any badge to see all tiers, XP rewards, and lock/unlock status
- Neu
Tier colors — bronze, silver, gold, and legendary purple with glow effects
- Neu
Gamification fully integrated — Ranks tab with XP, badges, leaderboards, challenges
- Neu
User-based identity — gamification tied to your account instead of device ID
- Neu
Random pseudonyms for anonymous players (e.g. SwiftFox42) — IPs never exposed
- Neu
Hide username toggle — switch between real name and pseudonym in leaderboards
- Neu
PRO, Admin & Super Admin badges displayed next to player names in leaderboard
- Neu
Gamification mini-widget on Usage tab — level ring, XP bar, streak, badges count
- Neu
Player profile card with rank and percentile on Ranks tab
- Verbessert
Admin dashboard — dynamic chart ranges (Auj/7J/30J/90J), fixed MRR calculation
- Verbessert
Admin users — plan filter now server-side with proper pagination
- Verbessert
Charts adapt to selected range — hourly for short periods, daily for 30/90 days
- Verbessert
Leaderboard data refreshes on every Ranks tab visit
- Verbessert
Duplicate device/user records auto-merged on first visit
- Verbessert
Admin panel redesigned — player names, hide inactive toggle, search by name
- Fix
Recharts chart crash (width -1) fixed with initialDimension + debounce
- Fix
Timezone offset causing first data points to show 0 on charts
- Fix
Missing translations for setup page across all 34 languages
- Neu
- v1.2.141. April 2026
- Fix
Usage tracker no longer duplicated 2-3x on Claude Code session pages
- Fix
Code page detection updated for new Claude Code UI (section#turn-form replaces #turn-textarea)
- Fix
Main form usage display skipped when already handled by turn-form injection
- Fix
MutationObserver re-injection uses correct selector for Code chat detection
- Fix
parentContainer scoping bug fixed in Code chat button modifier
- Fix
Past-due subscriptions now cancelled automatically + past-due email sent on payment failure
- Fix
Stripe sync matches active subscriptions by customer email, not just sub ID
- Fix
Users with another active subscription are no longer downgraded on cancel
- Fix
- v1.2.1328. März 2026
- Neu
Sign in directly from the extension — email/password or Google/GitHub OAuth
- Neu
Gravatar profile picture in the extension header when signed in
- Neu
Account-based plan system — no more license keys, plan tied to your account
- Neu
Maintenance mode toggle for admins in the dashboard
- Neu
Usage Speed and Copy Button feature toggles in settings
- Neu
User reviews section on landing + pricing pages (5-star Chrome & Firefox)
- Neu
Stateless auth tokens — survives server restarts, no more 401 errors
- Verbessert
Admin dashboard reworked — Plans management, Stripe IDs editable per user
- Verbessert
Account page simplified — plan status, billing, referrals only
- Verbessert
Stripe webhooks write directly to user account
- Verbessert
Plan changes detected instantly when opening the extension
- Verbessert
Manually granted Pro plans are permanent (Stripe sync can't overwrite)
- Verbessert
All 34 languages fully translated for auth and upgrade screens
- Fix
Mobile animation flickering on Safari (GPU compositing hints)
- Fix
Invalid token never force-logs you out — shows re-login prompt instead
- Fix
Success page no longer mentions license keys
- Neu
- v1.2.1226. März 2026
- Neu
Dedicated Privacy Policy page bundled in the extension (privacy.html)
- Neu
Privacy Policy link in Settings > About section
- Fix
Chrome Web Store compliance — privacy policy now accessible directly within the extension
- Neu
- v1.2.1124. März 2026
- Neu
Auto-expand Thinking: toggle to auto-open thinking blocks on Claude responses
- Neu
Weekly Stats card: cumulative usage %, reset count, avg peak with mini chart
- Neu
Team Dashboard: manage seats, devices & activity at /account/team
- Neu
Subscription tier selector per account (Free/Pro/Max x5/Max x20)
- Neu
Pro notifications: x2 Usage Starting/Ending, Streak Milestones, Weekly Recap
- Neu
Heartbeat reports extension version — admin shows version breakdown
- Neu
Predictions for all categories (Sonnet 7j, 7j, Opus) with days format
- Neu
7-day predictions locked behind Pro — 5-hour predictions remain free
- Verbessert
Cache timer tooltip now localized (was hardcoded French)
- Verbessert
Usage velocity trend arrows on popup cards (↑↑ ↑ = ↓)
- Verbessert
Data freshness indicator on usage cards
- Fix
Export: Pro license detection fallback via background message
- Fix
Subscription tier no longer resets on account refresh
- Fix
Stripe checkout creates correct plan (team/enterprise) with seat quantity
- Entfernt
Token Counter & Context Bar — inaccurate estimation was misleading
- Neu
- v1.2.1024. März 2026
- Neu
Team plan (6.99€/seat): 25 accounts, centralized management, single billing
- Neu
Enterprise plan (10.99€/seat): unlimited accounts, SSO, audit logs, dedicated support
- Neu
Color Editor: full color customization for Claude.ai — edit every color variable in real-time
- Neu
Custom Themes: save, name, import/export your own color themes (.usagemeter-theme.json)
- Neu
Live Preview: color changes apply instantly on Claude.ai with Cancel/Keep controls
- Neu
HSV color picker with hue bar and hex input for precise color selection
- Neu
Brand Colors (accent) editable for free — full palette requires Pro
- Verbessert
Theme selector now shows saved custom themes alongside built-in themes
- Fix
Standardized enterprise plan naming across extension and backend
- Neu
- v1.2.923. März 2026
- Neu
Cache Timer: live countdown showing conversation cache status with explainer tooltip
- Neu
Usage Velocity Trend: colored arrows (↑↑ ↑ = ↓) showing consumption speed on popup cards
- Neu
Data Freshness Indicator: shows when usage data was last updated on popup cards
- Neu
Predictions for all categories: Sonnet 7-day, 7-day, and Opus now show time-to-100%
- Neu
Heartbeat now reports extension version — admin dashboard shows version breakdown
- Neu
Pro notifications: x2 Usage Starting/Ending, Streak Milestones (7/14/30/60/100d), Weekly Recap
- Fix
Export: Pro license detection was failing silently — added fallback verification
- Neu
7-day predictions locked behind Pro — 5-hour predictions remain free
- Neu
Subscription tier per account (Free/Pro/Max x5/Max x20) — shows equivalent Free usage on cards
- Entfernt
Token Counter & Context Bar: removed — inaccurate estimation was misleading
- Entfernt
Conversation Search: removed from this release
- Verbessert
Blog tag filter now hides tags with fewer than 3 articles
- Neu
- v1.2.821. März 2026
- Neu
SmartQueue: queue messages when limit reached, auto-send on reset
- Neu
Streak counter with fire badge and detailed panel
- Neu
Weekly usage recap notifications every Monday
- Neu
Focus Mode: hide sidebar and distractions
- Neu
Background Blur: frosted glass on Claude responses for readability
- Neu
Parallax Scroll: background moves with conversation scroll
- Neu
Referral program: invite friends, earn free months
- Neu
Changelog, Status page, Feature comparison table on website
- Neu
Dynamic OG share cards for social media
- Neu
34 languages with real native translations and searchable selector
- Neu
Auto-detect browser language on first setup
- Verbessert
"Powered by UsageMeter" branding in all export formats
- Verbessert
Streak panel with 7-day activity grid and records
- Verbessert
Circular reveal animation when changing themes
- Verbessert
Better descriptions for all settings and toggles
- Verbessert
Settings apply instantly without page reload
- Verbessert
Language selector with search and flags
- Fix
Light mode: themes, gradients, nav buttons adapt automatically
- Fix
SmartQueue uses API 429 detection (language-agnostic)
- Fix
Parallax uses real scroll container (JS-driven)
- Fix
Blur only targets Claude responses, not entire conversation
- Neu
- v1.2.719. März 2026
New: Usage Dashboard on usagemeter.app — 2x2 chart grid, 30/90-day usage, data freshness indicators, quick actions
New: Blog system with full SEO (sitemap, JSON-LD, hreflang, BreadcrumbList) — 17 changelog articles
New: Admin blog editor — create, edit, publish articles from the admin panel
New: "Latest Updates" section on usagemeter.app homepage with recent blog posts
New: "Sync to Dashboard" toggle in Settings + "Sync now" button
New: Reset completed notification — get notified when your 5h usage resets
New: "Dashboard Ready" email sent on first usage sync
New: Account page redesigned — hero stats, usage progress bar, dashboard CTA, collapsible sections
New: Dashboard + Blog links in navigation (desktop + mobile)
New: robots.txt + dynamic sitemap.xml with hreflang alternates
Fix: 5-hour chart now records data in the background — no more gaps when popup is closed
Fix: Prevent multiple active subscriptions per user (blocks duplicate checkout)
Fix: Old licenses automatically revoked when creating a new subscription
Fix: Trial (7 days free) only available for genuinely new users — no more trial abuse
Fix: Pricing page shows real price (not trial) for returning users
Fix: No more page reload when license is re-confirmed with same plan
Fix: Account page no longer auto-activates license on every visit
Fix: Dashboard "current usage" now shows latest data, not stale values
Fix: Announcement views reset when message content changes
- v1.2.617. März 2026
New: 7-day free Pro trial — try all Pro features, auto-bills after 7 days via Stripe
New: Smart Insights — dynamic recommendations based on actual usage patterns (replaces old static tips)
New: Usage prediction — "~2h to 100%" shown on the 5-hour card based on your usage rate
New: Usage nudge — reminder after 7 days of free usage to try Pro
New: Multi-account comparison chart — bar chart comparing usage across all your accounts
New: Discord webhook notifications — purchase, activation, payment failure, cancellation
New: Email drip sequence — Day 1 welcome, Day 3 charts teaser, Day 7 first week recap
New: Trial emails — trial started + trial ending in 2 days reminders
New: 5-hour chart — high-res view of the current usage window with prediction curve
New: 6 data points per hour on 24h chart (every 10 min) for smoother curves
Fix: Chart time labels snapped to full hours (13:00 not 13:08)
Fix: No more fake 0% points — only real data shown
Fix: Chart dots are now white with colored border
Fix: Tooltip shows time on hover (not date) for 5h/24h charts
Fix: Firefox background script compatibility (event page + setTimeout fetch)
Fix: Chart prediction curve now uses stable method (matches card prediction)
New: Smart Insights replaces static tips — dynamic recommendations based on your usage
- v1.2.517. März 2026
New: Claude x2 Usage Promotion card — shows active/peak status, countdown, schedule info
New: Go Pro button + promo banner on main popup page for free users
New: Account system — sign in with Google, GitHub or email on usagemeter.app
New: Auto-activation — extension activates automatically after login or purchase
New: Customer portal — manage licenses, view devices, revoke from usagemeter.app/account
New: Multi-license support — account page shows all your licenses with details
New: Manage Subscription — direct link to Stripe billing portal per license
New: Confetti celebration on successful payment
New: Modern payment flow — login required, clean Stripe checkout
New: Email notifications — license key, welcome, payment failure, device changes
New: Admin panel — users, subscriptions, revenue, activity logs, announcements
New: Token counter — estimated token count under each message
New: Real-time token counting during Claude response streaming
New: Chart reset markers — dashed lines show when usage limits reset
New: Server info banner in popup for admin announcements
New: Firefox Add-ons support
Fix: Login required before payment — license always linked to your account
Fix: Pro license key no longer randomly resets
Fix: Chart shows peak usage per hour and fills gaps with 0%
Fix: Live countdown timer for reset (ticks every 30s)
Tech: Prisma ORM replaces raw SQL
Tech: Better Auth — Google, GitHub OAuth + email/password
Tech: Resend for transactional emails
Perf: Centralized usage fetching — single background fetch replaces 7 API calls
Perf: Removed all backdrop-blur effects for smoother performance
- v1.2.414. März 2026
New: Conversation export — Markdown, JSON, TXT, HTML with thinking blocks, code extraction (ZIP), and message selection
New: Account import/export with shareable keys (usagemeter-xxx)
New: Setup wizard fully translated in 13 languages with Pro promotion
New: Setup wizard step 3 now includes feature toggles (usage, auto-reply, export)
Fix: Pro license key no longer randomly resets (improved grace period and failure tolerance)
Fix: Feature toggles (usage indicator, auto-reply, export) now properly hide/show
Fix: Setup wizard now opens correctly on first install
Fix: Setup wizard CSS restored (Tailwind integration)
Fix: Stripe purchase links now redirect correctly
New: 8 Pride flag themes with gradient backgrounds (Rainbow, Trans, Bi, Lesbian, Non-Binary, Pan, Ace, Genderfluid)
New: 10 gradient themes (Fire, Ocean, Aurora, Candy, Toxic, Blood, Galaxy, Earth, Ice, Royal)
New: Custom gradient input — create your own background gradient (Pro)
i18n: Export modal fully translated in all 13 languages
- v1.2.313. März 2026
New: 37 theme colors organized by category (Neutrals, Warm, Cool, Vivid)
New: OLED dark theme with pure black backgrounds
New: 16 premium Pro-only exclusive theme colors
New: "Ask Claude" button on Google search pages
New: Customize tab - chat width, fonts, background, themes
New: Background image with drag & drop and opacity control
New: Chat navigation buttons and keyboard shortcuts on Claude.ai
New: "Ask Claude" right-click context menu on selected text
Fix: Background image now applies correctly on Claude.ai
Fix: Toggle switches, tab bar overflow, nav buttons default off
- v1.2.213. März 2026
New: Account management tab with detailed per-account statistics
Security: Tampering and violation reporting to server
Refactor: Complete Vue.js 3 rebuild of popup and setup pages
Tech: Vite build system with Tailwind CSS via PostCSS
Tech: Pinia state management for usage, accounts, settings, license
UI: Modern shadcn-inspired design with glassmorphism and animations
- v1.2.13. März 2026
New: Theoretical usage % comparison (grey bar showing expected usage at current time)
UI: Full popup redesign: deeper dark theme, glassmorphism borders, segmented tab bar
Fix: Removed console spam (account limit warnings, JSON parse errors, SSE AbortError)
Fix: Usage popover no longer randomly stops responding to hover/click
Fix: Account management button restored in new Claude sidebar UI
- v1.2.012. Februar 2026
Fix: Auto-reply button no longer overlaps with audio button
Fix: Usage indicator now works with new Claude Code UI
- v1.1.94. Februar 2026
New: Dynamic badge on extension icon showing current usage percentage
New: Color-coded badge (green <50%, orange 50-74%, red ≥75%)
- v1.1.83. Februar 2026
Fix: Prevent duplicate usage indicators on Code pages
Fix: Usage indicator now correctly positioned with new Claude Code UI
- v1.1.728. Januar 2026
Removed: Christmas promo banner and snowfall animation
Improved: Faster popup and content script loading
New: Pro features redirect to pricing page when limit reached
Fix: Auto-reply settings now transfer from new chat to created conversation
Updated: Bug report link now points to dedicated issues repository
Fix: Usage indicator now correctly positioned with new Claude UI model selector
- v1.1.622. Dezember 2025
New: Multi-prompt auto-reply - chain multiple custom prompts in sequence
New: Free users: 2 prompts max, Pro users: unlimited prompts
New: Loop option - cycle through prompts continuously
New: Green styling for auto-reply messages with badge indicator
Fix: Prevent double-trigger of auto-reply on duplicate message_stop events
New: Delete-after-send option - remove prompts once sent
New: Import text button - add current editor text as a prompt
- v1.1.522. Dezember 2025
New: Auto-reply feature - automatically send follow-up prompts after Claude responds
New: Warning modal on first use with risk acknowledgment
New: "Respond once then disable" option for auto-reply
Fix: Usage % indicator detection updated for new Claude Code UI structure
Removed: Templates feature completely removed
New: Feature visibility settings - show/hide usage indicator and auto-reply from popup
- v1.1.411. Dezember 2025
i18n: Added 5 new languages (JA, ZH, RU, NL, PL) - now 13 total
UX: Accounts tab removed, moved to Settings with link to claude.ai
Fix: Display mode selection now persists correctly when switching tabs
Fix: Usage indicator now displays correctly on Claude Code pages
Fix: Accounts button in Code footer now works with new UI structure
UI: Enlarged usage details tooltip width
Fix: Duplicate variable declaration causing extension to not load
Charts: Improved with hover tooltips, fixed 24h timeline, and gap handling
Pro: Revamped subscription screen with Stripe billing link and license revoke
UI: Styled modal popups replace native browser dialogs
- v1.1.32. Dezember 2025
New: System notifications (Windows/Mac/Linux) for usage alerts
New: Weekly limit alerts (seven_day + seven_day_sonnet)
New: High usage rate detection (+10%/5min alert)
UX: Tooltip hover delay - smoothly move mouse to popup without closing
i18n: Simplified "Overuse" label in all 8 languages
New: Firefox compatibility - now works on Chrome & Firefox!
- v1.1.227. November 2025
UI: Setup page redesigned with Academic Minimalist style
New: Detailed usage analysis with recommendations and upgrade tips
New: Trend arrows (↑↓=) for all usage limits in tooltip
New: Animated percentage changes (digital clock style)
Fix: Usage color now updates instantly when percentage changes
i18n: Loading text now properly translated
- v1.1.125. November 2025
Security: Multi-account storage with secure session management
UI: Popup responsiveness improvement
Fix: Compatibility with new Anthropic API policy
New: Display mode setting (Minimal/Default)
New: Usage trend indicator (↑↓ arrows based on rate)
- v1.0.115. November 2025
Fix: Logo format and display
New: "Login with UsageMeter" button on login page
- v1.0.010. November 2025
Launch: Initial release of UsageMeter
Multi-account management (up to 10 with Pro)
Real-time usage tracking
Smart notifications
Auto dark/light theme
Premium license system