For one of my larger clients, we're seeing a discrepancy between the sessions (and users) reported for each traffic source, and the total sessions reported in GA4. This occurs whether we are using default channel groups or source/medium as the dimension. The GA4 property in question applies to a website and is connected to the website via a standard GTM implementation.
As this screenshot shows, total sessions is reported as 44,722, whereas the sum of the values for each channel totals 44,478. While the difference is less than 1%, we (and our client) are concerned that this makes the data unreliable.
I have investigated for reasons why this may be the case:
- There is no thresholding being applied to this report (as per GA4's own declaration that this is an unsampled report).
- There are no comparisons or filters being used.
- There are no rows of data not shown in this report.
- I have deliberately chosen data for last month, which means there should be no issue with "recent data" unreliability.
- The data feed for this Analytics property doesn't have internal traffic defined.
- All of the settings for the data stream and tag have been left as default.
I could understand why the sum of sessions from different channels might be higher than the reported total (for example, that a user returned to the website through a different channel before the session timeout window expired). But the total reported number of sessions is higher than the sum of the channels.
My only conclusion is that this discrepancy is a consequence of how GA4 carries out basic arithmetic, but explaining that to my client will hardly fill them with confidence.
I've searched online for this problem, and although I have found instances of people reporting it, I can't find any official explanation (or even sensible third party explanations).
Is there an official reason why the total doesn't equal the sum of the values by dimension? Or, if not, is there a logical explanation based on what we know of how GA4 works?