mrkeyoor.com_
Thu 13 Aug 15:41 UTC
Dataevaluationupdated 13 Aug 2026

cpa-usage-keeper

CPA Usage Keeper is a self-hosted usage database and dashboard made specifically for CLIProxyAPI. It preserves request statistics that would otherwise be transient, then turns them into views of tokens, estimated cost, cache use, latency, errors, quotas, models, providers, and API keys.

Verdict

CPA Usage Keeper is the most natural first dashboard to try if CLIProxyAPI is already the center of your model traffic. It is focused, easy to deploy, actively improving, and much more useful than reading raw counters, but it is too young and too dependent on estimated pricing for formal chargeback. Use it as an operational lens, secure the SQLite volume like a secret store, and keep billing reconciliation elsewhere.

Setup4/5Simple Compose stack once CPA endpoints and keys are correct
Docs5/5Detailed bilingual setup, security, retention, and config guidance
Community4/5Fast releases and responsive discussion for a young project
Maturity3/5Useful core, but young with migration and accounting gaps

Who it’s for

CLIProxyAPI operators who need usage history beyond the proxy's built-in live view.
Individuals or small teams comparing model, provider, and API-key traffic in one dashboard.
Cost-conscious operators who are willing to maintain pricing rules and treat totals as estimates.
Self-hosters who want a compact SQLite service with Docker, Homebrew, Linux, macOS, and Windows options.

Who it’s NOT for

Anyone not running CLIProxyAPI: Keeper depends on CPA's management API, usage statistics, metadata, and subscription feed rather than accepting generic LLM traces.
Organizations that require encrypted data at rest: the README says the SQLite database and its backups contain original data even though browser responses redact key-like fields.
Teams migrating years of history from another CPA dashboard: an open request confirms Keeper currently starts collecting from deployment and lacks a bulk historical import path.
Finance teams needing invoice-grade cost accounting: costs are estimates based on maintained prices, and an open issue shows service-tier matching can overstate a request when the upstream response uses a cheaper tier.
Operators needing more than 90 days of normal request-level queries: older raw events move to a cold archive that dashboard APIs do not query.

Setup reality

Keeper itself is small, but it is not standalone in the everyday sense: a reachable CLIProxyAPI instance must already expose usage statistics, management APIs, and the usage queue. The recommended Compose stack is straightforward once you supply the CPA management key and a separate Keeper login password. A public deployment still needs HTTPS, persistent storage, protected and externally copied backups, strict handling of the unencrypted SQLite data, correct proxy trust settings, and verification that collection is in subscription mode. Running another collector against the same CPA can make data incomplete unless every collector uses subscription mode.

A dashboard built for one proxy

CPA Usage Keeper solves a narrow problem well. CLIProxyAPI can route model requests and expose usage information, but operators still need durable history and a way to understand which model, provider, credential, or API key is consuming resources. Keeper subscribes to CPA usage, stores it in SQLite, synchronizes CPA metadata, and serves a dedicated dashboard. The proxy is the collection point.

The resulting views are practical. Overview and analysis pages cover requests, tokens, estimated cost, cache activity, success rate, RPM, TPM, latency, models, API keys, and AI providers. Request events can be filtered and exported. Auth-file and provider screens combine usage with health and quota refresh. An API-key-scoped read-only view lets a consumer see its own usage without opening the whole administrative dashboard.

This focus is Keeper's biggest strength and hardest boundary. If all traffic already passes through CPA, installation avoids application instrumentation. If it does not, Keeper has no generic trace ingestion story. Langfuse or another application observability system fits that job better.

Setup is short, dependencies are not

The recommended path is Docker Compose. The README supplies both a CPA-plus-Keeper stack and a Keeper-only template for an existing proxy. Binaries cover Linux, macOS, and Windows, while Homebrew and systemd instructions reduce service setup. Data lives under one mounted work directory, and scheduled SQLite backups are enabled by default.

Before starting, CPA must have usage statistics enabled. Keeper needs the CPA base URL and management key, plus access to the Redis-compatible usage queue. Authentication is enabled by default and requires a login password. This is better than an open dashboard, but it remains a simple access model. The documented administrative login is one shared password, alongside scoped read-only access through CPA API keys, not an enterprise identity and role system.

Network configuration requires care. A native process listens on all interfaces unless bound to localhost. Docker users can publish port 8080 only on 127.0.0.1, or put a trusted reverse proxy in front. Keeper can serve TLS itself, though the README recommends terminating public HTTPS at nginx, Caddy, or another proxy. Forwarded client addresses are accepted only from loopback and explicitly configured proxy networks, which helps preserve login rate limiting.

Collection behavior can surprise you

Keeper is only useful when its event stream is complete. The README warns that when several usage collectors share one CPA instance, all must use subscription mode. Otherwise collection can stop or become incomplete. An open question illustrates the debugging difficulty: provider and key metadata appeared while every usage page stayed empty, even though Keeper reported a successful subscription. Metadata connectivity therefore does not prove event ingestion. Operators should generate a known test request, confirm it appears, and alert on a quiet collector rather than trusting a healthy container alone.

Historical migration is the other major gap. An open request from a CPA Manager Plus user says Keeper can start collecting new events but cannot import existing SQLite history or a CSV or JSON export. The maintainer replied that a general reconstruction and migration interface may come later but has low priority. That is an aspiration, not a scheduled feature. Switching dashboards currently means running Keeper from zero if old data cannot be retained in the prior tool.

Useful estimates, not a billing ledger

Cost analysis depends on model pricing maintained inside Keeper. The project can synchronize pricing and preserve manual overrides, but the README correctly describes the output as estimates. An open issue identifies a sharper limitation: a pricing rule can match the service tier requested by the client even when the upstream response used another tier, potentially applying the wrong multiplier. The maintainer notes that users can write rules against the response tier, which puts correctness partly on local configuration.

Token presentation has a related interpretation problem. Keeper normalizes provider-specific cache semantics into a canonical input-token value. An open request says some UI areas show that total beside cache-read and cache-write values in a way that can look duplicated, while one chart segment and its tooltip use different interpretations. Chargeback owners need documented definitions, test requests, and comparison against provider invoices before trusting a total.

Retention also shapes what the dashboard can answer. Raw request events older than 90 local calendar days move to a permanently retained cold table, but normal dashboard APIs do not query that archive. Version 1.14.4 aligned custom request-event queries and exports with this window, while higher-level usage pages retain a longer custom range. This is a reasonable SQLite tradeoff, not unlimited interactive history.

Security and project health

The most important security sentence is easy to miss: browser APIs redact key-like fields, but SQLite and its unencrypted backups contain original data. Anyone who can copy the volume may obtain more than the UI reveals. File permissions, encrypted disks, protected backup destinations, and limited host access are essential. Opting into community rankings also deserves a separate privacy decision.

The project was created on April 17, 2026, so maturity should not be inferred from its fast version number. By August 13 it had more than 1,100 stars, a same-day push, eight open issues, and seven open pull requests. Release v1.14.4 arrived on August 10, four days after v1.14.3, following frequent July releases. That pace and maintainer responses show energy, but rapid releases also argue for pinning versions and testing upgrades against a copied database.

CPA Usage Keeper is easy to recommend inside its exact niche. It gives CPA operators a detailed view with minimal integration work and clear deployment documentation. Treat it as monitoring and analysis, not financial truth. If the 90-day event window, shared-password administration, fresh-history start, and unencrypted local store fit your environment, it is a very useful companion to CLIProxyAPI.

Alternatives

ProjectWhat it isPick it when
CPA Manager PlusAnother management and usage interface built around CLIProxyAPI.pick this instead when compatibility with its existing history and management workflow matters more than Keeper's current dashboard design.
LangfuseA broader open-source observability platform for language-model traces, prompts, evaluations, and costs.pick this instead when you need application-level traces and evaluations across SDKs rather than a CPA-specific operations panel.
LiteLLMA multi-provider model gateway with spend tracking, budgets, keys, and an administration interface.pick this instead when you are willing to change the proxy layer and want routing, budgets, and usage control in the same system.

What people are saying

  1. [github-trending] Willxup/cpa-usage-keeper

Sources

  1. CPA Usage Keeper repository and README
  2. CPA Usage Keeper v1.14.4 release
  3. Historical usage import request
  4. Service-tier pricing issue
  5. Input-token display semantics request
  6. Empty usage dashboard troubleshooting thread