> For the complete documentation index, see [llms.txt](https://docs.elevateab.com/elevate-helpcenter/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.elevateab.com/elevate-helpcenter/analyze/tracking/web-pixel.md).

# Web Pixel

How the Elevate A/B Testing web pixel tracks Shopify storefront events, what visitor data it collects and never stores, and how to check it.

The Elevate A/B Testing web pixel is a Shopify app pixel that records what visitors do on your store. It works alongside Shopify server events, which Elevate A/B Testing uses for the main results of every new experiment. For how all the tracking pieces fit together, see [How Elevate A/B Testing Tracks Data](/elevate-helpcenter/analyze/tracking.md).

The web pixel is installed automatically when you set up Elevate A/B Testing, and it is still required. No manual configuration is needed.

***

### What does the web pixel do now that Elevate A/B Testing uses server events?

Every new experiment uses Shopify server events for its main results. Experiments launched before server events were turned on for your store keep using the web pixel. An experiment keeps the tracking method it launched with, and cannot switch later.

|                                                   | Experiments that use server events                                                         | Experiments launched before server events |
| ------------------------------------------------- | ------------------------------------------------------------------------------------------ | ----------------------------------------- |
| **Visitors, page views, add to carts, checkouts** | Shopify server events                                                                      | Web pixel                                 |
| **Orders and revenue**                            | Shopify orders                                                                             | Shopify orders                            |
| **Click tracking, custom events, custom metrics** | Web pixel                                                                                  | Web pixel                                 |
| **If the web pixel is removed**                   | Results continue, but are less accurate and lose clicks, custom events, and custom metrics | No visitor or event data is recorded      |

To see which method an experiment uses, open it. Experiments that use server events show a server icon in the header.

On experiments that use server events, new events usually appear within 2 to 4 minutes, and can take up to about 30 minutes when Shopify's data is delayed. Orders usually appear straight away, though some take 5 to 10 minutes to be matched to a variation. The results page shows data as of its last update. Click **Updated … ago** on the results page to load the latest data.

***

### How It Works

The web pixel runs inside Shopify's **sandboxed environment**, a secure, isolated context separate from your storefront code. This means:

* It can't access or modify your store's DOM (page content)
* It runs independently of your theme and other apps
* It uses Shopify's official Customer Events API to receive events

When a tracked event fires, the pixel sends the event data to Elevate A/B Testing's analytics infrastructure where it's processed and stored for fast querying in your reports.

***

### Bot Filtering

Elevate A/B Testing automatically filters out known bot traffic to keep your experiment data clean, on experiments that use server events and on those that use the web pixel. Traffic from search engine crawlers (Google, Bing, etc.), social media bots, and other automated agents is excluded before it reaches your analytics.

***

### Privacy

During installation, Shopify's permission dialog may show access to customer data such as email addresses and phone numbers. This is because Shopify bundles these permissions together within its Customer Events framework. Apps can't selectively opt out of individual data points.

**What Elevate A/B Testing actually collects:**

* Anonymous behavioral data only: page views, cart actions, checkouts, purchases
* Anonymous visitor IDs (randomly generated UUIDs, not tied to any personal information)
* Device and traffic metadata for segmentation

**What Elevate A/B Testing does not collect or store:**

* Email addresses
* Phone numbers
* Physical addresses
* Names or any other personally identifiable information (PII)

The web pixel runs in Shopify's **strict** sandbox mode, which is the most restrictive privacy setting available. It does not declare a customer privacy purpose (analytics, marketing, or preferences), so Shopify runs it whether or not the visitor has given cookie consent.

By default, Elevate A/B Testing stores the anonymous visitor ID before a visitor makes a cookie consent choice. To hold the visitor and session IDs back until the visitor accepts analytics in your consent banner, turn on **Require Consent Before Storing Visitor IDs**. See [Experiment and Store Settings](/elevate-helpcenter/advanced-settings/experiment-and-store-settings.md) for what changes when it is on, and [What Cookies Does Elevate A/B Testing Set?](/elevate-helpcenter/analyze/tracking/cookies-and-consent.md) for the cookies and storage keys Elevate A/B Testing uses.

***

### Automatic Setup

The web pixel is deployed automatically when Elevate A/B Testing is installed on your store. It's managed entirely through Shopify's app extensions system: there's no code to add to your theme, no scripts to embed, and nothing to configure.

If you ever need to verify that the pixel is active, you can check under **Settings → Customer Events** in your Shopify admin. You should see the Elevate A/B Testing web pixel listed there.

***

### Troubleshooting

**No data appearing in my experiment reports** Verify the web pixel is active under **Settings → Customer Events** in your Shopify admin. If it's not listed, try reinstalling the Elevate A/B Testing app. Also check that the experiment is in a Running status. The pixel only captures data for active experiments. On a newly launched experiment that uses server events, allow a few minutes, then click **Updated … ago** on the results page to load the latest data.

**Data looks incomplete or numbers seem low** The pixel filters out bot traffic automatically. If your store gets significant bot traffic (common for stores with high ad spend), you may see lower numbers in Elevate A/B Testing than in other analytics tools that don't filter bots. This is expected: the filtered data is more accurate for experiment analysis.

**Discrepancies between Elevate A/B Testing and Shopify/Google Analytics** Some variance between analytics platforms is normal due to differences in how events are captured, how sessions are defined, and how bots are filtered. For a deeper explanation, see [Analytics Discrepancies](/elevate-helpcenter/analyze/tracking/analytics-discrepancies.md).
