Configuring Google Analytics Event Tracking

In this topic you will learn how to configure Google Analytics event tracking in the Players module.

The Players module provides the ability to easily integrate Brightcove Players with Google Analytics. This allows player events and custom dimension data to be sent to a Google Analytics account for reporting purposes. Note that when the integration is configured, only analytics for video events will be passed to Google Analytics.

Configuring Google Analytics

To configure Google Analytics integration, follow these steps:

  1. Open the Players module.
  2. Click the player name you want to configure to open the player properties.
  3. Click Third-Party Analytics > Google Analytics in the left navigation menu.
  4. Check Enable Google Analytics.
  5. Click Sign In to Google Account.
  6. Select the Google account to sign in with and enter your credentials if prompted.
  7. Click Allow to let Brightcove access your Google account.
  8. Use the Select Account dropdown to select the Google account to send tracking data to.
  9. Select the Events for Tracking. See the Events and custom dimensions section below for a description of the events.
  10. Click Save. This will configure the player with the Google Analytics plugin and create any needed custom dimensions in your Google Analytics account.

Make sure to publish the changes to the player.

Events & custom dimensions

Both events and custom dimension data can be passed to Google Analytics.

The following events can be passed.

Basic Events

  • Video Impression - Sent when a video has been loaded into a player and is ready for playback
  • Play Request - Sent when playback is initiated either by the user expressly clicking the play button, or automatically when the platform triggers playback in an auto-play scenario
  • Video Engagement - A user watched a range of seconds of a video's timeline. This event is a heartbeat for tracking video engagement and will likely be sent many times during playback, depending on the user interaction and the length of the video.

Advertising Events

  • Ad Start - Sent when control is handed over to an advertising agent by the playback platform
  • Ad End - Sent when control is handed back from the advertising agent to the playback platform

Advanced Events

  • Player Load - A player session has been initiated by an end-user
  • Error - Sent when fatal errors which disrupt the playback experience are encountered

Custom Dimensions

Custom dimensions allow you to combine Google Analytics data with non-Analytics data. Custom dimensions collect data that Google Analytics doesn't automatically track. The following custom dimensions are available.

  • Video Seconds Viewed - Count of watched seconds (only available if the Video Engagement event was selected)
  • Range - The range of seconds viewed (only available if the Video Engagement event was selected)
  • Video Duration - The duration of the video in seconds (only available if the Video Engagement event was selected)
  • Player ID and Player Name - Player ID and Name
  • Account Name - Brightcove Account ID
  • Session - The session identifier; the session value should be constant for the lifecycle of an experience and sent for all events from that experience
  • Player Version - Brightcove Player version

Universal Analytics events and custom dimensions

Google Analytics 4 is replacing Universal Analytics. On July 1, 2023, standard Universal Analytics properties will stop processing data. See the next section for information about GA4 events and custom dimensions.

Universal Analytics

These are the events that you can track:

  • player_load
  • video_engagement
  • video_impression
  • play_request
  • ad_start
  • ad_end
  • error

There are eight custom dimensions from which you can choose to use in your Google Analytics data. Decide which of the following to use:

  • bcvideo_account
  • bcvideo_platform_version
  • bcvideo_player
  • bcvideo_range
  • bcvideo_session
  • bcvideo_tags
  • bcvideo_video_duration
  • bcvideo_video_seconds_viewed

Create custom dimensions

The steps in this document from Google lead you through the process: Create and edit custom dimensions and metrics.

During the creation of each custom dimension, you will be asked to select a Scope. For these custom dimensions use the value Hit. Also, when you create each custom dimension an index, or sequence, number will be associated with it, as shown in this screenshot:

custom dimension index

You will need to have available the table of created custom dimensions as the index number is needed in the configuration JSON.

When creating the dimensions you can choose a more friendly name. For instance, consider the following:

  • When creating the custom dimension for bcvideo_video_duration you name it simply Duration because you want the friendlier name used in your reports.
  • When created, the index associated with Duration is 7.
  • In your configuration JSON, you use the following assignment:
    "bcvideo_video_duration": "dimension7"
    The index number associates the friendly name with the plugin's internal name.
analytics dimension names index

GA4 events and custom dimensions

Any event name used by the player's analytics_event and analytics-beacon events can be used, but the following have special handling in the GA plugin:

  • ad_end
  • ad_start
  • error
  • play_request
  • player_load
  • video_engagement
  • video_impression
  • video_view

The following are custom dimensions available for use:

  • account
  • platform_version
  • player
  • range
  • seconds_viewed
  • session
  • tags
  • video_duration

Parameters, which you add as custom dimensions in Google Analytics, are associated with event. The following parameters are common to all events:

  • account
  • player
  • session
  • tags
  • version

The video_engagement event includes the five parameters listed above, and also adds:

  • range
  • seconds_viewed
  • video_duration

Create custom dimensions

Note the following:

  • During the creation of each custom dimension, you are asked to select a Scope. For these custom dimensions use the value Event.
  • When creating the dimensions you can choose a more friendly name. For instance, consider the following:
    • When creating the custom dimension for video_duration you name it simply Duration because you want the friendlier name used in your reports.

Use the follow steps to create the custom dimensions in the Google Analytics UI (steps assume you have create your property):

  1. Login to your Google Analytics account.
  2. In the GA page:
    1. Click Admin (gear icon) in the bottom-let of the UI.
    2. In the Property column, click Custom Definitions.
      custom dimensions
  3. Click Create custom dimension.
  4. Create a custom dimension for each parameter listed in the paramsToTrackGA4 array, those being:
    • account
    • platform_version
    • player
    • range
    • seconds_viewed
    • session
    • tags
    • video_duration

    For each parameter in the array, complete the form:

    • Dimension name: Friendly name for your parameter.
    • Scope: This is always Event for Brightcove GA plugin.
    • Description: Add appropriate description.
    • Event parameter: Choose one of the parameters listed just above.
  5. These custom dimensions are now associated with the appropriate event in your Google Analytics reports.

For further information on using the Google Analytics UI, see the following:

Google Analytics Versions

The Players Module supports Google's Universal Analytics and Google Analytics 4 (the "new version") data model. Brightcove recommends using GA4 when integrating with the Players module and Brightcove Players.

Following are high level steps to creating a Google Analytics 4 and a Universal Analytics property within Google Analytics.

Google Analytics 4

  • Create property
  • On property home, under "Start collecting data for your website or app", select Web
  • Fill out the form and click Create Stream
  • A Measurement ID (G-XXXXXXXX) will be presented. You will use that as your GA4 Tracker

Universal Analytics

  • Create property
  • Show advanced options
  • Toggle Create a Universal Analytics property on (toggle switch is on the right)
  • Enter a website URL
  • Make sure Create a Universal Analytics property only is selected
  • Fill out the rest of the form; you will be provided with a new property ID beginning with UA-