← All releases
v0.3· Release

v0.3 — Usage analytics dashboard

Per-model, per-key, per-team spend charts on a single page. Filter by date range, export CSV, drill into outliers. Numbers render in Geist Mono — easy on the eyes during the monthly close.

nRouter Team2 min read
analyticsusagereporting

Knowing what you spent matters as much as making the call. v0.3 ships the usage analytics page — one screen, three dimensions, all the way down to the individual request.

Three slices, one page

At /{org}/usage you get:

  • Per-model — total spend, request count, average latency, p95 latency. Sorted by spend descending so the budget drivers surface first.
  • Per-virtual-key — same metrics by key. The most-used key gets a hit-rate badge; the most expensive key gets a cost-share percentage. Pair with budgets at /{org}/budgets for hard caps.
  • Per-team — for orgs with multiple teams (Rule #26), spend rolls up by team. Useful for chargeback or budget reviews.

Time filters + export

Default range is the trailing 7 days, with quick toggles for 24h / 7d / 30d / 90d / billing-cycle. Custom ranges via the date picker. Every view exports to CSV with a single click — no JSON munging, no awk one-liners.

Where the numbers come from

The provider owns cost. Every assistant response carries a provider-reported cost header which we record into the spend log and roll into the usage charts. We never compute cost ourselves — if the provider returns $0, we record $0. The dashboard reflects exactly what was billed against your credit balance, no rounding, no extrapolation.

Numbers render in Geist Mono so columns line up cleanly. Charts are Recharts wrapped in <nRouterChart>. All amounts are pre-platform-fee — the platform fee was already added at credit purchase, never deducted from your balance per-request.

Platform release verification & compatibility standards

All nRouter release notes reflect changes deployed across our global edge routing infrastructure. Below is our baseline deployment architecture and verification criteria.

Zero-Downtime Rolling Delivery

Releases deploy via immutable container digests with automated health verification. Existing streaming responses complete uninterrupted while new requests seamlessly route to updated instances.

Drop-In API Backward Compatibility

Our interface remains strictly compatible with standard OpenAI client SDKs and wire formats. Enhancements degrade gracefully or fail open with explicit error reporting to protect calling workloads.

How can engineering teams verify capabilities in this release?

Teams can inspect currently supported capabilities and active model deployments programmatically via the authenticated /capabilities endpoint, or review live latency profiles at /models.

Where can edge cases or regressions be reported?

If your team experiences unexpected response behavior, report the issue with the relevant x-nr-request-id header to support@nrouter.ai or via the community Slack at /community.