You install a privacy-friendly analytics tool next to Google Analytics 4, wait a week, and compare. The numbers don’t match. Sometimes the new tool shows twice as many visitors; sometimes it’s the other way around for one particular page. It’s natural to assume one of them is broken.
Usually neither is. Two honest analytics tools almost never agree, because they see different visitors, count them differently and filter different things. Here’s what causes the gap, roughly in order of impact, and how to decide which number to use.
1. Consent banners
This is often the biggest factor for European traffic. GA4 sets cookies, so in the EU and UK it normally runs behind a consent banner. Visitors who click “Reject”, or who close the banner without choosing, are either not tracked at all or only sent as anonymous “cookieless pings” if you use Consent Mode in its advanced setting.
How many people decline depends on your banner design and audience. With a fair “Accept / Reject” banner, it’s common to see a large share of visitors decline. A privacy-friendly tool that runs without a banner sees all of them. That alone can make GA4 look much smaller.
If you use GA4’s Consent Mode with behavioural modelling, GA4 tries to fill the gap with estimates. Modelled data is useful for trends, but it’s an estimate, not a count, and it only kicks in above certain traffic thresholds.
2. Ad blockers and browser protections
Many popular ad blockers and privacy browsers block requests to google-analytics.com and googletagmanager.com by default. The share depends a lot on your audience: a site for developers or tech-savvy readers will lose far more than a site for a general audience.
Smaller, first-party analytics scripts are blocked less often, but they aren’t invisible. Some blocklists include them too. So this gap usually makes GA4 lower, but by an amount that varies from site to site.
3. Different definitions of a “user” or “visitor”
Tools count people in very different ways:
- GA4 counts users by a cookie-based client ID (plus User-ID or Google signals if you enable them). Clear cookies, switch browser or device, and you’re a new user.
- Some privacy tools store nothing and count unique visitors with a daily-rotating hash of IP address and user agent. The same person on two days counts as two visitors, and people behind the same office network can be merged.
- Other tools, including Cool Analytics, keep a random first-party ID in the browser’s storage (not a cookie) so they can recognise a returning browser without linking anything to a person.
These approaches produce different “unique visitor” numbers even with identical traffic. Comparing pageviews is usually much fairer than comparing visitors.
4. Sessions and timeouts
A session is a convention, not a fact. GA4 starts a new session after 30 minutes of inactivity by default, and its session counts are estimated at large volumes. Other tools use their own timeout and rules: some start a new session at midnight, some when the traffic source changes, some don’t. Expect session counts to differ by a few percent even when everything else matches.
5. Bot filtering
Every tool filters bots, and every tool does it differently. GA4 excludes traffic from known bots and spiders automatically. Privacy-friendly tools typically skip headless browsers, automation (navigator.webdriver), known crawler user agents and local development. A scraper that runs a full browser can slip past any of them. On small sites, a single badly behaved bot can create a visible gap for a day or two.
6. Single-page apps and route changes
On sites built with React, Next.js, Vue or similar, page changes happen without a full reload. If a tool doesn’t listen to those route changes, it records one pageview per visit instead of one per page. GA4 handles this with its “enhanced measurement” setting for browser history events. If that’s switched off, or you use a custom router, GA4 can undercount pageviews badly. Cool Analytics listens to history.pushState and back/forward navigation automatically, so route changes are counted without extra code.
7. Time zones, filters and reporting delays
The boring ones that still cause a lot of confusion:
- Time zone. If GA4 reports in Pacific time and your other tool reports in Berlin time, “yesterday” covers different hours.
- Internal traffic filters. You might exclude your office IP in GA4 but not elsewhere, or the reverse.
- Processing delay. GA4 standard reports can take a day or more to settle. Realtime tools show data immediately.
- Thresholds and sampling. GA4 may hide small numbers in some reports (data thresholds) or sample large explorations.
8. Different channel rules
Even when visit counts match, the breakdown by source won’t. GA4’s default channel grouping has its own rules for what counts as Organic Search, Organic Social, Referral or Direct. Other tools have different rules, and some have channels GA4 lacks, such as a dedicated channel for AI assistants. Visits from ChatGPT might be “Referral” in GA4 and “AI” elsewhere. See how to track ChatGPT and Perplexity traffic for more.
A quick troubleshooting table
| What you see | Most likely cause |
|---|---|
| Privacy tool shows far more visitors overall | Consent banner declines plus ad blockers hitting GA4 |
| The gap is much bigger for EU traffic | Consent banner |
| The gap is much bigger on a developer-focused site | Ad blockers |
| Visitors match but pageviews differ a lot | Single-page-app route changes not tracked in one of the tools |
| Daily totals are shifted by a few hours | Time zone settings |
| One day has a huge spike in one tool only | Bot traffic that one tool filtered and the other didn’t |
So which number is right?
Neither is “the truth”. Each is a measurement with known blind spots. The useful questions are which blind spots matter for your decision, and whether the number is consistent over time.
- For total reach (how many people saw this?), the tool that sees the most real visitors (usually the one without a consent wall and with fewer blocked requests) is closer.
- For trends (did the launch work? is search growing?), consistency matters more than absolute accuracy. Pick one tool and stick with it.
- For ad attribution inside Google Ads, GA4 has integrations other tools don’t, so it’s often still the practical choice there.
Running both in parallel
If you’re switching tools, run both for two to four weeks. Then:
- Compare pageviews per day rather than users.
- Compare a few individual pages, not just site totals.
- Set both to the same time zone.
- Note the typical ratio (for example, “GA4 shows about 70% of what the other tool shows”) so you can translate old reports.
After that you can remove GA4 or keep it only where you need its ad integrations. If you’re weighing that decision, our Cool Analytics vs Google Analytics comparison and the list of Google Analytics alternatives may help.