/Journal

Shopify against GA4: which gap is normal and which one is a bug

GuideAnalytics2026.11.04
Freek Kampen
Freek KampenCo-founder, New North Digital

Shopify counts orders, GA4 counts what the browser managed to send. How to compare the two fairly, and the common setup errors behind the rest of the gap.

Two systems, two jobs

Shopify is your till. An order exists because it was created on Shopify's servers, so the order count is simply correct. GA4 is a camera in the shop. It only sees what the visitor's browser manages to send, after the cookie banner, the ad blocker and the page load have all had their say.

So GA4 usually reports fewer purchases than Shopify. The question is rarely whether there's a gap. It's whether the gap is the size it should be.

Compare like with like first

Many gaps disappear once both sides measure the same thing.

  • Revenue. Shopify's total sales add tax, duties, fees and shipping on top of net sales. Google's own spec says the GA4 purchase value should leave tax and shipping out. So compare GA4 against net sales, not total sales.
  • Refunds. Shopify subtracts them. GA4 only does if you send refund events.
  • Orders that never went through the online checkout. Converted draft orders sit in Shopify's sales reports. GA4 never had a chance to see them.
  • Time zone. If the property and the store sit in different time zones, a late-evening order lands on different days.
  • Sessions after September 2026. Shopify now ends a session after 30 minutes of inactivity and filters known bots. Session counts and conversion rates shifted around that date without any real change in traffic.

The common errors behind the rest

What's left after a fair comparison is usually a setup problem. These are the common ones.

  1. Purchases counted twice. The Google & YouTube app sends a purchase, and so does a custom pixel or old theme code. GA4 then shows more revenue than it should, which hides the real loss elsewhere.
  2. Tracking that quietly stopped. checkout.liquid no longer works for the checkout and thank-you pages, and script tags on the Order status page stopped running: for Plus stores on 28 August 2025, for every other store on 26 August 2026. A store that relied on them may have lost its purchase tracking without anyone noticing.
  3. Consent that never reaches Shopify. A third-party cookie banner has to pass consent through Shopify's Customer Privacy API, with the same regions in both tools. Where the banner is active, Shopify only collects analytics after consent, so a broken connection distorts Shopify's own sessions and conversion rate too.
  4. A thank-you page that doesn't load. The GA4 purchase fires from checkout_completed on the thank-you page or the first upsell page. If that page doesn't load, there's no purchase event.
  5. Missing or wrong UTMs. Revenue is there but lands on the wrong channel, so the channel reports in both tools disagree.

Which number to use for what

Use Shopify for revenue, order counts, refunds and anything that goes to your accountant. Use GA4 for channels, campaigns and behaviour on the site. Judge GA4 on trends: if both tools move in the same direction, the measurement is doing its job.

When the gap keeps growing or jumps overnight, something changed in the setup. That's worth a look before you change a budget based on it. Server-side tagging can narrow the gap further, but fix the points above first.

For the full list of differences between the two platforms, see the GA4 vs Shopify analytics article on newmetrics.io.

Want to talk about this?

Do your numbers add up?

One call is usually enough to see where it breaks.

Takes 1 minute