Skip to Content
IntegrationsGrafana & OpenTelemetry

Grafana & OpenTelemetry

Navigator’s efficiency story is backed by real session telemetry, not estimates. Claude Code can export metrics over OpenTelemetry, and Navigator reads them to report what actually happened in your session.

The principle: measure your own sessions, don’t trust the headline numbers. Any figures below are example output.

Enabling telemetry

Claude Code exports metrics when OpenTelemetry is turned on:

export CLAUDE_CODE_ENABLE_TELEMETRY=1

With telemetry enabled, Claude Code emits session metrics that Navigator can read back through nav-stats and surface at session start.

What’s available

Navigator’s stats pipeline (scripts/session-stats.sh) draws on both .agent/ doc sizing and OpenTelemetry data:

  • Token usage — documentation loaded vs. the baseline of loading everything
  • Cache hit rate — prompt cache efficiency, read from OpenTelemetry
  • Cost — session spend, when exported by Claude Code
  • Active time — time saved estimates derived from token deltas
  • Context availability — how much of the context window remains for work

Surfacing the metrics

Run the efficiency report on demand:

"Show my stats" → nav-stats

Example output (your numbers will differ):

💾 CACHE PERFORMANCE Cache efficiency: 100.0% (perfect) 📈 SESSION METRICS Context usage: 35% (excellent) Efficiency score: 94/100 (excellent)

nav-stats reads cache efficiency from OpenTelemetry, computes token savings from your actual doc footprint, and turns them into a score with actionable recommendations. nav-start can also surface a quick read at session start.

Visualizing in Grafana (optional)

Because the data is standard OpenTelemetry, you can point Claude Code’s exporter at any OTLP-compatible backend — Grafana, Prometheus, or your own collector — and build dashboards over cache hit rate, token usage, and cost across sessions. Navigator does not require this; it reads the same metrics locally through nav-stats.