Skip to main content
The Token Volume Index counts the tokens OTPI already prices. Nothing here is a new collection — the series are derived from the same settled daily volumes. Open-weight models released by a closed lab (gpt-oss, Gemma) and free variants are excluded before settlement, so a lab’s totals sit below its published all-model figures. Daily grain only. No Index window: every request needs a Premium or Full key. See Access tiers.

Five charts on the platform

The page at data.ornn.com/analytics/models/volume draws five charts: four from the settled volume feed, and Input vs Output Share from the token-split feed. Token Share and Volume Growth each have an independent selector that gates on weight class first — closed source or open source — then the labs inside that class, and both open on the closed frontier three (anthropic, openai, google). The two classes are never drawn on one axis: these volumes settle from third-party sourcing, which leans heavily toward open-weight models, so a share taken across both classes would mostly describe that source rather than the market. Within a class that skew sits in every lab’s denominator alike and cancels. Frontier Token Volume and Open vs Closed Share are fixed universes — a selector would make their titles wrong. Share is a per-day ratio, valid on every day the selected labs reported, so it is not trimmed to the shared growth base. Growth is: drawing days before the common start would put some labs below 100 while a late arrival had no line at all.

Tracked labs

The same 11 as OTPI: Closed. anthropic · openai · google Open-weight. deepseek · minimax · xiaomi · qwen · moonshotai · z-ai · mistralai · meta-llama

The REST series

GET /api/token-volume publishes the closed-lab slice of the same volumes:
  • growthIndex — each lab indexed to 100 at its own first settled day, not a shared day. Fixed-base: overlapping windows return identical values for the same date.
  • share — of the closed-lab daily total.
  • totalGrowthIndex — the three labs combined, indexed to 100 at the first date any of them reported.
startDate and endDate are required (YYYY-MM-DD). A lab that settled no volume on a day is left out of that day’s labs array rather than reported as zero. There is no lab filter: share is defined over the closed-lab total, so a single-lab read would answer share: 1 on every row. The platform charts recompute share, the shared growth base, and the open/closed split client-side from the same settled rows. Those views are not extra fields on this endpoint. commonBaselineDate is absent from the REST response — a shared base is not a concept on the own-day series.