Shopify and GA4: Common Tracking Problems and How to Fix Them
Shopify's built in GA4 integration covers the basics, but it's well documented among analytics professionals that it has significant gaps. If you rely on the native integration alone, you're likely missing checkout data, seeing duplicate purchases, or losing attribution on checkout.shopify.com domains.
The checkout subdomain problem
Shopify's checkout runs on checkout.shopify.com or a custom checkout.yourstore.com subdomain. Without cross domain tracking configuration, GA4 treats the navigation from your main store to the checkout subdomain as a new session, losing the original traffic source attribution.
The fix requires configuring cross domain tracking in GA4, go to Admin → Data Streams → Configure tag settings → Configure your domains, and adding both your main domain and the checkout domain.
This ensures the linker parameter is appended to checkout links and the session continues seamlessly.
Duplicate purchase events on the thank you page
The order confirmation (thank you) page is one of the most visited pages in any store due to email confirmations, social sharing, and users refreshing to confirm their order details.
Shopify's native integration often fires the purchase event on every page load, meaning a user who visits the thank you page three times registers three purchases.
The standard fix is transaction ID deduplication, check if the transaction ID has already been sent in the current session before firing the purchase event.
GA4's native deduplication also helps if you consistently send unique transaction IDs, but the client side deduplication is the more reliable layer.
Enhanced e commerce data quality
Shopify's native GA4 integration often omits item_category from product events, sends item_variant inconsistently, and doesn't include the full items array in begin_checkout events.
These gaps mean you cannot build category level or variant level reports in GA4 without supplementing the native integration.
The recommended approach for stores that need accurate product reporting: use a dedicated GA4 Shopify app (Elevar, Littledata, or equivalent) that correctly implements the full items array with all recommended parameters, or implement a custom GTM-based solution.
Verify whichever you use with a GA4 audit that checks item_category presence, checkout event coverage, and purchase deduplication across the full funnel.
Ready to audit your GA4 property?
Run a full GA4 audit in under 10 minutes. Free to start.
Start Free Audit