Analytics

The analytics dashboard tracks your usage patterns over time — prompts sent, tokens consumed, costs incurred, AI response speed, and more. All data is displayed in interactive charts that you can filter by date range and granularity level.

Analytics page showing usage charts and metrics

What Does Analytics Track?

Analytics automatically collects data from your chat sessions. You don’t need to enable or configure anything — it starts tracking from your first message. The dashboard covers:

  • Prompts — Number of user prompts sent
  • Messages — Total messages (both user and assistant) exchanged
  • Token usage — Tokens consumed, broken down into input, output, cache write, and cache read tokens
  • Costs — Estimated spending based on your AI provider’s pricing
  • Response speed — AI response speed measured in tokens per second
  • Commit activity — Git commits made through the interface
  • Environment data — Cost, token usage, and speed broken down by AI model/environment

Opening Analytics

Navigate to Analytics from the main menu. The analytics dashboard opens with a date range selector at the top, summary metric cards below it, and detailed charts organized into collapsible sections.

Analytics menu item in the main app menu

Dashboard Overview

The top of the dashboard shows summary metric cards — key numbers at a glance for the selected time period:

Analytics dashboard summary metric cards
  • Prompts — Total user prompts sent
  • Total Tokens — Combined input, output, and cache tokens consumed
  • Total Cost — Estimated spending across all chats
  • Tokens/s — Average AI response speed in tokens per second
  • Messages — Total messages exchanged
  • Commits — Git commits made

These cards update based on the date range you select, so you can quickly compare metrics across different periods.


Chart Sections

Below the summary cards, the dashboard contains multiple chart sections. Each section is collapsible — click its header to expand or collapse it. The section state is persisted in localStorage so it remembers your preference between visits.

Usage

The largest section, containing time-series charts for cost, prompts, and commits:

Analytics usage section showing cost, prompts, and commits charts
  • Cost — Total cost over time, broken down by input, output, cache write, and cache read costs
  • Environment Cost — Cost split by AI model/environment
  • Prompts — Prompt count over time, including message and chat counts per period
  • Commits — Git commit activity over time

Tokens

A collapsible subsection within Usage, showing token consumption and speed charts:

Analytics tokens section showing total tokens and tokens per second charts
  • Total Tokens — Token consumption over time, stacked by input, output, and cache tokens
  • Tokens/s — AI response speed (tokens per second) over time
  • Environment Tokens — Token usage split by AI model/environment
  • Environment Speed — Response speed comparison across environments

Messages

A collapsible subsection within Usage, showing message count and throughput charts:

Analytics messages section showing total messages and messages per second charts
  • Total Messages — Message count over time
  • Messages/s — Message throughput over time

Hour of Day

Charts aggregated by hour of the day (0–23), displayed in your local timezone. Helps identify peak usage hours:

Analytics hour of day section showing usage patterns by hour
  • Total Tokens by Hour of Day — Cumulative token volume per hour
  • Messages by Hour of Day — Cumulative message volume per hour
  • Tokens/s by Hour of Day — Average response speed per hour
  • Messages/s by Hour of Day — Average message throughput per hour

Day of Week

Charts aggregated by day of the week, showing which days are most active:

Analytics day of week section showing usage patterns by day
  • Total Tokens by Day of Week — Cumulative token volume per day
  • Messages by Day of Week — Cumulative message volume per day
  • Tokens/s by Day of Week — Average response speed per day
  • Messages/s by Day of Week — Average message throughput per day

Distributions

Per-chat distribution charts showing how metrics vary across individual sessions:

Analytics distributions section showing cost, duration, and speed distribution charts
  • Cost Distribution — How cost is distributed across chats
  • Duration Distribution — How long chats last (processing time)
  • Tokens/s Distribution — Response speed distribution across chats
  • Messages/s Distribution — Message throughput distribution across chats

Charts are interactive — hover over data points to see detailed values. The charts update in real-time when you change the date range or granularity.


Date Range Selection

Use the date range selector at the top of the dashboard to filter all data by time period:

Analytics date range selector
  • Presets — Quick-select common ranges: today, last 7 days, last 14 days, last 30 days, last 90 days, etc.
  • Custom range — Pick specific start and end dates for a custom time window
  • All Time — Selects from your very first chat to today

All summary cards and charts update to reflect the selected date range. This makes it easy to compare your usage across weeks, months, or specific time periods.


Usage Granularity

Toggle between different levels of detail to view data at the scale that makes sense for your date range:

  • Hourly — One data point per hour. Automatically falls back to daily for ranges over 30 days
  • Daily — One data point per day. The default for most views and ideal for week-to-month ranges
  • Weekly — Aggregated weekly totals. Best for month-to-quarter ranges
  • Monthly — Aggregated monthly totals. Best for long-term trend analysis

Your granularity preference is saved in localStorage and persists between visits.


Chat Table

Below the charts, a table shows per-chat statistics. Click any row to open that chat. Hold Ctrl+Click to open in a new tab.

Analytics chat list table

The table has eight sortable columns:

  • Chat Title — Name of the chat session
  • Date — Last updated time (relative format)
  • Environment — AI model/environment used
  • Duration — Total processing time
  • Cost — Total cost for that chat
  • Tokens/s — Average response speed
  • Messages — Message count
  • Commits — Git commits made during the chat

Click any column header to sort by that metric. Click again to reverse the sort order. The table is paginated at 10 chats per page.


Subagent Chats

A separate table shows subagent chats — child conversations spawned by the AI (e.g. Claude Code agents). These are separated from the main chat table so you can distinguish between your direct conversations and agent-initiated ones. The subagent table has the same columns, sorting, and pagination as the main chat table.

Analytics subagent chats table showing agent-initiated conversations

Advanced Operations

The analytics dashboard includes a few advanced options at the bottom of the page:

Advanced operations buttons in Analytics page
  • Recalculate Stats — Recalculates tokens and costs from raw chat data, fixes orphaned output messages, extracts tokens from raw JSON, and deduplicates messages. Use this if displayed metrics seem outdated or incorrect. Runs in the background and shows the number of chats fixed and duplicate tokens removed when complete
  • Reimport Subagent Chats — Deletes all existing subagent chat data and reimports from Claude Code chat files on the local disk. Shows a confirmation dialog before proceeding. This is a destructive operation — only use it if the full history of chat files is still available locally
  • Push to ClickHouseIf ClickHouse is configured, incrementally pushes new and updated chat data for centralized reporting across multiple instances. This button only appears when ClickHouse is set up