Skip to main content

Token Usage Dashboard

Since v0.157.0. The Token Usage Dashboard shows the tokens this server recorded, with charts and tables. It reads the same ledger as the Usage Statistics API.

Opening it

Click the chart icon in the sidebar footer, right of the Ontology icon. The dashboard opens as a large window, laid out like the Cron Scheduler:

  • Left: the date range, a lane filter and the list of views.
  • Right: summary figures, then the selected view's charts and table.
  • Header: the time zone, Export CSV, and "What these numbers cover".

The dashboard only reads. It never changes your chats or the usage record.

Time zone

Days and months follow the time zone shown in the header. By default this is your browser's time zone, marked (browser). Click it to choose any other zone, or pick Browser to go back. Your choice is remembered in this browser only.

The time zone changes where a day starts. For example, the same record can fall on 1 September in Tokyo and 31 August in Honolulu. The footer always shows which zone the dates use.

Range and lane

  • Range: 7, 30 or 90 days, this month, last month, 12 months, or Custom (up to 366 days). "Today" means today in the selected time zone.
  • Lane: limits every figure to one kind of caller:
    • chat (spa-prompt, spa-harness)
    • Declarative Workflow runs (workflow) and Pipeline jobs (workflow-job)
    • Teams (teams)
    • the OpenAI-compatible API (openai-api)
    • agent tasks started from a Live conversation (live, since v0.169.0)
    • background helpers (helper)

Summary figures

CardWhat it shows
InputUncached input + cache read + cache write, each also listed on its own
OutputOutput tokens; the reasoning tokens inside them are shown as "of which"
Model callsBilled model calls, the average tokens per call, and the number of records
Cache hit rateCache reads as a share of all input, over the models that report cache reads
Error / interruptedThe share of records whose turn ended in an error or was stopped

There is no single "total tokens" figure, because providers count them differently. Input and output are always shown separately.

Views

ViewWhat you get
OverviewDaily tokens by kind, plus the top five models and top five run targets
DailyOne bar per day, stacked by token kind, model or lane; a table per day
MonthlyOne bar per month, stacked the same way; a table with the change from the previous month
By typeRankings by lane, run target (Harness agent or Workflow), workflow agent, workflow node, or record kind
By modelEvery token kind per model, with the provider, cache hit rate, tokens per call and error share
SessionsThe chats that consumed the most, with their titles
Live voiceLive conversation time per day and per chat, with sessions and delegated tasks (v0.169.0). Seconds, not tokens; nothing is priced

Each table can be sorted by clicking a column header.

Reading the charts

  • Colours are fixed:
    • blue: uncached input
    • teal: cache read
    • amber: cache write
    • violet: output
  • Reasoning is part of output, so it is never stacked on top of output.
  • -- means "not reported". Some providers do not report every figure. A missing figure is shown as -- and is left out of the chart. It is never shown as zero.
  • A day with no activity is zero. Nothing ran, so nothing was consumed.
  • When a chart is stacked by model or lane, the five largest are shown and the rest are grouped as Other.

Opening a chat from Sessions

The Sessions view lists chats by the tokens they consumed, 50 per page. Some rows cannot be opened:

RowWhy
Deleted or re-imported chatThe chat no longer exists under that id. Its usage still counts
Temporary chatsTemporary chats are recorded without an id, so they are one combined row
No chat (jobs, API, Teams)The usage did not come from a chat in this app

To open a chat:

  1. Click Open on its row. The dashboard first checks that the chat still exists.
  2. Confirm. The dashboard closes and the chat opens.

If the chat was deleted in the meantime, the row changes to Deleted instead.

Export CSV

Export CSV downloads every usage record in the selected range, time zone and lane. It exports the raw records, not the table you are looking at, for use in Excel, Power BI or similar tools. The file is named like token-usage_2026-09-01_2026-09-30_Asia-Tokyo.csv. See Exporting for BI for the columns.

What it does not show

  • Money. Only token counts are shown. Prices depend on your contract and change over time, so multiply by your own rates.
  • Demo mode usage. Demo mode records nothing, so the dashboard is empty there.
  • Per-user figures. The usage record does not identify users.