What Brightcove traffic looks like
Brightcove is an enterprise video platform, so its analytics beacon is built around an account and player hierarchy rather than a single embed. Event Watcher matches the metrics endpoints, not the player bundle, so a Brightcove entry means the player reported.
- Endpoint pattern
- Video Cloud analytics posts to
metrics.brightcove.com(the tracker endpoint);analytics.brightcove.comserves the analytics API. The player itself, loaded from aplayers.brightcove.netURL containing the account and player ids, is page content and is not matched - Transport
- Beacon requests fired at distinct playback milestones rather than continuously
- Key parameters
accountis the Video Cloud account id ·videothe video id ·eventthe milestone (video_impressionwhen the player renders,video_viewwhen playback starts,video_engagementfor watched ranges) ·rangethe segment watched ·sessionthe playback session ·domainandsourcethe context the player reported from- Notes
- The distinction between
video_impressionandvideo_viewis the one that matters most. An impression means the player was placed on the page; a view means someone pressed play
A view beacon, reduced to the parameters that matter:
GET https://metrics.brightcove.com/v2/tracker
?account=1234567890001
&video=6301234567890
&event=video_view
&session=8f1c…
&domain=example.com
Debugging Brightcove with Event Watcher
- No dedicated parser. Beacons are matched by hostname, named Brightcove, badged with the Video category, and shown with their parsed query parameters.
- The
accountandvideoids are readable directly, which answers the question that costs the most time on an enterprise site: which of several Brightcove accounts a given page is publishing from. - Filtering the stream by
eventvalue separates impressions from views. Reporting discrepancies between a site team and a content team are usually this distinction rather than lost data. video_engagementbeacons carry the watched range, and reading them in sequence shows how the engagement graph in the Brightcove dashboard was assembled.- Script Tree attributes the player embed to the site's template, a tag manager, or another script.
Brightcove and consent
Analytics consentEvent Watcher checks Brightcove against the analytics consent category.
The consent-relevant moment is earlier than teams expect. video_impression fires when the player renders, not when anyone plays anything, so a page carrying a Brightcove embed reports to Brightcove on load whether or not the video is watched. Gating the play button changes nothing. If the analytics category is denied, the player itself has to be held back, which on editorial sites usually means a placeholder that mounts the player on click.
Common debugging scenarios
- Views reported in Brightcove do not match site analytics. Compare
video_impressionandvideo_viewcounts in the stream. The two systems are often counting different events. - Wrong account or wrong video. Read
accountandvideofrom the beacon and compare against the intended Video Cloud account. - The player renders but nothing reports. No
video_impressionat all points at a blocker or a content security policy rather than a player configuration problem. - Engagement data looks thin. Check whether
video_engagementbeacons withrangevalues are present, or only impressions and views. - Brightcove fires before consent. Filter to Brightcove and read the consent verdict on the impression beacon, which is the first one to appear.