Skip to content

GA4. Video engagement events. Measure product demo completion.

What this means for your store

Shoppers who finish a product demo often convert at higher rates. GA4 ships video_start, video_progress (25/50/75%), and video_complete. Enhanced measurement auto-tracks embedded YouTube. Custom players - Vimeo, Wistia, HTML5 on a marketplace PDP - need manual hooks with video_title and video_percent.

Scenario on a real storefront

KitchenNest lists third-party cookware on a marketplace PDP. A 90-second non-stick demo sits above the fold. Wire the HTML5 player and fire progress at quartiles:

const VIDEO_TITLE = 'Ceramic pan - heat test demo';

player.addEventListener('play', () => {
  gtag('event', 'video_start', {
    video_title: VIDEO_TITLE,
    video_provider: 'html5',
  });
});

player.addEventListener('timeupdate', () => {
  const pct = Math.floor((player.currentTime / player.duration) * 100);
  [25, 50, 75].forEach((mark) => {
    if (pct >= mark && !fired[mark]) {
      fired[mark] = true;
      gtag('event', 'video_progress', {
        video_title: VIDEO_TITLE,
        video_percent: mark,
      });
    }
  });
});

player.addEventListener('ended', () => {
  gtag('event', 'video_complete', { video_title: VIDEO_TITLE });
});

What to do next

  • Compare video_complete rate on PDPs with vs without demo video before the next creative brief.
  • Segment shoppers who reach video_progress 75% and check add_to_cart lift against non-watchers.
  • Turn off enhanced measurement video when custom events already fire - duplicates inflate counts.

Bottom line

Video depth signals purchase intent on PDPs. Instrument custom players manually. Dedupe against enhanced measurement. Read completion alongside cart events.