Installed is not the same as working.

Your theme says the tag is there. Your reporting says conversions are down. We load four page types in a real browser and tell you which of your tags actually fired.

No account, nothing to install. Shopify and WooCommerce.

A real report, from a store that agreed to be shown

Brokennorthgate-supply.comGA4 is loading but not firing on your product pages.Observed 12 Sep 2026, 14:02 UTC · cold cache, from Frankfurt

The library was fetched and returned 200. No event ever reached Google. The store's own beacon fired on the same page, so we know the page rendered — this is the tag, not the site.

Coverage by page type
PageGA4MetaKlaviyo
HomeFiringFiringPartial
CollectionFiringFiringUnobservable
ProductBrokenFiringUnobservable
CartFiringPartialUnobservable

One in nine WooCommerce stores has a tag that loads and never fires

We scanned 500 live stores in September, sampled at random. 6.4% of Shopify stores and 11.3% of WooCommerce stores had at least one vendor loading and staying silent on at least one page type.

Read the study and download the data

Broken-tracking rate in the September sample
PlatformBrokenStores
Shopify6.4%320
WooCommerce11.3%180

Three ways tracking fails without anything looking broken

The page still loads. Customers still buy. Nothing errors on screen.

  • Loads, never fires

    The library returns 200. No event reaches the vendor. Totals look plausible because another page still sends.

  • Fires on one page type

    Klaviyo on the homepage and nowhere else. The dashboard is not empty, so nobody opens the theme.

  • Consent never resolves

    The banner sits there. The scanner cannot tell a blocked tag from a tag that was never asked to run.


Then we keep looking, so you do not have to

Checking forty client stores by hand is forty tabs and forty judgements, every morning. Nobody does that twice.

  1. 01

    Scan once

    Four page types, a real browser, a timestamped report. No account and nothing to install.

  2. 02

    Watch the store

    Trace repeats the check on a cadence. A script added, removed or changed is a row, not a feeling.

  3. 03

    Authorize what checkout loads

    Manifest is the inventory and the change record a QSA asks for on pages in PCI scope.