Shopify · GA4 · purchase tracking
Shopify's relationship with GA4 tracking has been unstable since the checkout extensibility migration. If your purchase events stopped working in 2024 or your numbers don't match your Shopify orders — you're not alone. Here are the specific causes and what fixing each one actually involves.
Tell me your Shopify plan, GA4 setup, and what you're seeing. I'll diagnose whether it's a dataLayer issue, a GTM trigger problem, or a checkout extensibility break — and tell you the fix.
Get a free Shopify audit →Shopify specialist · 4+ years · 50+ clients
Before 2024, most Shopify GA4 setups fired purchase events on the /thank_you page trigger in GTM. Shopify's checkout extensibility migration restricted access to the checkout and order confirmation pages for non-Plus merchants. If your tracking broke sometime in 2024, this is almost certainly why.
GTM depends on Shopify pushing order data (revenue, product IDs, quantity) into the dataLayer on the confirmation page. Many Shopify implementations — especially those migrated from a plugin or built manually — have gaps in the dataLayer push. GTM receives the page view but no purchase data, so the purchase event fires with zero revenue.
GA4's e-commerce reporting requires item-scoped parameters: item_id, item_name, price, quantity, item_category. Without these, your GA4 purchase events register revenue correctly but your product performance reports are completely empty. You can't see which products drive revenue or where the funnel drops off.
Shopify theme updates frequently overwrite customisations to theme.liquid — including the GTM container snippet. If tracking suddenly stopped after a theme update, your GTM snippet was likely removed from the site header. GA4 receives no events at all from that point forward.
Shopify's built-in GA4 integration (via Google & YouTube channel) fires purchase events automatically. If you also have a GTM-based purchase tag, both fire — and GA4 deduplicates using transaction_id. The result looks like missing conversions, but it's actually GA4 correctly discarding what it sees as duplicate orders.
GA4 e-commerce requires the currency parameter on every purchase event. Unlike Universal Analytics, it's mandatory. If your currency is missing or mismatched with your GA4 property settings, revenue shows as $0 in all e-commerce reports — even when events fire correctly.
Most Shopify GA4 setups have more than one issue. Tell me what you're seeing and I'll diagnose it — free, in writing, within 24 hours.
Get a free Shopify audit