# Why numbers differ from Google Analytics 4

> Why Privatus Analytics and Google Analytics 4 report different numbers: consent banners, ad blockers, visitor and bounce definitions, bots and timezones.

It's normal for Privatus Analytics and GA4 to disagree, often by 10 to 50%. The main
reasons, roughly in order of size:

## 1. Consent banners

GA4 usually runs only after a visitor accepts cookies. Depending on your
banner and audience, 30 to 70% of visitors in Europe decline or ignore it.
With Consent Mode, GA4 models some of the missing data, which adds
estimates on top. Privatus Analytics doesn't need consent in most setups, so it
counts visitors GA4 never sees.

## 2. Ad and tracking blockers

Blockers stop GA4 more often than Privatus Analytics, but some blockers stop
Privatus Analytics too, so both tools can undercount. See
[Ad blockers](/docs/troubleshooting/ad-blockers).

## 3. Different definitions

| | Privatus Analytics | GA4 |
|---|---|---|
| Users / visitors | Unique **per day**, summed over the range | Unique over the whole range, based on a cookie or signed-in user id |
| Sessions / visits | 30 min inactivity, ends at midnight UTC, no campaign-based restarts | 30 min inactivity, can span midnight |
| Bounce | 1 pageview **and** no event **and** < 10 s engaged | Not "engaged": < 10 s, no conversion, one page |
| Engagement time | Visible time only | Foreground time |

Because visitors are counted per day, **weekly and monthly visitor totals
are higher** in Privatus Analytics than GA4's users for the same people. Compare
daily numbers, or pageviews, for a fair check.

## 4. Bot filtering

Both filter bots, with different lists. Privatus Analytics also filters data-center
traffic and headless browsers by default, and shows how many hits it
removed in the Overview's footer.

## 5. Timezones and date boundaries

Check that both tools use the same timezone. See
[Timezones](/docs/troubleshooting/timezones).

## 6. Where the script runs

Make sure both scripts are on the same pages. Single-page apps, excluded
paths, staging hostnames and [Google Tag Manager](/docs/install/google-tag-manager)
triggers often differ.

## A fair comparison

Pick one day, compare **pageviews** for a handful of top pages, with the
same timezone and hostname. Pageviews are the most comparable metric. The
remaining gap is mostly consent and blockers.

To bring your GA4 history over, see [Imports](/docs/reports/imports).
