{% from '_analytics_charts.html' import bars, trend, donut, usage_table %}
Recorded model calls{{ usage.totals.calls }}
Measured tokens{{ usage.totals.total_tokens }}{{ usage.totals.unknown_usage_calls }} calls missing usage
Known calculated charge{{ '$%.6f'|format(usage.totals.cost_usd|float) if usage.totals.cost_usd is not none else 'Unknown' }}{{ usage.totals.unpriced_calls }} unpriced calls · USD
Mean model latency{{ '%.1f ms'|format(usage.totals.mean_latency_ms) if usage.totals.mean_latency_ms is not none else 'Unknown' }}{{ usage.totals.latency_samples }} measured calls

Recorded window only · {{ usage.coverage.events_scanned }} events · {{ usage.timezone }}. {% if not usage.coverage.read_complete %}Read completeness is partial or not established. Narrow the filters for a more complete window.{% endif %} Unpriced calls are excluded from charges, not treated as free.

{{ trend(usage_charts.daily_tokens, 'Daily token consumption', 'tokens') }} {{ trend(usage_charts.daily_cost, 'Daily known charge', 'USD') }} {{ bars(usage_charts.agent_cost, 'Agent charges', 'USD · known portion') }} {{ donut(usage_charts.memory_tokens, 'Memory prompt share') }} {{ bars(usage_charts.memory_latency, 'Memory retrieval latency', 'mean ms per operation') }}
Memory reads
Measured retrieval latency
Rendered prompt
Approximate memory tokens
Model result
Provider tokens × rate card
{{ usage_table(usage.agents, 'Usage by agent') }} {{ usage_table(usage.models, 'Usage by provider and model') }} {{ usage_table(usage.interactions, 'Usage by interaction') }}
Memory measurements
{% for row in usage.memory %}{% else %}{% endfor %}
Memory typeRendered charactersApprox. tokensSupply samplesRetrievals / errorsTotal retrieval msMean / p95 retrieval ms
{{ row.label }}{{ row.memory_chars if row.supply_samples else 'Unknown' }}{{ row.memory_tokens_estimate if row.supply_samples else 'Unknown' }}{{ row.supply_samples }}{{ row.retrieval_samples }} / {{ row.retrieval_errors }}{{ '%.1f'|format(row.retrieval_total_ms) if row.retrieval_samples else 'Unknown' }}{{ '%.1f / %.1f'|format(row.retrieval_mean_ms, row.retrieval_p95_ms) if row.retrieval_samples else 'Unknown' }}
No per-type instrumentation was recorded. Historical attribution cannot be reconstructed.
Accuracy, coverage and pricing sources

Standard direct-API rates only unless a custom registry is configured. Current-catalog calculations apply today's configured rates to older events; they are not historical invoices. Region, batch, priority, discounts and non-token fees require matching cards or billing reconciliation.