The three series
Every workload node (a provider or a model class within it) publishes three daily series:
Read the three together: if Cost per Request falls while the Like-for-Like Index stays flat, the lab is getting cheaper by shifting workload to smaller models rather than because the same model got cheaper. If the Like-for-Like Index also falls, the same model actually got cheaper. Rising Workload Intensity — longer answers, more tool calls, deeper reasoning — can push Cost per Request up even while per-token prices fall.
“Settled” here means the index’s official daily computation from venue-reported realized prices and volumes — the same epistemic status as OTPI. It is not audited payments.
Providers and model classes
Model classes are exact partitions of a provider’s daily per-model rows, so class-level rows sum back to the provider aggregate. Class-level like-for-like removes only within-class mix.
Choose the aggregate for a whole-lab view, or a class to isolate a family (for example
sonnet to strip out Opus/Haiku mix effects).
Thin classes (OpenAI
pro, codex, nano, and the image families across labs) are accurate partitions but low-volume. Daily wiggles in those series are small-sample noise and should be read with wider windows.How it’s computed
The index rides the existing OTPI settle. For each provider on each settlement day:- Per-model daily rows are persisted with settled dollars, tokens, and request counts.
- Provider and class nodes are built by summing the partition of models in each node.
- Cost per Request is
settled_dollars ÷ requestson that day. - Workload Intensity is
tokens ÷ requestson that day. - Like-for-Like Index uses an LMDI decomposition between trailing 7-day windows to separate the same-model unit-cost change from the mix change, then chains the same-model component day over day. Inputs are smoothed, outputs are not, so daily chaining does not drift and model entry/exit lands in the mix term by construction.
AggregateError so the job exits with failure while preserving the token price index.
Coverage window
- History starts 2026-06-11. The 2026-06-04 to 2026-06-10 settlement block was backfilled with elevated Opus effective prices and is excluded from the seeded base.
- 2026-06-30 is missing from settlement inputs for all labs — a one-day gap pending a settlement re-emit upstream.
- Newly settled days advance daily on the same ~36-hour lag as OTPI.
Accessing the data
Query the index programmatically viaGET /api/workload. Unlike OTPI, this endpoint has no free tier — every request must include an API key. See Authentication for how to send the Authorization: Bearer header, and Manage API keys to create one.
Viewing in the dashboard
The Workload Cost tab on data.ornn.com/analytics plots all three series, with dropdowns for provider and model class. Axes and hover tooltips are unit-aware — cents for cost per request, index points for like-for-like, thousands of tokens for intensity.Related
- The Token Price Index — the per-token OTPI this index composes with.
- LLM coding activity — daily public-GitHub PR and merge metrics for coding assistants.

