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.