Understanding Analytics Tracking For Embedded Media And Webinar Forms
How Wistia Counts Analytics for Embedded Media and Webinar Forms
When you embed a Wistia player or a webinar registration form on your own page, the Wistia player is what records analytics — not your server, and not the page itself. Every signal is measured client-side and sent back to Wistia as the visitor loads and interacts with your embed. That's why an implementation detail on your page (how you inject the embed, whether the visitor blocks tracking, whether you're logged in) can change what shows up in your analytics even when the page is clearly getting traffic.
This guide explains what each analytics signal actually counts, when it updates, and the implementation factors that can suppress data so you can debug an embed before it becomes a support ticket.
What each signal counts
These definitions are what Wistia measures on an embedded player. They match the numbers you see on a media's Analytics → Embed tab.
| Signal | What it counts |
|---|---|
| Visits | The number of times the media was loaded on the page, including repeat loads from the same viewer. A visit is recorded when the player initializes — a play is not required. |
| Unique visitors | The number of distinct individuals who loaded your content at least once in the selected timeframe. |
| Plays | The number of times the media was played, including replays. A play is counted from the initial play (the first frame begins to play), not from a hover or a load. |
| Play rate | Of the people who loaded the media on a page, the percentage who played it. Play rate is computed from unique plays and unique loads, so it can differ from total plays. |
| Heatmaps | A per-view recording of exactly what one viewer watched, skipped, and rewatched. A heatmap only exists for a play that Wistia successfully tracked from the Wistia player — see the suppression factors below. |
| Time played / Engagement | Total and average time viewers spent watching or listening within the timeframe. |
| Form submissions | For videos, the number of Wistia Form (in-video lead capture) submissions. |
A visit without a play is normal and expected: it means the player loaded but the visitor didn't press play. A visit and a play but no heatmap almost always points to a tracking-suppression factor (below), not a bug.
When analytics update
Plays are tracked in real time. If a tracked play doesn't appear on the analytics page immediately, wait a minute and refresh — there is a short processing delay, not a batch window. If you're verifying a fix, that means you can play the embed and confirm the result within a minute or two.
For live/webinar registration analytics, impressions and registrations also update on the Registration analytics page in near real time.
Why plays or heatmaps can be missing even when the page has traffic
If your page is getting visits but plays or heatmaps are missing, one of these is almost always the cause. Rule them out in this order:
- You're logged in to Wistia. Wistia excludes plays from logged-in account users (Owner, Manager, Standard User) from audience analytics. Test in a logged-out session — an incognito/private window is the reliable way, since it starts with no Wistia session, no cached cookies, and third-party extensions disabled by default.
- Your own IP is filtered. If you've set up IP filtering on the account, your own plays are excluded even in incognito. Check that your address isn't on the filter list before concluding tracking is broken.
- The visitor blocks tracking. The player relies on client-side tracking calls to record play events. Ad blockers, tracking-blockers, and privacy-hardened browsers (e.g. Brave, Epic) can block those calls, so the play is never recorded. A VPN doesn't block the play but can misattribute the viewer's location.
doNotTrackis set on the embed. The embed accepts adoNotTrackoption. When it's on, the player deliberately reports nothing — no visits, plays, or heatmaps. Confirm your embed config doesn't set it.- The play didn't come from the Wistia player. Heatmaps are only generated for plays initiated from the Wistia player. Plays that happen off-platform (for example, podcast episodes played in Apple Podcasts or Spotify) count differently and never produce a heatmap.
If you've ruled all of these out and a tracked play still doesn't appear, check status.wistia.com for an analytics incident before opening a ticket.
Embedded webinar registration forms
An embedded webinar registration form reports its own analytics, separate from media plays. On the webinar's Analytics → Registration tab you'll see:
- Impressions — a form-load count: the number of times the registration form rendered. It is not an interaction/action metric.
- Registrations — the number of visitors who submitted the form.
- Registration rate — registrations divided by impressions.
Two behaviors developers most often ask about:
- When an impression fires. An impression is recorded when the registration form itself renders, not when the host page loads. For a plain inline embed those happen at effectively the same moment. But if you defer the form — rendering it inside a popup, modal, tab, or any container that mounts later — the impression fires when the form actually renders, not on initial page load. A form that never renders (e.g. a popup the visitor never opens) records no impression even though the page loaded. So if impressions look low, confirm the form is actually rendering when you expect it to.
- Real-time updates. Impressions and registrations update on the Registration analytics page in near real time, the same as media plays.
An embedded registration form behaves exactly like the Wistia-hosted form: it fires connected integrations, sends confirmation emails, and populates registrations in Wistia. If you register a test lead through the embed and it doesn't appear, check that the form actually rendered and submitted before assuming a tracking bug.
Verifying your embed is tracking
To confirm an embed is recording analytics as expected:
- Open an incognito/private window (no Wistia session, no cached cookies, extensions off).
- Make sure your own IP isn't on the account's IP filter list.
- Load the page with the embed and play the media (a few seconds is enough), or view and submit the registration form.
- Return to the media's Analytics → Embed tab (or the webinar's Registration tab) and refresh after ~1 minute.
If the play/impression appears, your embed is tracking correctly. If it doesn't — and status.wistia.com is clear — reach out to Support with the page URL and the steps you tried.
Reading the numbers. This guide covers what and why Wistia counts, aimed at debugging an embed. For a walkthrough of the analytics dashboards themselves, see the Help Center: Media Embed Analytics, Account Overview Analytics, Analytics Troubleshooting, and Webinar Registration Analytics.