The GA4 Problem:
Why Shopify Founders Are Making Decisions on Bad Data

Shopify says one thing. GA4 says another. You're left splitting the difference and hoping for the best. Here's why the numbers don't match and what to actually trust.

DaitaFixDaitaFix Team
March 2025 6 min read
Analytics

The Moment Every Shopify Founder Recognises

It usually happens on a Monday morning. You open Shopify and see £12,400 in weekend revenue. Then you open GA4 to check which channels drove it. GA4 says you made £9,800. That's a £2,600 gap. Not a rounding error. A genuine disagreement between two platforms that are supposedly tracking the same store.

So which one is right? You don't know. You can't know - at least not without digging into technical configurations that most founders don't have the time or expertise to troubleshoot. So you do what most operators do: you pick the number that feels right, build your report around it, and move on.

That habit - making decisions based on data you can't fully trust - is one of the most expensive problems in ecommerce. And it's far more common than the industry admits.

On average, GA4 fails to capture around 20% of Shopify transactions through standard client-side tracking setups. (Littledata / Bytes.co, 2025) For a store doing £50K a month, that's £10,000 in revenue that GA4 doesn't see. That's not a minor discrepancy. It's a structural blind spot that distorts every marketing decision built on top of it.

Why the Numbers Don't Match

The discrepancy between Shopify and GA4 isn't a bug. It's a consequence of how each platform collects data. Understanding the difference is the first step toward making better decisions despite it.

They Track Data in Fundamentally Different Ways

Shopify records transactions server-side. When a customer completes checkout, Shopify logs the order directly in its own database. It doesn't depend on the customer's browser, their privacy settings, or whether a script loaded successfully. The sale happened; Shopify records it.

GA4 works differently. It relies on JavaScript that runs in the customer's browser. If that script gets blocked by an ad blocker, prevented by a privacy-focused browser like Brave or Safari, or interrupted because the customer closes the tab before the thank-you page loads, GA4 never sees the transaction. The sale happened. GA4 just doesn't know about it. Current estimates suggest that 15-30% of users now use tools that block analytics scripts. (GroPulse / Content Powered, 2025)

Consent Banners Create Legal Blind Spots

If you sell to customers in the UK or EU, GDPR requires you to offer tracking opt-outs. When a customer clicks "Decline" on your cookie consent banner, GA4 is legally prohibited from recording that session or any subsequent purchase. Shopify still records the sale - because it's a first-party transaction, not behavioural tracking. The result is a growing pool of real customers who buy real products but are completely invisible to your analytics. (Littledata, 2025)

Third-Party Checkouts Break the Chain

If you accept PayPal, Klarna, or other buy-now-pay-later options, GA4's tracking can break entirely. These payment methods redirect the customer away from your Shopify checkout and back again. That redirect often breaks the tracking chain, which means GA4 either misses the transaction completely or misattributes it to a new session. The sale gets recorded in Shopify. In GA4, it either vanishes or gets credited to the wrong source. (Littledata / Analytico Digital, 2025)

Attribution Models Tell Different Stories

Even when both platforms do record the same transaction, they often disagree about where it came from. GA4 uses a data-driven attribution model that distributes credit across multiple touchpoints. Shopify uses last-click attribution by default. Your ad platform uses its own model, which naturally favours its own channel.

This means the same sale can be attributed to Facebook by Meta, to organic search by GA4, and to a direct visit by Shopify. Three platforms. Three different stories about why the customer bought. None of them are wrong, exactly. But none of them are complete, either. And if you're making channel allocation decisions based on any one of them alone, you're working with a partial picture.

Time Zones, Currencies, and Silent Misconfigurations

Beyond the structural issues, a series of quieter misconfigurations compound the problem. GA4 defaults to UTC; Shopify uses your local time zone. Sales that happen near midnight end up on different days in each platform. GA4 converts currencies using previous-day exchange rates, while Shopify uses the rate at the time of purchase. Duplicate tracking scripts - common when merchants install both the Google & YouTube app and a separate GTM setup - can double-count or conflict. And if the GA4 app embed isn't toggled on in your Shopify theme editor, no data flows at all. (Analytico Digital / GroPulse, 2025)

The Real Cost of Bad Data

A 10-20% data gap might sound like a technical nuisance. In practice, it's a decision-making crisis.

Consider what happens when GA4 undercounts your revenue by 20%. Your reported ROAS drops. A campaign that's actually returning 4x looks like it's returning 3.2x. If you're using ROAS thresholds to decide what to scale and what to kill, you might cut a profitable campaign because GA4 didn't see a fifth of the sales it drove.

The same logic applies to channel attribution. If GA4 misattributes PayPal checkout transactions, your organic and direct channels look stronger than they are, and your paid channels look weaker. You reallocate budget accordingly - and inadvertently starve the channels that are actually driving growth.

One Shopify merchant on the Shopify Community forum described finding that GA4 recorded only 54 sales of a product that Shopify showed had sold 348 units in the same period. That's not a discrepancy. That's an 84% data loss. (Shopify Community, January 2025) Imagine building a marketing strategy on numbers that miss five out of every six sales.

The uncomfortable truth is that most Shopify founders are making some version of this mistake every week. Not at that extreme scale, but enough to distort the decisions that determine which campaigns run, which products get promoted, and where the budget goes next.

What to Actually Trust

The answer isn't to abandon GA4. Despite its tracking limitations, GA4 does things Shopify can't. It tracks the full browsing journey, shows you how visitors navigate your site, measures scroll depth and engagement, and provides multi-touch attribution across channels. That behavioural data is genuinely valuable.

The answer is to stop treating either platform as a single source of truth and start understanding what each one is good at:

Trust Shopify for revenue and transaction data. Shopify's server-side tracking means it captures virtually every completed order. When the numbers disagree, Shopify's revenue figure is almost always closer to reality. Use it as your financial source of truth.

Trust GA4 for behavioural patterns and traffic quality. GA4 is excellent at showing you how visitors interact with your site: where they land, how far they scroll, what they click, and where they drop off. Use it for journey analysis, not revenue reporting.

Trust neither for attribution in isolation. Attribution is the hardest problem in ecommerce analytics. Every platform has a model that serves its own interests. The only way to get a reliable picture is to triangulate - comparing what GA4 says, what your ad platforms say, and what Shopify's order data shows, then looking for patterns across all three.

Treat discrepancies as diagnostic signals, not problems to ignore. If your GA4 revenue is consistently 25% below Shopify, that tells you something specific about your tracking setup. If the gap widens after you add a new payment method, that's a clue. The discrepancy itself is information - but only if you're paying attention to it.

Five Things You Can Fix This Week

You can't eliminate the GA4-Shopify gap entirely. But you can narrow it significantly and, more importantly, stop making decisions on the wrong numbers.

1. Benchmark your gap.

Compare the last 30 days of Shopify total sales against GA4 total revenue. What's the percentage difference? A 10-12% gap is considered normal for standard setups. If yours is above 20%, you likely have a configuration problem worth investigating.

2. Check for duplicate tracking scripts.

If you're running both the Google & YouTube app and a separate Google Tag Manager container with GA4 tags, you may be double-counting sessions or creating script conflicts. Pick one method and disable the other.

3. Align your time zones.

GA4 defaults to UTC. Shopify uses your store's local time zone. If these don't match, sales around midnight get recorded on different days, creating phantom discrepancies in daily reports. Go to GA4 Property Settings and match it to your Shopify time zone.

4. Verify your app embed is active.

If you use a tracking app, check that the App Embed toggle is switched on in your Shopify Theme Editor. If it's off, no data flows to GA4 at all - and you might not notice for weeks.

5. Stop using GA4 revenue as your ROAS denominator.

If you know GA4 is undercounting revenue by 15-20%, every ROAS calculation built on GA4 revenue is deflated by the same margin. Use Shopify's revenue data for ROAS calculations and reserve GA4 for behavioural analysis and traffic patterns. This single change can prevent you from prematurely killing campaigns that are actually profitable.

The Bigger Problem - And the Real Solution

Fixing individual configuration issues helps. But it doesn't solve the fundamental problem: you're running your business across multiple disconnected platforms, each with its own tracking model, its own blind spots, and its own version of the truth. Shopify knows about revenue. GA4 knows about behaviour. Your ad platforms know about clicks. None of them talk to each other in a way that gives you a complete, trustworthy picture.

The operators who solve this don't do it by perfecting GA4 setup. They do it by building a unified data layer - a single view that connects store data, behavioural data, and advertising data so discrepancies are surfaced automatically and decisions are based on the most reliable signal for each question.

That's the approach we've built into DaitaFix. Instead of forcing you to choose between Shopify's numbers and GA4's numbers, we connect both - alongside your ad platform data - into one view that uses the right data source for each metric. Revenue from Shopify. Behaviour from GA4. Attribution triangulated across all sources. No more guessing which number to believe.

Because the problem was never that you had bad tools. The problem was that your tools couldn't see each other.

Related Articles

Analytics

ChatGPT Is Stealing Your Google Traffic And You're Not Measuring It

Analytics

Your Dashboard Isn't the Problem Your Decisions Are

Sources & Further Reading

Ready to Move Beyond Dashboards?

See how DaitaFix connects your data and delivers actionable insights - not just more charts.