Compare metrics and find groups
In Analytics → Compare metrics, choose a period, video, and environment. Select a dimension and groups A/B; A can be the entire population. The comparison shows thirteen metrics, the B−A difference, and valid/selected coverage. All measurements expands the available measurements for each metric.
Compare from the SDK
Section titled “Compare from the SDK”With data:read permission and the server client:
const comparison = await orilla.data.metrics.comparison({ timeframe: ["24:hours"], dimension: "browser", value: "Chrome",});for (const group of comparison.data) { console.log(group.metric, group.items, group.orilla);}const unknownBrowser = await orilla.data.metrics.comparison({ timeframe: ["24:hours"], dimension: "browser", missing: true,});value selects a literal, including an empty string. missing: true selects absence; they cannot be combined. The text __empty__ remains a literal. Available dimensions are those Orilla collects; missing geolocation or labels are not invented.
Each metric preserves its time population. Views, viewers, and time use the start; quality uses the end of completed views. The query compares a shared snapshot, with explicit unknowns. A zero count does not turn an empty distribution into a measured zero.
Quality insights
Section titled “Quality insights”Select one of ten quality metrics and its avg, median, or 95th measurement:
const quality = await orilla.data.metrics.insights("video_startup_time", { timeframe: ["24:hours"], measurement: "95th",});console.log(quality.orilla.baseline, quality.orilla.coverage);for (const row of quality.data) { console.log(row.filter_column, row.filter_value, row.negative_impact_score);}Orilla’s orilla.cohort-impact.v1 algorithm weights the difference between the population and group by its share of valid measurements. A negative score indicates a worse value relative to the population; bitrate reverses the direction. This is not causality, statistical significance, or another platform’s private algorithm. Different dimensions overlap: do not add their scores.
Volume insights
Section titled “Volume insights”Choose Views, Estimated viewers, or Playing time:
const volume = await orilla.data.metrics.insights("views", { timeframe: ["24:hours"], measurement: "count",});await orilla.data.metrics.insights("unique_viewers");await orilla.data.metrics.insights("playing_time", { measurement: "sum" });const views = await orilla.data.views.list({ timeframe: [volume.timeframe[0], volume.timeframe[1]], aggregation: "view_start", dimension: "browser", value: "Chrome",});With count/sum, larger contributions appear first and orilla.metric_share is reported. Distinct viewers can appear in multiple groups: their shares cannot be added. The global total uses distinct viewers across the population.
playing_time also supports count, avg, median, and 95th. Distributions measure a weighted duration deviation; a negative score means greater duration, without a quality judgment. This algorithm is identified as orilla.volume-distribution.v1.
View playbacks preserves the insight’s two timestamps and uses view_start for volume and view_end for quality. Reuse these dates when paginating with the SDK. The interval is preserved, rather than a snapshot across requests: completions or corrections can change results. When the retention margin expires, refresh insights and reopen the group.
Limits and coverage
Section titled “Limits and coverage”Both families exclude still-active views and unknown data from calculations that need them. Retention is 30 days; the default period is 24 hours. Limits are 100,000 views, 10,000 insight groups, and five seconds per SQL statement. Exceeding limits returns 413; timeout returns 503. Results are not silently truncated.
Readers can query; switching environments discards previous results. For current signals, follow monitoring; for storage and bytes, see Usage.