Skip to main content

Why is Shopify funnel broken and how GA4 can help you fix it

Shopify helps thousands of online stores' managers with built-in reports that feel really simple and easy-to-use, especially when compared to more advanced analytics platforms like GA4 (Google Analytics 4).

But here's the thing: if you're using Shopify’s default funnel numbers to understand how people are moving through your store and making purchases, you're looking at the wrong picture.

Let’s talk about why that is, and how to fix it using GA4 and Littledata.

The temptation of simplicity: why Shopify reports feel right

If you've been around since the days of Universal Analytics, Shopify's funnel report may feel familiar and easy to digest. There's a comforting clarity to it: Sessions → Added to cart → Reached checkout → Completed checkout. You look at it with a "Yes, this makes sense" facial expression.

But the simplicity can be deceptive. Shopify doesn't say are these numbers based on users? Sessions? Events?

Let's go step by step:

"Sessions" is obviously sessions (we think).

But what about "Added to cart"? Is that the number of users who added to cart, the number of sessions in which a product has been added to cart, or the total number of add to cart events?

The same confusion applies to “Reached checkout” and “Completed checkout”. There’s no way to tell the data scope, which is critical for drawing the right conclusions. And let’s not even get into calculating session and user conversion rates across returning customers and longer timeframes. It's a mess.

Check out Shopify's documentation on conversion tracking and you’ll quickly notice a lack of transparency in how their funnel steps are counted.

Enter GA4: a more honest view of the customer journey

Unlike Shopify, GA4 was built as an analytics-first platform. It offers a far more nuanced view of your customer journey by letting you explore funnel data by events, sessions, or users.

warning

While GA4 funnel explorations are limited to user-scoped metrics only, we can surface event and session scope in funnel-like table reports.

That flexibility is what makes GA4 a more trustworthy data source. Let’s break down the three GA4 funnel numbers and what clarity each brings. If you're new to creating these reports, check this guide on GA4 Explorations to learn how.

1. Event-based funnel: zooming in on actions

The event-based funnel in GA4 is exactly what it sounds like. It shows how many times an event occurred, regardless of how many sessions or users triggered it.

Please note that we're looking at the exact same webshop and timeframe as the csreenshot from Shopify above - see how big of a difference does scope-change make?

This view helps you answer:

  • How many total add_to_cart events happened?

  • How many times a begin_checkout event was fired?

  • How many purchases were made, regardless of who made them?

But there’s a caveat. If one user adds 10 items to their cart in a single session, that’s counted as 10 events. If a sinister bot attack was undertaken to check your inventory, the events are surfaced as well. So while this shows raw behavioral data, it may overstate the volume of engagement if you don’t understand the context.

Explore Littledata's article on GA4 event tracking for Shopify for more insight into how these metrics are captured server-side.

2. Session-based funnel: one-take purchase journey

If you're looking to understand how each visit to your website performs, the session-based funnel is your go-to.

This funnel shows:

  • How many sessions included an add to cart

  • How many progressed to checkout

  • And how many ended in a purchase

The key benefit? You avoid counting the same visit multiple times if the visitor takes several actions in one go. This is much closer to what most marketers think of when they imagine a traditional funnel: a single visit, progressing through steps, or not.

tip

GA4 lets you build this report explicitly regarding scope, so you know exactly what each number means.

For a deep dive on session scoping and funnel exploration, visit Google's guide to GA4 funnel analysis.

3. User-based funnel: lifetime behavior, not just visits

Finally, the user-based funnel gives you a broader, long-term view. Instead of focusing on sessions or actions, it answers: how many unique users took these steps?

Why is this important? Because eCommerce is full of returning users. Someone might add something to cart on Monday, come back on Wednesday, and complete the purchase.

With a user-based funnel, you can:

  • Understand long-term customer behavior

  • See how many users drop off between stages

  • Identify patterns in purchase behavior over time

This is where Shopify’s model falls short. It doesn’t give you the full picture across user journeys, especially for repeat buyers or high-ticket decision cycles.

Which GA4 funnel data should you trust?

All of them.

That’s the beauty of GA4. You can view your funnel numbers through multiple lenses depending on the question you’re asking. Want to know the raw volume of actions? Use event-based. Interested in session paths? Go session-based. Tracking customer journeys over time? Use user-based.

But to be clear: Shopify doesn’t offer any of this clarity. After working with dozens of stores, we’ve seen no consistent logic behind Shopify's funnel numbers. They’re definitely not event counts, and they might be sessions or users—but there’s no official confirmation.

So is GA4 data perfect? Only if you use server-side tracking.

Here’s the twist: GA4, as powerful as it is, also has a blind spot—if you’re only using client-side tracking.

Because the entire Shopify checkout process happens server-side (from add to cart, to begin checkout, to purchase), your browser-based GA4 tags might never capture that activity. In fact, in our experience, GA4 only sees 60 to 75% of these critical funnel events without additional help.

To understand the limitations of client-side data collection, read Littledata's article on client vs server-side tracking.

This is where Littledata comes in. It syncs Shopify server events directly with GA4, with 100% precision.

That means:

…is reliably tracked and available to be analyzed in GA4 no matter what device, browser, or session structure is involved.

From there, you can slice the data however you like: users, sessions, or events. And finally, you get the true picture of your funnel.

Final thoughts: don’t settle for misleading easy, go after accurate numbers

Shopify reports may look nice and tidy, but they’re not telling you the full story. And in data, clarity is everything.

If you’re serious about understanding your customers and optimizing your funnel, start building your reports in GA4. And if you want total reliability, integrate with Littledata to bring in 100% of Shopify’s missing server-side events.