Blog/OPERATIONS

Why GA4 never matches your actual sales

GA4 sees part of your traffic and only estimates revenue. Where half your visitors disappear, why the totals never match the bank, and how to fix it.

BThe Behio Editorial TeamUpdated July 5, 2026 · 9 min read
Why GA4 never matches your actual sales
QUICK ANSWER

GA4 is not confused. It is working with a fraction of reality. In Europe it measures only the visitors who click accept on the cookie banner, which is usually somewhere between half and seventy percent of them, and the rest never enter the statistics at all. Ad blockers drop the tracking script on top of that, and at higher volumes GA4 samples and models the data instead of counting it. What you get is understated traffic and revenue that will not reconcile with your bank account. The way out is cookieless measurement, which counts every visitor without a consent banner, together with reading revenue straight from the orders, so sales and conversion are an exact figure rather than an estimate.

Comparison table

The facts in one place first. Figures as of July 2026.

What you are measuringGA4Cookieless analytics
Visitor coverageroughly 50 to 70 %effectively 100 %
Cookie consentrequired, otherwise no datanot needed
Ad blockers and privacy protectionscript is often blockedmore resilient
Revenueestimated in the browserexact, from the orders
Data samplingyes at high volumescounts everything

Coverage figures assume a typical consent mode setup in the EU. The real gap for any given store depends on its traffic mix and how the cookie banner is configured.

When your analytics and your bank disagree

You open GA4, see 380,000 in revenue for the month, then open your order list and find 520,000. Nobody is stealing and nobody miscounted. GA4 simply never recorded part of the sales. The currency does not matter here, the gap does, and once you have seen how wide it is you stop reading GA4 as the truth and start reading it as a floor.

The problem is not that GA4 is a bad tool. The problem is that plenty of people read it as a one to one picture of reality and then switch campaigns off or judge which channel pays for itself on that basis. You are making decisions on a number that sits a long way from what actually happened.

Where half your visitors go

The first and biggest hole is cookie consent. Under European privacy rules GA4 may legally measure only the people who click accept. Anyone who closes the banner, scrolls past it or clicks reject effectively does not exist as far as GA4 is concerned. Depending on how consent mode is configured, that routinely removes thirty to fifty percent of visitors. Half the people you paid for in advertising never reach the report.

This particular hole is a European one. If you sell only into the United States it is much smaller, because there is no equivalent obligation to ask before you measure. Everything else on this list still applies wherever you sell.

The second hole is blockers. Google's tracking script is among the first things ad blockers and privacy hardened browsers throw away, and Firefox, Brave and Safari all work against it deliberately. The third layer is plumbing: the script fails to load on a slow connection, or errors, or the visitor leaves before it fires. Each layer takes a slice, and together they account for somewhere between a quarter and a half of your data going missing.

Sampling, and numbers that were never counted

A smaller store mostly runs into consent and blockers. As traffic grows a further problem joins them: GA4 stops counting everything and starts sampling. Pull a report above a certain event volume and Google calculates part of the data and extrapolates the rest. What you are looking at is an estimate built on a sample, not a count.

GA4 also actively models the conversions it could not see because consent was missing. From Google's side that is reasonable, it is trying to fill the gap. From yours it means you are deciding on an estimate built on top of an estimate. For operational numbers like revenue and conversion rate you want hard data from orders, not a statistical model.

Cookieless measurement, and why it sees everyone

There is a different approach, the one Plausible made popular and others followed. It does not measure through cookies and stores no personal identity, so it does not need consent from a banner and it counts every visitor. Instead of a persistent identifier it works with an anonymous fingerprint that rotates every day, and it never stores the IP address at all. More private for your customer, more complete for you.

The difference is tangible. Where GA4 sees fifty to seventy percent of people, cookieless measurement sees practically all of them. You stop losing the half you paid for in advertising. And because nothing rides on cookies, the steady tightening of privacy in browsers, which is slowly suffocating classic measurement, does not touch you.

Why the revenue figure never reconciles

GA4 learns about a purchase because a purchase event fires in the browser. When a visitor rejects cookies, runs an ad blocker or the script fails, that event never leaves and the sale drops out, even though the order genuinely happened. That is why your analytics is missing tens of percent of turnover against what the till says.

The answer is to stop relying on the browser and read revenue from the orders themselves. When the platform processes the orders, it knows about every single one regardless of consent, blockers or connection speed. Revenue and conversion then stop being a guess from the browser and become an exact figure from the database. That is the difference between steering through fog and steering on facts.

How Behio measures instead

Behio has its own analytics built into the platform and it runs on the cookieless model Plausible popularised. It measures every visitor rather than only the ones who accepted a banner, it uses an anonymous fingerprint that rotates daily, and it never stores an IP address. You see your real traffic instead of half of it.

Because the platform books the orders itself, revenue and conversion rate are exact numbers from the database rather than estimates from a browser. On top of that you get revenue attribution by source, the purchase funnel, and a weekly summary by email. If you already run GA4 you can leave it running alongside, Behio can send GA4 events too, but you can finally make decisions on numbers that agree with your bank.

The verdict

GA4 is not broken. It shows part of reality, and the part it shows is understated. Half your visitors fall away on cookie consent and blockers, revenue is an estimate from the browser, and at higher volumes it is sampled on top of that. As a basis for running a business, that is thin. Cookieless measurement that counts everyone and takes revenue straight from the orders gives you numbers that agree with your bank. If it bothers you to waste money on advertising, you want to see all of your traffic rather than half of it. In Behio this analytics is included in every plan, and GA4 is welcome to keep running next to it.

Common questions

Why does GA4 report fewer visitors than I really have?

Cookie consent, mostly. In Europe GA4 measures only the people who click accept on the banner, and that tends to be somewhere between fifty and seventy percent of them. Ad blockers and stricter browsers block its tracking script as well. The rest of your visitors never make it into the statistics at all.

Why does GA4 revenue not match my orders?

GA4 recognises a purchase from an event in the browser. When a visitor rejects cookies, runs an ad blocker or the script fails, the event never leaves and the sale drops out, even though the order genuinely happened. That is why analytics is short by tens of percent against the till. The only way to get exact revenue is to read it from the orders.

What is cookieless measurement and is it legal?

It is measurement without cookies and without storing any personal identity. Instead of a persistent identifier it uses an anonymous fingerprint that rotates daily, and the IP address is not stored. That is exactly why it does not need consent from a banner and can count every visitor. Plausible made the model popular and it is consistent with privacy rules.

Does better analytics mean I have to turn GA4 off?

No. Cookieless analytics can run alongside GA4, and Behio can send ecommerce events to both in a single call. The difference is what you decide on: for a real picture of your traffic you take the cookieless numbers, and you keep GA4 for things like continuity with your advertising accounts.

What is data sampling in GA4?

Pull a report above a certain event volume and GA4 does not calculate all the data, only a sample of it, then extrapolates the rest. The result is an estimate rather than a count. Smaller stores will not hit it, larger ones will. A tool that counts everything does not have the problem.

Build a store that never surprises you on the invoice.

Stock, invoicing, B2B, product feeds and an AI teammate, all native and all in one subscription. Try Behio free for 14 days, no card needed.