Three stacked layers, the top two full of tool slots, the third empty and lit
Conversion

Ecommerce Analytics Tools: The Three Layers, and the One Nobody Sells

You have GA4, Shopify Analytics and maybe a dashboard on top, and you still can't say what to change on Monday morning. That gap is structural, and it has a name.

Gabriel RuimyCofounder, Qosmic ·

Most stores have more analytics than they know what to do with. Shopify's own reports, GA4 underneath, probably a dashboard on top of both, maybe session recordings somewhere. And on Monday morning the honest answer to "what should we change this week" is still a shrug and a guess.

That isn't a discipline problem. It's structural. Ecommerce analytics comes in three layers, and almost every tool on the market lives in the first two.

The three layers with the question each answers, and how many tools live in each

The three layers

Layer one: what happened. Sessions, conversion rate, revenue, where the traffic came from, which ads paid for it. Reporting and attribution.

Layer two: why it happened. Session recordings, heatmaps, scroll depth. The qualitative half, where you watch a person fail to find the size guide.

Layer three: what to do about it. Which page to change, what specifically is wrong with it, and what it's costing you while it stays that way.

Layer one is crowded. Layer two has a handful of good options. Layer three is close to empty, and it's the only one that answers the question you actually had.

[@portabletext/react] Unknown block type "ctaBox", specify a component for it in the `components.types` prop

Layer one: reporting and attribution

Shopify Analytics. Free, already there, and better than people give it credit for. Sessions, conversion rate, AOV, top products, basic funnel. For a store under a few thousand sessions a month this is genuinely enough.

GA4. Free, and the thing worth learning is Explorations rather than the default reports. Funnel analysis, path analysis and cohorts are where the useful answers live, and almost nobody opens them. Steeper than it should be, but free.

Triple Whale. Attribution, used by around fifty thousand ecommerce brands. Its first-party pixel ties purchases back to specific ad clicks across Meta, Google, TikTok and the rest, which is the problem it exists to solve. Free tier, then priced against your GMV.

Polar Analytics. Shopify-native, clean dashboards, multi-touch attribution, and it holds tracking continuity when browsers clear cookies. Demo-gated and roughly $720 a month, so it's a real budget line.

Northbeam. Attribution rigor for brands spending upward of $50k a month on ads. Below that it's more machinery than you need.

Lifetimely. LTV and cohort analysis specifically, at accessible pricing. Narrower than the others and better at the thing it does.

All six answer layer one. None of them will tell you your add-to-cart button is 32 pixels tall, because that isn't the question they were built for. Worth saying plainly since it's the gap we work in: a dashboard's job ends when the chart renders.

Layer two: behavior

Hotjar for recordings, heatmaps and on-page surveys. Microsoft Clarity does much of the same for free, and its rage-click detection is genuinely useful.

The honest limitation of this layer is that it doesn't scale. Watching recordings is the highest-quality signal you can get about why someone left, and it costs you an hour to learn one thing. You'll do it during a crisis and never again.

Layer three: the empty one

Here's the distinction that matters, and it's the one hiding inside the term ecommerce monitoring tools as opposed to reporting software.

Reporting is retrospective. You open it, you look at last month, you interpret. It waits for you.

Monitoring is continuous. It watches, and it tells you the week something moves, while the cause is still fresh enough to find. That difference sounds small and it decides whether you catch the theme update that killed your sticky add-to-cart in April or discover it in the June numbers.

Almost nothing in ecommerce does the second thing properly. You can wire alerts onto GA4 and get told a metric dropped, which is halfway there and still leaves you opening tabs at 9pm trying to work out which page did it.

This is the layer Qosmic works in. It reads your storefront the way a buyer does and your numbers alongside it, then names the page, the specific failure and what it's costing you. Not "conversion is down 8%." More like "the price sits below the fold on mobile product pages, which is where 72% of your sessions are."

And then the part that isn't analytics at all: it builds the fix inside your own theme, using your own components, and stages it as a draft for you to approve. Ships when you say so. Keeps watching afterward to see whether it worked.

That's the real gap in the market. Every tool in layers one and two hands you a to-do list. None of them has ever changed a product page.

Stack by stage: under 5k, 5k–50k, above
Reporting versus monitoring: retrospective and waiting, against continuous and alerting

How to choose, by stage

Under ~5,000 sessions a month. Shopify Analytics and nothing else. You don't have the volume for attribution modeling to say anything trustworthy, and a $720 dashboard will tell you the same thing the free one does, more slowly.

5,000 to 50,000 sessions. Add GA4 and actually learn Explorations. Add Clarity because it's free. If you're spending meaningfully on ads, Triple Whale starts to earn its place.

Above that, spending real money on acquisition. Polar or Northbeam for attribution, Lifetimely if retention is where your model lives.

At every stage, the layer-three question is the same one and it doesn't get easier with more dashboards. More reporting has never once told anybody what to fix.

The short version

Layer one tells you what happened, and it's crowded and mostly free at the bottom. Layer two tells you why, and it doesn't scale. Layer three tells you what to do, and almost nobody sells it.

If you have three tools and still don't know what to change on Monday, you don't need a fourth dashboard. You're missing a layer.

[@portabletext/react] Unknown block type "ctaBox", specify a component for it in the `components.types` prop

Grow your store with one click.