# Read your widget analytics

See how often your widgets are viewed, clicked and played, on which pages and placements, and how each review performs, for any period.

Widget analytics shows how visitors see and use your widgets: views, clicks and video plays, broken down by widget, page, placement, audience and review. It's on Pro, Premium and Business, and everyone on the project can open it, Viewers included. If a widget is on your site and its views stay at zero, see [When a view isn't counted](#when-a-view-isnt-counted).

1. **Open widget analytics**

   Click **Overview** under **Analyze** in the project's sidebar, then **Open** on the **Widget Performance** card.

   To go straight to one widget, open the **Widgets** page under **Share**, open a published widget's menu and choose **Analytics**.

2. **Choose the period and what to include**

   - The period: **7 days**, **30 days** (the default), **90 days** or **All time**. Dates are in UTC and include today; the dates covered show at the end of the toolbar.
   - **Widget**: **All widgets**, or one widget. The list shows each widget's views in the period.
   - **Add filter**: narrow to one **Domain**, **Page**, **Placement**, **Embed method**, **Country**, **Device**, **UTM source**, **UTM medium**, **Campaign**, **UTM content** or **Referring site**. It lists the values seen in the period, and for most you can type another.

   Each filter shows as a chip: click its X to remove it, or **Clear all**. Your choices are part of the page's address, so you can bookmark the view or send it to a teammate.

3. **Read the overview**

   The **Overview** tab opens with four figures, each with its change against the same length of time just before (or **No baseline** when there's nothing to compare):

   - **Widget views**: how many times your widgets were seen.
   - **Engagement rate**: the share of measured views followed by a review click, a CTA click or a video play.
   - **Review clicks**: clicks on a review, its link, **Read more** or a video, with the rate per 100 views.
   - **CTA clicks**: clicks on a widget's call-to-action button, with the rate per 100 views.

   Below them:

   - A chart of views and interactions by day. Switch between **Activity** and **Click rate**.
   - **Video engagement**: **Plays**, **Completions**, **Completion rate** and **Not completed** for videos played inside your widgets.
   - **Top widgets**, **Top pages** and **Referring sites**, each with **View all**.
   - **Attributed outcomes**: conversions credited to your widgets, on Premium and Business. Pick the credit rule under **Attribution**: **Last touch**, **First touch** or **Fractional**.

4. **Break it down**

   Use the tabs to compare in a table:

   - **Widgets**: every widget side by side.
   - **Placements**: your sites, pages and named placements. Change the level with **Group by**: **Domain**, **Page** or **Placement**.
   - **Audience**: visitors by **Country**, **Device**, **Referring site**, **Embed method** or UTM value, chosen with **Group by**.
   - **Content**: each review on its own. Under **Show**, choose **All reviews** or **Video reviews**.

   Click a column heading to sort by it, and a row to explore it: a widget filters the whole report to that widget, and a page shows its placements. Tables show 25 rows a page.

## How the numbers are counted

- **A widget view** counts when at least half of the widget has been on screen for one continuous second, in a browser tab the visitor is looking at. A widget taller than the window counts once it has covered half of the window that long. A widget loaded below the fold that nobody scrolls to isn't counted. Each time the widget loads on a page, it counts once.
- **Review views**, on the **Content** tab, apply the same rule to each review on its own.
- **Clicks and plays** count every time, so a visitor who clicks three reviews adds three, and rates can pass 100 per 100 views. **Engagement rate** counts each view once, when a click or play follows it within 24 hours.
- **Sessions** are browsing sessions, not people. They're recorded on Premium and Business, for visitors who are measured. On other plans the **Sessions** column shows a dash, and **Sessions not measured** shows beside **How these numbers are measured**.
- **Completion rate** is completed plays divided by plays; replays count.
- **Not collected** means that detail wasn't available for those views, such as the page inside a plain iframe. **No UTM supplied** means the page had no campaign tag in its address.
- A visitor's privacy choices, such as Do Not Track, can leave out details like their session, campaign, referring site and individual review views. Their widget views and clicks still count.

Today's activity appears as it comes in, with no daily wait. The last day or so can still change as late clicks and completed plays arrive. If a widget was seen and its views didn't move, see [When a view isn't counted](#when-a-view-isnt-counted).

Click **How these numbers are measured**, below the four figures, for the measured-view and session counts behind the current report.

## When a view isn't counted

A view shows in the report as soon as it's counted. If a widget is on your site and the report is empty, or lower than you expect, check these causes, most likely first. If the widget doesn't appear on your site at all, see [Widget not showing on your website](/help/troubleshooting/widget-not-showing).

### The report says "Your next view starts here"

That's the **Overview** tab when nothing was counted in the period: **Your next view starts here**, with "Publish and embed a widget to see its reach and engagement." With a widget or a filter chosen it reads **No activity for these filters**, and an empty table on the other tabs reads **No widget activity in this selection**.

1. Choose **All time** and remove every filter.
2. Open the page on your site that has the widget, scroll until at least half of it is on screen and wait a couple of seconds. Your own visit counts like anyone else's.
3. Reload the report. If it's still empty, one of the causes below applies.

**The widget isn't published.** Only a published widget is counted: a draft or an archived one shows nothing on your site and records nothing. On the **Widgets** page, look for it under **Drafts** or **Archived**, then publish it: see [Make sure it's published](/help/troubleshooting/widget-not-showing#make-sure-its-published). Views from while it was published stay in the report.

**You opened it in the builder.** The builder's canvas and its **Preview** window aren't the code on your site, so nothing you do there is counted. A view comes only from a page that holds the widget's embed code.

**Your plan doesn't include widget analytics.** The report is on Pro, Premium and Business. On another plan, the page reads **Widget analytics is not enabled on this plan**. Your widgets still count views, clicks and video plays, so the report has them when you upgrade, [without their details](#the-view-counts-but-its-details-say-not-collected).

**An experiment is running on the widget.** A Proof Impact experiment, on Business, hides the widget from the visitors in its no-widget group, so they add no views until it ends. See [Run a Proof Impact experiment with a no-widget group](/help/insights/run-a-proof-impact-experiment).

### A view counts only with half the widget on screen for a second

A view needs at least half of the widget on screen for one continuous second, in a tab the visitor is looking at. A widget that is taller than the visitor's window, such as a long grid on a phone, can never have half of itself on screen at once, so it counts once it covers half of the window instead. A widget the visitor never scrolls down to, or scrolls past in under a second, adds nothing, and neither does a page left open in a background tab. Expect fewer views than the page has visitors, and move the widget higher to raise them.

A **Floating Proof** widget counts once its first toast or bar has been on screen that long, so its page rules, a dismissal and the wait before the first toast all hold views back: see [If some visitors don't see it](/help/troubleshooting/widget-not-showing#if-some-visitors-dont-see-it).

**A long widget in a tall plain iframe.** A [plain iframe](#the-widget-is-in-an-iframe) can't see the visitor's window, so it goes by its own frame: a widget that is taller than its frame counts once it fills half of the frame. A frame that is itself more than twice as tall as the visitor's screen never has half of itself on screen, so a widget that fills it adds no views there. It mostly happens on phones, to a frame given a large **Height (px)** so that a long grid or list shows without scrolling. To check, set **Group by** to **Device** on the **Audience** tab: **Mobile** is missing or far too low.

To fix it, tick **Automatic sizing and Proof Impact** and paste the code with its helper script, or use the **Script** code: both count a long widget once it covers half of the window. Or lower **Height (px)** until the frame fits on a phone's screen, and the widget scrolls inside it. See [Script or iframe](/help/display/embed-a-widget-on-any-website#script-or-iframe).

### The Widgets page says "No recent views"

On the **Widgets** page, a published widget reads **Live** when it has views in the last 30 days, and **No recent views** when it has none. The status counts today's views, so a widget you just put on your site reads **Live** once it has been seen. The views, CTR and CTA clicks beside it are rebuilt once a day, so they can be up to a day behind. The report isn't delayed: choose **Analytics** in the widget's menu to see today's views.

### The view counts, but its details say "Not collected"

Some views add to **Widget views** and to little else. **Country**, **Device**, **Placement**, the UTM values and **Referring site** read **Not collected**, and they have no session, no review views and no part in **Engagement rate**. Click **How these numbers are measured** to see how many of your views "support engagement measurement". The rest are views like these:

- **A visitor who isn't measured**, with the **Script** code. By default that's one whose browser sends a Global Privacy Control or Do Not Track signal: see [Privacy](/help/insights/proof-impact#privacy).
- **A visit that looks automated**, such as a crawler or a headless browser.
- **A view from before your plan had widget analytics**, or from a project while it was [read-only](/help/troubleshooting/project-is-read-only).
- **A view from a site you haven't listed**, when **Browser origin policy** is **Allow listed origins only** in the **Developer** tab of your project settings.
- **A view in a plain iframe**, which keeps its country and device but has no page: see the next section.

None of these means the code on your site is wrong.

### The widget is in an iframe

With the **Iframe / Embed URL** code, what's counted depends on **Automatic sizing and Proof Impact**:

- **Not ticked (a plain iframe):** views, clicks and video plays are counted with the visitor's country and device, and nothing about the page. **Domain**, **Page**, **Placement**, the UTM values and **Referring site** read **Not collected**, and there are no sessions, no review views and no part in **Engagement rate**.
- **Ticked (the iframe with its helper script):** it reports what the **Script** code reports.

Either way, a visitor whose browser sends a privacy signal you honor isn't counted at all, where the **Script** code still counts the view. The iframe with its helper script also leaves out a visitor who declined on your site. A plain iframe can't read your page, so it never learns of a decline and still counts that visitor's views, with no page and no visitor. And when **Consent requirement** is **Require explicit consent**, a plain iframe counts nobody: it can't learn that a visitor agreed.

To see which you have, set **Group by** to **Embed method** on the **Audience** tab: **Script**, **Iframe with helper** or **Plain iframe**. Views under **Plain iframe** although you ticked the box mean the `<script>` after the `<iframe>` isn't running on one of your pages: paste both parts there. For the most detail, use the **Script** code: see [Script or iframe](/help/display/embed-a-widget-on-any-website#script-or-iframe).

If none of these fits, [contact us](/contact) with the page's address and the widget's name.

## What happens next

- To tell apart two spots where the same widget appears, give each one a **Placement name** when you copy the embed code: see [Embed a widget on any website](/help/display/embed-a-widget-on-any-website). A plain iframe embed can't report its page, campaign or session; use the script embed, or the iframe with its helper script.
- On Business, the **Experiments** tab tests whether a widget changes conversions: see [Run a Proof Impact experiment with a no-widget group](/help/insights/run-a-proof-impact-experiment).
- For conversions credited to each widget, see [Read the Proof Impact report](/help/insights/read-the-proof-impact-report).
- To send the same widget events to your own Google Analytics, see [Send widget events to Google Analytics and Tag Manager](/help/integrations/google-analytics-and-google-tag-manager).
- For your video testimonials across every place they play, see [Read your video analytics](/help/insights/video-analytics).
