Logo

Resources

Metrics Encyclopedia

Your guide to understanding video, advertising, and performance metrics.

Monetization & Advertising Ad Requests • Ad Fill RateAd ImpressionsAd Error RateTotal Ad Errors • Ad Playback Reliability • Ad Break Duration • Ad Watched Time • Ad Completion RateAd Click Through Rate • Ad Tolerance • Ad Revenue • Average CPM Rate • Exits Before Video Start • Exits During Ad Break • Content that drives Subscription • Conversion to Subscribe • Total Sponsor ImpressionsTotal Sponsor Viewing Time

Audience Engagement Monthly Viewing Users • User Stickiness • Authentication Rate • Concurrent App Sessions • Concurrent Plays • Total Time Watched • Content Watch Time • Content Session Time • Content Drop Off • Interval Minutes • Viewing Minute Distribution • Audience Penetration • Content Penetration • Completion Rates • Percent Complete • Pageviews with Video Playback • Video Engagement Ratio • Flag Interesting Segments

Operational Integrity SEI (Streaming Experience Index) • Play Attempts • Play Starts • Startup Time • Session-Level Playback Latency Breakdown • Video Restart Time • Stall Ratio • Buffer Ratio • Playback Stall Rate • Average Playback StallsVideo Buffering TimeStall Cause Attribution Metric • Exits During Stall • Video Error Rate • Video Interruption Count • Video Interruption Ratio • Exits After Error • End-to-End Session Resilience • Video Bitrate • Average Frame Rate • Adaptive Bitrate (ABR) Drift Analysis • Bitrate Selection Efficiency • Content Delivery Consistency Score • Dynamic Network Congestion Monitoring • Per-Region QoE Disparity Index • QoE-to-QoS Correlation Index


Monetization & Advertising

Metrics related to generating revenue, ad delivery, and how the monetization experience impacts your audience.

Example Filters

Note: Any dimension in the Datazoom data dictionary is a candidate filter. The following are common examples you can use to slice and dice the metrics in this category:

  • Content & Strategy: Streaming Type, Title / Asset ID, Content Duration, Genre

  • Advertising Data: Advertiser, Ad Partner, Ad System, Ad Creative ID, Deal ID, Ad ID

  • Audience & Device: Device Manufacturer / Device Name, Device Type, OS Name / OS Version, Browser Name / Browser Version

  • Quality & Network: Bandwidth, Bitrate, Error Code

  • User Context & Preferences: Orientation, Cookies Enabled, Ad Tracking Opt Out, Volume Level

Ad Requests

Definition

The total number of requests made to the ad server to retrieve an ad.

Potential Insight

Useful for tracking ad system delivery performance and load. It is also a fundamental baseline for monetization metrics, particularly when comparing ad requests against actual ad impressions to identify fill issues.

Required Data Points

media_request (event) where media_type = 'ad'

Generalized Formula

count(media_request where media_type = 'ad')

Example SQL Query

1SELECT2  COUNT(*) AS total_ad_requests3FROM4  datazoom.events5WHERE6  event_type = 'media_request' 7  AND media_type = 'ad'

Ad Fill Rate

Definition

The percentage of ad requests that are successfully filled with an ad response from the ad server.

Potential Insight

Identifies missed revenue opportunities. A low fill rate indicates that despite having available ad inventory (requests), the ad server is failing to provide an ad to the viewer, often pointing to configuration or network issues.

Required Data Points

  • media_request (event) where media_type = 'ad' (CSAI supported; coming soon for SSAI)

  • playback_start (event) where media_type = 'ad' (used here as a proxy for a filled ad impression)

Generalized Formula

(count(playback_start where media_type = 'ad') / count(media_request where media_type = 'ad')) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event_type = 'playback_start' AND media_type = 'ad' THEN ad_session_id ELSE NULL END) / 3  NULLIF(COUNT(DISTINCT CASE WHEN event_type = 'media_request' AND media_type = 'ad' THEN ad_session_id ELSE NULL END), 0)) * 100 AS ad_fill_rate4FROM5  datazoom.events

Ad Impressions

Definition

The total number of ads that successfully loaded and started playing on the viewer's screen.

Potential Insight

Acts as the bridge between ad requests and ad completions. Comparing ad requests to ad impressions helps identify fill or rendering issues, while comparing impressions to completions measures user tolerance and engagement.

Required Data Points

ad_impression (event)

Generalized Formula

count(ad_impression)

Example SQL Query

1SELECT2  COUNT(*) AS total_ad_impressions3FROM4  datazoom.events5WHERE6  event_type = 'ad_impression'

Ad Error Rate

Definition

The percentage of ad requests or play attempts that result in a fatal error, preventing the ad from being displayed.

Potential Insight

High ad error rates indicate issues with the ad server, VAST/VMAP parsing, or ad inventory mapping. This directly impacts monetization and helps ops teams pinpoint faulty ad creatives or network timeouts.

Required Data Points

  • ad_request (event)

  • ad_error (event)

Generalized Formula

(Total Ad Errors / Total Ad Requests) * 100

Example SQL Query

1SELECT2  (CAST(SUM(CASE WHEN event.type = 'ad_error' THEN 1 ELSE 0 END) AS double) / 3  NULLIF(CAST(SUM(CASE WHEN event.type = 'ad_request' THEN 1 ELSE 0 END) AS double), 0)) * 100 AS ad_error_rate4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Total Ad Errors

Definition

The absolute count of all ad errors encountered across all viewer sessions in the selected timeframe.

Potential Insight

Identifies massive spikes in ad failures indicating a widespread outage, an incompatible VAST response, or a severely broken ad campaign that needs immediate pausing.

Required Data Points

ad_error (event)

Generalized Formula

Count of ad_error events

Example SQL Query

1SELECT2  COUNT(*) as total_ad_errors3FROM datazoom.events4WHERE event.type = 'ad_error' AND $__timeFilter(event.timestamp)

Ad Playback Reliability

Definition

The percentage of ad play attempts that successfully completed without fatal errors, stalls, or interruptions.

Potential Insight

Helps pinpoint specific ad creatives, ad networks, or SSAI providers that are causing playback instability, ensuring optimal ad yield and viewer retention during commercial breaks.

Required Data Points

  • ad_request (event)

  • ad_complete (event)

  • ad_error (event)

Generalized Formula

(Total Ad Completes / (Total Ad Requests - Ad Errors)) * 100

Example SQL Query

1SELECT2  (CAST(SUM(CASE WHEN event.type = 'ad_complete' THEN 1 ELSE 0 END) AS double) / 3  NULLIF(CAST(SUM(CASE WHEN event.type = 'ad_request' THEN 1 ELSE 0 END) AS double), 0)) * 100 AS ad_playback_reliability4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Ad Break Duration

Definition

The duration of an ad break. This can be calculated down to a single ad break or used as an average across multiple breaks.

Potential Insight

Tracking ad break duration provides a balance between monetization and user experience. For example, comparing the length of an ad break against content completion rates helps you understand user tolerance and drop-off behavior.

Required Data Points

  • ad_break_start (event)

  • ad_break_end (event)

Generalized Formula

(ad_break_end) - (ad_break_start)

Example SQL Query

1SELECT2  ad_break_id,3  AVG(timestamp_diff(millisecond, ad_break_start_time, ad_break_end_time)) AS avg_ad_break_duration_ms4FROM5  datazoom.events6WHERE7  event_type IN ('ad_break_start', 'ad_break_end')8GROUP BY9  ad_break_id

Ad Watched Time

Definition

The total duration of ad playback.

Potential Insight

Helps quantify total ad exposure and inventory delivery. Useful for calculating total ad yield and understanding viewer ad consumption. Also: When measured by content title, this can indicate ad tolerance (e.g. is this content able to drive more ad sales).

Required Data Points

heartbeat (event) where media_type = 'ad'

Generalized Formula

SUM(MAX(playback_duration_ads_ms)) for each content_session_id

Example SQL Query

1SELECT2  SUM(MAX(metrics.playback_duration_ad_ms)) AS total_ad_watched_time_ms3FROM4  datazoom.events5WHERE6  event_type = 'heartbeat'7  AND media_type = 'ad'

Ad Completion Rate

Definition

The rate at which ad impressions result in a completed ad playback.

Potential Insight

High completion indicates user tolerance and ad effectiveness. Ad space for content or cohorts with high completion rates can be sold at a premium.

Required Data Points

  • playback_complete (event) where media_type = 'ad'

  • ad_impression (event)

Generalized Formula

(count(playback_complete where media_type = 'ad') / count(ad_impression)) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event_type = 'playback_complete' AND media_type = 'ad' THEN ad_session_id ELSE NULL END) / 3  NULLIF(COUNT(DISTINCT CASE WHEN event_type = 'ad_impression' THEN ad_session_id ELSE NULL END), 0)) * 100 AS ad_completion_rate4FROM5  datazoom.events

Ad Click Through Rate

Definition

The rate at which ads are clicked by the viewer.

Potential Insight

Provides an indication of how a particular ad is performing to engage the user. High click-through rates indicate high interest from users. When a cohort or content can be identified with a higher click-through rate, that ad space can be sold for a premium.

Required Data Points

  • ad_click (event)

  • ad_impression (event)

Generalized Formula

(count(ad_click) / count(ad_impression)) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event_type = 'ad_click' THEN ad_session_id ELSE NULL END) / 3  NULLIF(COUNT(DISTINCT CASE WHEN event_type = 'ad_impression' THEN ad_session_id ELSE NULL END), 0)) * 100 AS ad_click_through_rate4FROM5  datazoom.events

Ad Tolerance

Definition

Measure ad tolerance by comparing the volume of advertising successfully consumed against the volume explicitly rejected. An equilibrium point of 1.0 indicates users are abandoning as many ads as they complete. A score > 1.0 means high tolerance (completing more), while < 1.0 signifies ad fatigue (abandoning more).

Required Data Points

  • playback_start (event) where media_type = 'ad' (Ad Starts)

  • playback_complete (event) where media_type = 'ad' (Ad Completes)

Generalized Formula

(Ad Starts) / (Ad Completes)

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event_type = 'playback_complete' AND media_type = 'ad' THEN ad_session_id ELSE NULL END)) / 3  NULLIF((COUNT(DISTINCT CASE WHEN event_type = 'playback_start' AND media_type = 'ad' THEN ad_session_id ELSE NULL END) - COUNT(DISTINCT CASE WHEN event_type = 'playback_complete' AND media_type = 'ad' THEN ad_session_id ELSE NULL END)), 0) AS ad_tolerance_score4FROM5  datazoom.events

Ad Revenue

Definition

The total estimated revenue generated from ad impressions.

Potential Insight

Directly measures the financial impact of your advertising strategy. Combining this with Ad Impressions and Ad Watched Time helps calculate overall yield and return on investment (ROI) for your content.

Required Data Points

  • ad_impression (event)

  • ad_cpm (enrichment metadata)

Generalized Formula

(Sum of all ad_cpm values) / 1000

Example SQL Query

1SELECT2  SUM(event.metrics.ad_cpm) / 1000 AS total_ad_revenue3FROM datazoom.events4WHERE event.type = 'ad_impression'5  AND $__timeFilter(event.timestamp)

Average CPM Rate

Definition

The average CPM rate for a given asset. Could also be used for title, if that is filled out accurately.

Potential Insight

Provides average revenue earned by each video show or title. Daily, Weekly, and Monthly summaries can provide key indicators of growth.

Required Data Points

  • ad_impression (event)

  • asset_id (metadata)

  • ad_cpm_rate (enrichment metadata)

Generalized Formula

avg(ad_cpm_rate) group by asset_id

Example SQL Query

1SELECT2  asset_id,3  AVG(ad_cpm_rate) AS avg_cpm_rate4FROM5  datazoom.events6WHERE7  event_type = 'ad_impression'8GROUP BY9  Asset_id

Exits Before Video Start

Definition

The number of instances where a user abandons the session after a "Play" intent is captured (Play Attempt) but before the first frame of media—either an Ad or Content—is successfully rendered.

Potential Insight

This is a critical "friction" metric. High EBVS typically indicates that your startup latency is too high (buffering before start), your pre-roll ad tags are broken/timing out, or there is a fatal error in the player initialization sequence.

Required Data Points

  • media_request (event)

  • playback_start (event)

  • content_session_id (metadata)

Generalized Formula

Total Play Attempts - Total (Unique Content Sessions that reached ad_start OR playback_start)

Example SQL Query

1SELECT2  COUNT(DISTINCT user_details.content_session_id) AS total_exits_before_start3FROM datazoom.events4WHERE event.type = 'media_request'5  AND user_details.content_session_id NOT IN (6    SELECT DISTINCT user_details.content_session_id7    FROM datazoom.events8    WHERE event.type IN ('ad_start', 'playback_start')9    )10    AND $__timeFilter(event.timestamp)

Exits During Ad Break

Definition

The number of sessions intentionally terminated by the user while an ad break was actively playing.

Potential Insight

Indicates severe ad fatigue, overly long commercial breaks, repetitive creatives, or broken ad media causing abandonment.

Required Data Points

  • ad_break_start (event)

  • ad_break_end (event)

  • session_end (event)

Generalized Formula

Count of session_end events occurring between ad_break_start and ad_break_end

Example SQL Query

1SELECT2  COUNT(DISTINCT content_session_id) AS ad_abandonments3FROM datazoom.events4WHERE event.type = 'session_end' AND video.media_type = 'ad' AND $__timeFilter(event.timestamp)

Content that drives Subscription

Definition

Titles most watched by subscribed users.

Potential Insight

Useful to determine which video titles are watched by subscribers to inform content decisions.

Required Data Points

  • Subscription Status (Enrichment)

  • asset_id (metadata)

Generalized Formula

watched titles from subscribers / watched titles from non-subscribers

Example SQL Query

1SELECT2  asset_id,3  COUNT(DISTINCT CASE WHEN subscription_status = 'Subscribed' THEN user_id END) AS subscribed_views,4  COUNT(DISTINCT CASE WHEN subscription_status != 'Subscribed' THEN user_id END) AS non_subscribed_views,5  (COUNT(DISTINCT CASE WHEN subscription_status = 'Subscribed' THEN user_id END) / NULLIF(COUNT(DISTINCT CASE WHEN subscription_status != 'Subscribed' THEN user_id END), 0)) AS sub_to_non_sub_ratio6FROM7  datazoom.events8WHERE9  event_type = 'playback_start'10  AND $__timeFilter(event.timestamp)11GROUP BY12  asset_id13ORDER BY14  subscribed_views DESC

Conversion to Subscribe

Definition

Ratio of subscribed users to identified returning viewers.

Potential Insight

Measures how many returning users have subscribed to the service. Useful KPI to track retention and marketing campaigns for converting users to subscription levels.

Required Data Points

  • user_id (metadata)

  • Subscription Status (Enrichment)

Generalized Formula

(viewers with subscriptionID / viewers with userID) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN subscription_status = 'Subscribed' THEN user_id END) / NULLIF(COUNT(DISTINCT user_id), 0)) * 100 AS conversion_to_subscribe_rate3FROM4  datazoom.events5WHERE6  $__timeFilter(event.timestamp)

Total Sponsor Impressions

Definition

The number of times a sponsor's product has appeared to end-users within the content.

Potential Insight

Provides the number of times a sponsored product or service was viewed. Can be used to track sponsorship goals and ad delivery.

Required Data Points

  • ad_impression (event)

  • content_session_id (metadata)

  • sponsor_id (join key / enrichment)

Generalized Formula

COUNT(ad_impression) grouped by sponsor_id

Example SQL Query

1SELECT2  sponsor_id,3  COUNT(*) AS total_sponsor_impressions4FROM5  datazoom.events6WHERE7  event_type = 'ad_impression'8  AND $__timeFilter(event.timestamp)9GROUP BY10  sponsor_id

Total Sponsor Viewing Time

Definition

The total amount of time viewers spent watching a specific sponsor's ad or product placement.

Potential Insight

Helps quantify the total brand exposure and engagement time for a specific sponsor, which is highly useful for reporting ROI and value to brand partners.

Required Data Points

  • playback_duration_ad_ms (metadata)

  • content_session_id (metadata)

  • sponsor_id (join key / enrichment)

Generalized Formula

SUM(playback_duration_ad_ms) grouped by sponsor_id

Example SQL Query

1SELECT2  sponsor_id,3  SUM(event.metrics.playback_duration_ad_ms) / 60000 AS total_sponsor_viewing_time_minutes4FROM5  datazoom.events6WHERE7  $__timeFilter(event.timestamp)8GROUP BY9  sponsor_id

Audience Engagement

Metrics tracking how users interact with, consume, and navigate the content.

Example Filters

Note: Any dimension in the Datazoom data dictionary is a candidate filter. The following are common examples you can use to slice and dice the metrics in this category:

  • Content & Strategy: Title / Asset ID, Genre, Series, Content Duration, Streaming Type (Live vs. VOD)

  • Audience Context: Subscription Status, User ID, App Session ID

  • Device & Geography: Device Type, OS Name, Country, City

Monthly Viewing Users

Definition

The total number of unique users who initiated at least one video playback within a 30-day (or calendar month) period.

Potential Insight

A core platform health metric. Tracking your active monthly audience size helps evaluate the long-term success of acquisition and retention strategies.

Required Data Points

  • user_id (metadata)

  • playback_start (event)

Generalized Formula

count(distinct user_id) over a 30-day window

Example SQL Query

1SELECT2  COUNT(DISTINCT user_details.user_id) AS monthly_viewing_users3FROM4  datazoom.events5WHERE6  event_type = 'playback_start'7  AND timestamp >= NOW() - INTERVAL 30 DAY

User Stickiness

Definition

The ratio of Daily Active Users (DAU) to Monthly Active Users (MAU), expressed as a percentage.

Potential Insight

Measures how frequently users return to the platform. A higher stickiness percentage indicates that viewers are making the app a daily habit, rather than just dropping in once a month.

Required Data Points

  • user_id (metadata)

  • playback_start (event)

Generalized Formula

(Daily Active Users / Monthly Active Users) * 100

Example SQL Query

1WITH DAU AS (2  SELECT COUNT(DISTINCT user_details.user_id) AS daily_users3  FROM datazoom.events4  WHERE event_type = 'playback_start' AND timestamp >= NOW() - INTERVAL 1 DAY5),6MAU AS (7  SELECT COUNT(DISTINCT user_details.user_id) AS monthly_users8  FROM datazoom.events9  WHERE event_type = 'playback_start' AND timestamp >= NOW() - INTERVAL 30 DAY10)11SELECT12  (daily_users * 100.0 / monthly_users) AS user_stickiness_percentage13FROM DAU, MAU

Authentication Rate

Definition

The ratio of identified/returning users (who have logged in) to total viewers on the platform.

Potential Insight

Provides an indication of how many users are accessing the system through logging in rather than browsing anonymously. Useful for tracking conversion strategies aimed at moving anonymous viewers into known, registered users.

Required Data Points

  • user_id (enrichment metadata)

  • app_session_id (metadata)

Generalized Formula

(count(distinct user_id) / count(distinct app_session_id)) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT user_details.user_id) * 100.0) / COUNT(DISTINCT user_details.app_session_id) AS login_success_rate3FROM4  datazoom.events5WHERE6  $__timeFilter(event.timestamp)

Concurrent App Sessions

Definition

The total number of unique application sessions occurring at a specific point in time or over a given interval.

Potential Insight

Helps understand peak viewership, overall platform usage, and app-level engagement trends. This is a crucial KPI for tracking overall platform reach and for capacity planning.

Required Data Points

app_session_id (metadata)

Generalized Formula

count(distinct app_session_id)

Example SQL Query

1SELECT2  COUNT(DISTINCT user_details.app_session_id) AS app_sessions3FROM4  datazoom.events5WHERE6  $__timeFilter(event.timestamp)

Concurrent Plays

Definition

The total number of unique, active video streams (content sessions) occurring at a specific point in time.

Potential Insight

While "App Sessions" tracks platform traffic, Concurrent Plays tracks actual video consumption load. This is a vital real-time metric for live event monitoring and CDN capacity management.

Required Data Points

  • content_session_id (metadata)

  • heartbeat

Generalized Formula

count(distinct content_session_id)

Example SQL Query

1SELECT2  COUNT(DISTINCT user_details.content_session_id) AS concurrent_plays3FROM4  datazoom.events5WHERE6  $__timeFilter(event.timestamp)7  AND event_type = 'heartbeat'

Total Time Watched

Definition

The absolute total duration of all video content consumed across all users and sessions over a given period (often inclusive of ads).

Potential Insight

A top-level KPI for platform health and overall engagement volume. Often reported to executives or external stakeholders to demonstrate the sheer scale of platform consumption.

Required Data Points

  • content_session_id (metadata)

  • playback_duration_total_ms (metadata)

Generalized Formula

Sum of MAX(playback_duration_total_ms) across all content_session_ids

Example SQL Query

1SELECT2  SUM(totalDuration) / 60000 AS total_time_watched_minutes3FROM (4  SELECT5    user_details.content_session_id,6    MAX(event.metrics.playback_duration_total_ms) as totalDuration7  FROM8    datazoom.events9  WHERE 10    $__timeFilter(event.timestamp)11  GROUP BY12    user_details.content_session_id13)

Content Watch Time

Definition

The total aggregated time users have spent watching strictly content (excluding ads).

Potential Insight

The ultimate measure of true content consumption. High watch time indicates compelling programming. Useful for evaluating audience retention and the success of specific titles or genres independent of ad loads.

Required Data Points

  • content_session_id (metadata)

  • playback_duration_content_ms (metadata)

Generalized Formula

Average of MAX(playback_duration_content_ms) for each content_session_id

Example SQL Query

1SELECT2  SUM(playbackDurationContent) / 60000 AS total_content_watch_time_minutes3FROM (4  SELECT5    user_details.content_session_id,6    MAX(event.metrics.playback_duration_content_ms) as playbackDurationContent7  FROM8    datazoom.events9  WHERE10    $__timeFilter(event.timestamp)11  GROUP BY12    user_details.content_session_id13)

Content Session Time

Definition

Total time of video (includes playing and buffering time).

Potential Insight

Useful for understanding total time users spend viewing content.

Required Data Points

  • playback_duration_content_ms (fluxdata)

  • buffer_duration_content_ms (fluxdata)

  • content_session_id (metadata)

Generalized Formula

SUM(MAX(stall_duration_ms) + MAX(playback_duration_ms)) per unique content_session_id

Example SQL Query

1SELECT2  SUM(max_playback + max_buffer) AS content_session_time_ms3FROM (4  SELECT5    user_details.content_session_id,6    MAX(event.metrics.playback_duration_content_ms) AS max_playback,7    MAX(event.metrics.buffer_duration_content_ms) AS max_buffer8  FROM datazoom.events9  WHERE $__timeFilter(event.timestamp)10  GROUP BY user_details.content_session_id11)

Content Drop Off

Definition

The specific point in a video timeline where users abandon playback, usually calculated as a percentage of total viewers actively watching at specific time intervals.

Potential Insight

Helps content creators, producers, and ad-ops teams understand where users lose interest, informing content editing and optimal mid-roll ad placement.

Required Data Points

  • playback_stop (event)

  • playhead_position (metadata)

Generalized Formula

Count of Playback Stop events grouped by Playhead Position (in buckets)

Example SQL Query

1SELECT2  FLOOR(event.metrics.playhead_position / 60) * 60 AS minute_bucket,3  COUNT(*) AS drop_offs4FROM datazoom.events5WHERE event.type = 'playback_stop' AND $__timeFilter(event.timestamp)6GROUP BY minute_bucket7ORDER BY minute_bucket ASC

Interval Minutes

Definition

The total amount of video watch time segmented into specific time intervals (e.g., minute-by-minute, hourly) across a timeline.

Potential Insight

Useful for tracking consumption trends chronologically throughout a live broadcast or identifying specific timeframes where viewership spikes or drops.

Required Data Points

  • playback_duration_content_ms (metadata)

  • timestamp (event)

Generalized Formula

Sum of watch time grouped by time intervals (e.g., 5-minute buckets)

Example SQL Query

1SELECT2  $__timeGroup(event.timestamp, '5m') AS time_bucket,3  SUM(event.metrics.playback_duration_content_ms) / 60000 AS interval_watch_minutes4FROM5  datazoom.events6WHERE7  $__timeFilter(event.timestamp)8  AND event_type = 'heartbeat'9GROUP BY10  time_bucket11ORDER BY12  time_bucket

Viewing Minute Distribution

Definition

A distribution (or histogram) showing how viewing time is spread across the audience. (e.g., How many users watched for <10 minutes, 10-30 minutes, 30+ minutes).

Potential Insight

Helps segment your audience into casual, regular, and power viewers. This allows you to tailor strategies—such as targeting heavy users with subscription offers, or trying to increase the session lengths of casual viewers.

Required Data Points

  • user_id or content_session_id (metadata)

  • playback_duration_content_ms (metadata)

Generalized Formula

Count of users bucketed by their MAX(playback_duration)

Example SQL Query

1WITH UserWatchTime AS (2  SELECT3    user_details.user_id,4    SUM(event.metrics.playback_duration_content_ms) / 60000 AS total_mins5  FROM datazoom.events6  GROUP BY user_details.user_id7)8SELECT9  CASE10    WHEN total_mins < 10 THEN 'Casual (<10 min)'11    WHEN total_mins >= 10 AND total_mins < 60 THEN 'Regular (10-60 min)'12    ELSE 'Power (>60 min)' 13  END AS viewer_segment,14  COUNT(user_id) as user_count15FROM UserWatchTime16GROUP BY viewer_segment

Audience Penetration

Definition

The percentage of total unique viewers that are watching a specific selected title (grouped by title).

Potential Insight

A highly useful measure of what content is capturing the most attention relative to your total active audience at a particular point in time. Helps with content optimization, promotional strategies, and identifying trending "hit" content.

Required Data Points

  • user_id or app_session_id (metadata)

  • asset_id or title (metadata)

Generalized Formula

(count(distinct viewers watching a specific title) / count(distinct viewers across all titles)) * 100

Example SQL Query

1SELECT2  asset_id,3  (COUNT(DISTINCT user_details.user_id) * 100.0 / (SELECT COUNT(DISTINCT user_details.user_id) FROM datazoom.events WHERE event_type = 'playback_start')) AS audience_penetration_percentage4FROM5  datazoom.events6WHERE7  event_type = 'playback_start'8  AND $__timeFilter(event.timestamp)9GROUP BY10  asset_id

Content Penetration

Definition

The watch time of a specific title expressed as a percentage of the total watch time across the platform.

Potential Insight

Determines which video titles are driving your platform's consumption. This is a highly useful KPI to inform content acquisition, licensing, and production decisions.

Required Data Points

  • content_session_id (metadata)

  • playback_duration_content_ms (metadata)

  • asset_id or title (metadata)

Generalized Formula

(Total watch time for a specific title / Total platform watch time) * 100

Example SQL Query

1WITH SessionWatchTime AS (2  SELECT3    asset_id,4    user_details.content_session_id,5    MAX(event.metrics.playback_duration_content_ms) AS max_duration6  FROM datazoom.events7  WHERE $__timeFilter(event.timestamp)8  GROUP BY asset_id, user_details.content_session_id9)10SELECT11  asset_id,12  (SUM(max_duration) * 100.0 / (SELECT SUM(max_duration) FROM SessionWatchTime)) AS content_penetration_percentage13FROM SessionWatchTime14GROUP BY asset_id

Completion Rates

Definition

Computes the percentage of users who reached each completion milestone (e.g., 25%, 50%, 75%, 100%).

Potential Insight

Provides an indication of which video titles engage users for the duration of playback. It can also be used to correlate ad tolerance (e.g., do users drop off when more ads are delivered on a particular show?).

Required Data Points

  • milestone (event)

  • playback_start (event)

  • milestone_percent (metadata)

Generalized Formula

(count(milestone where milestone_percent = n) / count(playback_start)) * 100

Example SQL Query

1SELECT2  event.metrics.milestone_percent,3  (COUNT(DISTINCT user_details.content_session_id) * 100.0) / 4  (SELECT COUNT(DISTINCT user_details.content_session_id) FROM datazoom.events WHERE event_type = 'playback_start') AS completion_rate5FROM6  datazoom.events7WHERE8  event_type = 'milestone'9  AND $__timeFilter(event.timestamp)10GROUP BY11  event.metrics.milestone_percent

Percent Complete

Definition

The average percentage of a video's total duration that was watched during a playback session.

Potential Insight

A strong indicator of content stickiness at the asset level. If a video has a low percent complete, the thumbnail/title may be misleading, or the content itself may lose viewer interest rapidly.

Required Data Points

  • playback_duration_content_ms (metadata)

  • content_duration_ms (metadata)

Generalized Formula

Average of (playback_duration_content_ms / content_duration_ms) * 100

Example SQL Query

1SELECT2  asset_id,3  AVG( (max_playback / NULLIF(content_duration, 0)) * 100 ) AS average_percent_complete4FROM (5  SELECT6    asset_id,7    user_details.content_session_id,8    MAX(event.metrics.playback_duration_content_ms) AS max_playback,9    MAX(event.metrics.content_duration_ms) AS content_duration10  FROM datazoom.events11  WHERE $__timeFilter(event.timestamp)12  GROUP BY asset_id, user_details.content_session_id13)14GROUP BY asset_id

Pageviews with Video Playback

Definition

Tracks the number of pageviews that successfully convert into a video playback session.

Potential Insight

Provides a measurement of which pages have video content that users actually want to watch. Can help optimize which video subjects, topics, thumbnails, and placements drive the highest engagement.

Required Data Points

  • datazoom_loaded (event)

  • playback_start (event) where media_type = 'content'

Generalized Formula

(count(playback_start) / count(datazoom_loaded)) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event_type = 'playback_start' AND media_type = 'content' THEN user_details.app_session_id END) * 100.0) / 3  NULLIF(COUNT(DISTINCT CASE WHEN event_type = 'datazoom_loaded' THEN user_details.app_session_id END), 0) AS pageview_to_playback_conversion_rate4FROM5  datazoom.events6WHERE7  $__timeFilter(event.timestamp)

Video Engagement Ratio

Definition

The ratio of time a user is actively engaged on a page versus the time spent actually watching a video on that same page.

Potential Insight

Provides insight into how to optimize the site layout for higher video consumption. If users spend a long time on the page but have low video watch time, the video might be hard to find, unappealing, or the text content may be vastly more engaging.

Required Data Points

  • datazoom_loaded (event)

  • playback_duration_content_ms (metadata)

  • Page dwell time / Page unload events

Generalized Formula

(Total Video Watch Time on Page / Total Time Spent on Page) * 100

Example SQL Query

1-- Note: This requires joining video sessions with web page session durations2SELECT3  page_url,4  (SUM(video_watch_time_ms) / SUM(page_dwell_time_ms)) * 100 AS video_engagement_ratio5FROM6  page_and_video_metrics7GROUP BY8  page_url

Flag Interesting Segments

Definition

Identifies specific portions of a video that receive disproportionately high engagement, typically driven by users seeking/rewinding to replay specific moments.

Potential Insight

Helps editorial teams and content creators understand what exact moments resonate most with viewers, informing future content creation, highlight clipping, and social media sharing.

Required Data Points

  • seek_end (event)

  • playhead_position (metadata)

Generalized Formula

Count of seek events grouped by playhead_position intervals

Example SQL Query

1SELECT2  FLOOR(event.metrics.playhead_position / 10) * 10 AS video_segment_seconds,3  COUNT(*) AS seek_to_count4FROM5  datazoom.events6WHERE7  event_type = 'seek'8  AND asset_id = 'YOUR_ASSET_ID'9  AND $__timeFilter(event.timestamp)10GROUP BY11  video_segment_seconds12ORDER BY13  seek_to_count DESC

Operational Integrity

Metrics related to the technical health, reliability, and quality of the video delivery and playback experience.

Example Filters 

Note: Any dimension in the Datazoom data dictionary is a candidate filter. The following are common examples you can use to slice and dice the metrics in this category:

  • Content & Strategy: Streaming Type, Title / Asset ID, Content Duration, Genre

  • Advertising Data: Advertiser, Ad Partner, Ad System, Ad Creative ID

  • Audience & Device: Device Manufacturer / Device Name, Device Type, OS Name / OS Version

  • Quality & Network: Bandwidth, Bitrate, Error Code, CDN Name, ASN, ISP

Streaming Experience Index

Definition

A composite, weighted score aggregating multiple critical QoE factors (startup time, stall ratio, average bitrate, error rate) into a single overarching platform health metric (usually 0-100).

Potential Insight

Provides executives and operational teams with a high-level, easy-to-understand health score for the platform, streamlining reporting and historical trending.

Required Data Points

  • startup_time_ms (metadata)

  • stall_ratio (metric)

  • video_bitrate (metadata)

  • error_rate (metric)

Generalized Formula

A proprietary weighted average: (Weight A * Startup Score) + (Weight B * Stall Score) + (Weight C * Bitrate Score) - (Penalty * Error Rate)

Example SQL Query

1SELECT2  (100 - (AVG(event.metrics.stall_duration_ms / NULLIF(event.metrics.playback_duration_ms,0)) * 50) 3  (AVG(event.metrics.startup_time_ms) / 1000)) AS sei_score4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Play Attempts

Definition

The total count of user-initiated requests to play a video (or auto-play triggers).

Potential Insight

Represents the overall top-of-funnel audience engagement and intent to watch content before any technical failures are accounted for.

Required Data Points

media_request (event)

Generalized Formula

Count of media_request events

Example SQL Query

1SELECT2  COUNT(*) as play_attempts3FROM datazoom.events4WHERE event.type = 'media_request' AND $__timeFilter(event.timestamp)

Play Starts

Definition

The total count of successful initial frame renderings of the requested media content.

Potential Insight

When compared directly to Play Attempts, this metric establishes the base success rate of your entire content delivery pipeline.

Required Data Points

playback_start (event)

Generalized Formula

Count of playback_start events

Example SQL Query

1SELECT2  COUNT(*) as play_starts3FROM datazoom.events4WHERE event.type = 'playback_start' AND $__timeFilter(event.timestamp)

Startup Time

Definition

The total chronological time elapsed from the exact moment of the user's play request to the successful rendering of the first frame of video.

Potential Insight

Critical for initial engagement; high startup times directly and exponentially lead to high Exits Before Video Start (EBVS) rates.

Required Data Points

  • media_request (timestamp)

  • playback_start (timestamp)

  • startup_time_ms (metadata)

Generalized Formula

Average of Startup Time MS grouped by Session

Example SQL Query

1SELECT2  AVG(event.metrics.startup_time_ms) / 1000 AS avg_startup_time_seconds3FROM datazoom.events4WHERE event.type = 'playback_start' AND $__timeFilter(event.timestamp)

Session-Level Playback Latency Breakdown

Definition

Measures total video startup latency divided into its constituent components: DNS resolution time, TCP connection time, TLS handshake time, and Time to First Byte (TTFB).

Potential Insight

Pinpoints the exact network layer or infrastructure component causing slow video startup times (e.g., DNS vs. Player rendering delay).

Required Data Points

  • dns_time_ms (metadata)

  • tcp_time_ms (metadata)

  • tls_time_ms (metadata)

  • ttfb_ms (metadata)

Generalized Formula

Average values for each latency segment grouped by session or platform.

Example SQL Query

1SELECT2  AVG(event.metrics.dns_time_ms) as avg_dns,3  AVG(event.metrics.tcp_time_ms) as avg_tcp,4  AVG(event.metrics.tls_time_ms) as avg_tls,5  AVG(event.metrics.ttfb_ms) as avg_ttfb6FROM datazoom.events7WHERE $__timeFilter(event.timestamp)

Video Restart Time

Definition

The latency or time it takes for video playback to successfully resume after a user scrubs/seeks to a new position, or after recovering from a stall.

Potential Insight

Helps tune ABR logic, player pre-caching behaviors, and edge chunk retrieval for seek operations, ensuring high engagement when viewers skip around timelines.

Required Data Points

  • seek_end (event)

  • playback_resume (event)

  • resume_time_ms (metadata)

Generalized Formula

Average time difference between seek_end and playback_resume

Example SQL Query

1SELECT2  AVG(event.metrics.resume_time_ms) AS avg_video_restart_time_ms3FROM datazoom.events4WHERE event.type = 'playback_resume' AND $__timeFilter(event.timestamp)

Stall Ratio

Definition

Also known as Connection Induced Rebuffering Ratio (CIRR). The percentage of a viewer's total session time spent waiting for the video to buffer after successful initial playback has started.

Potential Insight

Another way to view Stall is to create a time-series metric that charts the average time viewers are in a stalled state. A high stall ratio guarantees poor viewer retention.

Required Data Points

  • stall_start (event)

  • stall_end (event)

  • playback_duration_ms (metadata)

Generalized Formula

sum(time_since_last_stall_start_ms from event.type=stall_end) / sum(max(playback_duration_ms for each unique content_session_id))

Example SQL Query

1SELECT2  (SUM(event.metrics.stall_duration_ms) /3  NULLIF(SUM(event.metrics.playback_duration_ms), 0)) * 100 AS stall_ratio4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Buffer Ratio

Definition

The proportion of total session time spent in a buffering or stalled state versus the time spent actively playing content.

Potential Insight

One of the most critical QoE metrics. High buffer ratios directly correlate with viewer churn and reduced watch time.

Required Data Points

  • buffer_duration_ms (metadata)

  • playback_duration_ms (metadata)

Generalized Formula

(Total Buffer Duration / (Total Playback Duration + Total Buffer Duration)) * 100

Example SQL Query

1SELECT2  (SUM(event.metrics.buffer_duration_ms) /3  NULLIF(SUM(event.metrics.playback_duration_ms) + SUM(event.metrics.buffer_duration_ms), 0)) * 100 AS buffer_ratio4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Playback Stall Rate

Definition

The frequency of stalls occurring per unit of active playback time.

Potential Insight

Normalizes stall counts across varying lengths of content, allowing fair comparison of buffering issues between short-form clips and long-form movies.

Required Data Points

  • stall_count (metric)

  • playback_duration_ms (metadata)

Generalized Formula

Total Stall Count / (Total Playback Duration in Minutes)

Example SQL Query

1SELECT2  (SUM(event.metrics.stall_count) /3  NULLIF(SUM(event.metrics.playback_duration_ms) / 60000, 0)) AS playback_stall_rate4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Average Playback Stalls

Definition

The average number of distinct stall (rebuffering) events experienced per viewing session.

Potential Insight

A direct indicator of the smoothness of the playback experience. High averages correlate strongly with user frustration and session abandonment.

Required Data Points

  • stall_start (event)

  • content_session_id (metadata)

Generalized Formula

Total Stall Events / Count of Unique Sessions

Example SQL Query

1SELECT2  CAST(SUM(CASE WHEN event.type = 'stall_start' THEN 1 ELSE 0 END) AS double) /3  NULLIF(COUNT(DISTINCT user_details.content_session_id), 0) AS avg_stalls_per_session4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Video Buffering Time

Definition

The absolute total duration (in milliseconds or seconds) a user spent trapped in a buffering state throughout their entire session.

Potential Insight

Quantifies the exact amount of literal time wasted by users waiting for video to load, helping size the impact of CDN performance problems.

Required Data Points

  • buffer_duration_ms (metadata)

  • content_session_id (metadata)

Generalized Formula

Sum of buffer_duration_ms grouped by content_session_id

Example SQL Query

1SELECT2  SUM(event.metrics.buffer_duration_ms) / 1000 AS total_buffering_time_seconds3FROM datazoom.events4WHERE $__timeFilter(event.timestamp)

Stall Cause Attribution Metric

Definition

Categorizes stall events by their specific root cause, such as network congestion, CDN cache misses, or local device decoding bottlenecks.

Potential Insight

Focuses troubleshooting efforts by clearly distinguishing between client-side player issues, local network failures, and server-side distribution problems.

Required Data Points

  • stall_start (event)

  • stall_reason (metadata)

Generalized Formula

Count of Stalls grouped by Stall Reason

Example SQL Query

1SELECT2  event.metrics.stall_reason,3  COUNT(*) as stall_count4FROM datazoom.events5WHERE event.type = 'stall_start' AND $__timeFilter(event.timestamp)6GROUP BY event.metrics.stall_reason

Exits During Stall

Definition

The count of user abandonments that occur while the player is actively caught in a buffering or stalled state.

Potential Insight

Highlights the viewer's absolute tolerance limit for connection-induced rebuffering before they give up and leave the stream.

Required Data Points

  • stall_start (event)

  • stall_end (event)

  • session_end (event)

Generalized Formula

Count of session_end events where the player state is "buffering"

Example SQL Query

1SELECT2  COUNT(DISTINCT content_session_id) as stall_abandonments3FROM datazoom.events4WHERE event.type = 'session_end' AND player.state = 'buffering' AND $__timeFilter(event.timestamp)

Video Error Rate

Definition

The percentage of play attempts that resulted in a fatal video error, completely halting playback.

Potential Insight

A core reliability metric reflecting player codebase stability, DRM negotiation success, and core infrastructure availability.

Required Data Points

  • error (event)

  • media_request (event)

Generalized Formula

(Total Fatal Errors / Total Media Requests) * 100

Example SQL Query

1SELECT2  (CAST(SUM(CASE WHEN event.type = 'error' THEN 1 ELSE 0 END) AS double) /3  NULLIF(CAST(SUM(CASE WHEN event.type = 'media_request' THEN 1 ELSE 0 END) AS double), 0)) * 100 AS video_error_rate4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Video Interruption Count

Definition

The absolute number of times video playback was forcibly interrupted by an unexpected stall, buffer, or non-fatal error event.

Potential Insight

Tracks exactly how choppy the user experience is. High interruption counts, even if brief, disrupt immersion more than one long buffering event.

Required Data Points

  • stall_start (event)

  • error (event)

Generalized Formula

Count of (stall_start + non-fatal error) events

Example SQL Query

1SELECT2  COUNT(CASE WHEN event.type IN ('stall_start', 'error') THEN 1 END) AS total_interruptions3FROM datazoom.events4WHERE $__timeFilter(event.timestamp)

Video Interruption Ratio

Definition

The percentage of total unique viewing sessions that experienced at least one interruption (stall or error) during playback.

Potential Insight

Measures the breadth of technical issues across the audience. A high ratio means widespread impact; a low ratio with high absolute counts means severe issues for a tiny minority of users.

Required Data Points

  • content_session_id (metadata)

  • stall_start (event)

  • error (event)

Generalized Formula

(Sessions with >= 1 Interruption / Total Sessions) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN event.type IN ('stall_start', 'error') THEN user_details.content_session_id END) /3  NULLIF(COUNT(DISTINCT user_details.content_session_id), 0)) * 100 AS video_interruption_ratio4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)

Exits After Error

Definition

The count of viewer sessions where the user immediately closes the player, navigates away, or terminates the app directly following a video error event.

Potential Insight

Quantifies the direct churn impact of specific player errors, allowing engineering teams to prioritize bug fixes based on viewer abandonment rates.

Required Data Points

  • error (event)

  • session_end (event)

Generalized Formula

Count of sessions where session_end occurs within X seconds of an error

Example SQL Query

1SELECT2  COUNT(DISTINCT content_session_id) as fatal_exits3FROM user_sessions4WHERE last_event_type = 'error'

End-to-End Session Resilience

Definition

The percentage of sessions that experience adverse network conditions or non-fatal player errors but successfully recover and continue playback without user abandonment.

Potential Insight

Evaluates the robustness of the video player's error recovery, fallback logic, and retry mechanisms.

Required Data Points

  • error (event - non-fatal)

  • playback_resume (event)

  • session_end (event)

Generalized Formula

(Sessions with Recovered Errors / Total Sessions with Errors) * 100

Example SQL Query

1SELECT2  (COUNT(DISTINCT CASE WHEN has_error = 1 AND has_resume = 1 THEN content_session_id END) /3  NULLIF(COUNT(DISTINCT CASE WHEN has_error = 1 THEN content_session_id END), 0)) * 100 AS resilience_score4FROM aggregated_session_metrics

Video Bitrate

Definition

The average volume of video data (bits per second) successfully delivered to the client during playback.

Potential Insight 

Indicates the visual fidelity and quality of the video being delivered. Tracking this helps balance CDN bandwidth costs against visual viewer satisfaction.

Required Data Points

video_bitrate (metadata)

Generalized Formula

Average of video_bitrate across sessions

Example SQL Query

1SELECT2  AVG(event.metrics.video_bitrate) / 1000000 AS avg_video_bitrate_mbps3FROM datazoom.events4WHERE event.type IN ('playback_start', 'rendition_change') AND $__timeFilter(event.timestamp)

Average Frame Rate

Definition

The average number of video frames per second (fps) successfully rendered by the client video player.

Potential Insight

Consistently low frame rates point to client-side device performance issues, heavy CPU/GPU decoding requirements, or poor rendition encoding, resulting in choppy playback independent of network speed.

Required Data Points

  • fps (metadata)

  • dropped_frames (metadata)

Generalized Formula

Average (FPS) per session

Example SQL Query

1SELECT2  AVG(event.metrics.fps) AS average_frame_rate3FROM datazoom.events4WHERE event.type = 'playback_metrics' AND $__timeFilter(event.timestamp)

Adaptive Bitrate (ABR) Drift Analysis

Definition

Measures the frequency and magnitude of shifts between different bitrate renditions during a playback session.

Potential Insight

Excessive shifting indicates unstable network conditions, misconfigured player configurations, or poorly tuned ABR algorithms, leading to a jarring visual experience for the user.

Required Data Points

  • rendition_change (event)

  • video_bitrate (metadata)

  • content_session_id (metadata)

Generalized Formula

Count of Rendition Change events per Session or per Minute of Playback

Example SQL Query

1SELECT2  AVG(rendition_changes) AS avg_abr_shifts_per_session3FROM (4  SELECT5    user_details.content_session_id,6    COUNT(*) as rendition_changes7  FROM datazoom.events8  WHERE event.type = 'rendition_change' AND $__timeFilter(event.timestamp)9  GROUP BY user_details.content_session_id10)

Bitrate Selection Efficiency

Definition

The ratio of the average delivered video bitrate to the client's available network bandwidth estimate.

Potential Insight

Determines if the video player is efficiently utilizing available bandwidth. A very low ratio indicates the player is being too conservative (low quality on a fast connection), while a ratio near 1.0 indicates optimal utilization.

Required Data Points

  • video_bitrate (metadata)

  • bandwidth_estimate (metadata)

Generalized Formula

Average (Video Bitrate / Bandwidth Estimate) * 100

Example SQL Query

1SELECT2  AVG(event.metrics.video_bitrate / NULLIF(event.metrics.bandwidth_estimate, 0)) * 100 AS bitrate_efficiency_score3FROM datazoom.events4WHERE event.type = 'playback_metrics' AND $__timeFilter(event.timestamp)

Content Delivery Consistency Score

Definition

A composite index tracking the variance in standard QoE metrics (startup time, buffer ratio, and bitrate) across different CDNs or delivery paths.

Potential Insight

Identifies edge caching issues, geographic delivery routing failures, or CDN degradation before widespread user complaints occur.

Required Data Points

  • cdn_name (metadata)

  • startup_time_ms (metadata)

  • stall_duration_ms (metadata)

Generalized Formula

Weighted average calculation comparing performance metrics grouped by CDN.

Example SQL Query

1SELECT2  cdn_name,3  AVG(event.metrics.startup_time_ms) as avg_startup,4  SUM(event.metrics.stall_duration_ms) / NULLIF(SUM(event.metrics.playback_duration_ms), 0) as stall_ratio5FROM datazoom.events6WHERE $__timeFilter(event.timestamp)7GROUP BY cdn_name

Dynamic Network Congestion Monitoring

Definition

Measures localized drops in throughput or increases in latency correlated with specific Autonomous System Numbers (ASNs) or Internet Service Providers (ISPs) during peak traffic.

Potential Insight

Enables operations teams to initiate proactive CDN switching or traffic shaping to bypass congested network routes and peerings.

Required Data Points

  • asn (metadata)

  • isp (metadata)

  • throughput (metadata)

Generalized Formula

Average Throughput grouped by ISP / ASN over time intervals

Example SQL Query

1SELECT2  user_details.isp,3  AVG(event.metrics.throughput) as avg_throughput_mbps4FROM datazoom.events5WHERE $__timeFilter(event.timestamp)6GROUP BY user_details.isp7ORDER BY avg_throughput_mbps ASC

Per-Region QoE Disparity Index

Definition

The calculated variance in overall Quality of Experience metrics (like Startup Time and Stall Ratio) between different geographic regions.

Potential Insight

Highlights underserved geographical areas requiring better CDN coverage, local edge nodes, or optimized routing tables.

Required Data Points

  • country / region (metadata)

  • startup_time_ms (metadata)

  • stall_ratio (metric)

Generalized Formula

Standard deviation of average QoE scores across regions.

Example SQL Query

1SELECT2  user_details.country,3  AVG(event.metrics.startup_time_ms) AS regional_startup,4  AVG(event.metrics.stall_duration_ms / NULLIF(event.metrics.playback_duration_ms, 0)) AS regional_stall_ratio5FROM datazoom.events6WHERE $__timeFilter(event.timestamp)7GROUP BY user_details.country

QoE-to-QoS Correlation Index

Definition

Measures the statistical relationship between underlying Quality of Service (QoS) metrics (network throughput, latency) and viewer Quality of Experience (QoE) (stalls, video quality).

Potential Insight

Helps engineering teams understand precisely how infrastructure performance constraints directly impact viewer satisfaction and behavior.

Required Data Points

  • throughput (metadata)

  • stall_duration_ms (metadata)

  • video_bitrate (metadata)

Generalized Formula

Correlation Coefficient (r) between throughput variance and stall ratio variance.

Example SQL Query

1SELECT2  CORR(event.metrics.throughput, event.metrics.stall_duration_ms) AS throughput_stall_correlation3FROM datazoom.events4WHERE $__timeFilter(event.timestamp)