Skip to main content

Analytics & Events

This section covers playback telemetry, event hooks, and best practices for analytics pipelines.

Use Pro Player for the canonical analytics prop setup and event callback examples.

Event types​

Playback​

EventFired when
playPlayback started or resumed
pausePlayback paused
seekA seek operation completed
endedPlayback reached the end of the content
buffer_startPlayer stalled waiting for data
buffer_endBuffering complete; playback resumed
buffering_startPro-level buffering start (includes diagnostic context)
buffering_endPro-level buffering end
playback_errorA playback error occurred
excessive_bufferingPlayer has stalled an unusually high number of times in this session

Session lifecycle​

EventFired when
session_startAnalytics session begins (on first play)
session_endSession ends (on ended, unmount, or explicit close)

Progress milestones​

EventFired when
quartilePlayback crosses a percentage milestone; quartile field is 25, 50, 75, or 100

Track changes​

EventFired when
quality_changeUser selects a different quality variant; selectedQuality is set
subtitle_changeUser changes subtitle track; selectedSubtitle is set
audio_track_changeUser changes audio track; selectedAudioTrack and audioTrackId are set

Ad telemetry​

EventFired when
ad_startAn ad break begins; adPosition (preroll/midroll/postroll) and mainContentPositionAtAdStart are set
ad_completeAn ad break finishes
ad_errorAn ad fails to load or play; errorMessage is set

Diagnostics​

EventFired when
debug_overlay_openedDeveloper debug overlay becomes visible
debug_overlay_closedDeveloper debug overlay is hidden

Common event group shorthand​

  • Playback: play, pause, seek, ended, buffer_start, buffer_end
  • Progress milestones: quartile (25, 50, 75, 100)
  • Ad telemetry: ad_start, ad_complete, ad_error

If you are integrating ad metrics, pair this page with Ads & Monetization.