Below is taken from this Google Support article: https://support.google.com/analytics/answer/4588315?hl=en
When you compare Clicks from ads and Sessions from Google Analytics side by side, you might expect that the numbers match, however, they often don’t. There are a number of reasons why this can occur.
Google Analytics bases their stats around “Sessions” rather than unique clicks and then drills down into unique sessions and users. The definition of a “session” is proprietary to Google and is ambiguous as well, and the exact attributes aren’t widely known. It would be incorrect to expect clicks to match sessions. Clicks associated with your ads may be greater than visits for the following reasons:
The ad exchange/DSP server tracks all advertising clicks. Google Analytics only tracks sessions that meet their criteria (see below).
A single visitor may click your ads multiple times. When a visitor clicks multiple times the ad server records multiple clicks while Google Analytics records the multiple page views as only one visit.
A visitor may click on the advertisement, but then stop the page from fully loading by navigating to another address or page or by pressing the browser’s Stop button. In this scenario, the Google Analytics tracking code will not execute and will not send tracking data to Google. However, ad server still registers the click.
Website load times may contribute to tracking problems and visitors may navigate away before the Google Analytics tracking code executes.
Visitors may have set their preferences to opt-out of Google Analytics tracking, but still be targeted and measured by the ad server when they click an ad.
A known instance is also when you see zero visitation time on Google Analytics as in the example below. A quick way to check for valid traffic is when Avg Session Duration is low, check to see if Pages/Sessions is greater than 1. If so, sessions are likely valid but not being tracked by Google.
Mobile traffic from apps is difficult for Google Analytics to categorize correctly. When someone sees the mobile ad inside an app (and most mobile inventory is in apps) and clicks the ad, if this opens the browser on the phone to display the advertiser’s website, rather than opening it within the app, the app may not pass the tracking code to Google Analytics. So, when Google Analytics is seeing the user visiting your website, it is seeing that there is no referral code and it will deem the traffic to have no source and therefore assign that referral traffic incorrectly as Direct traffic and as an immediate “bounce” (recording it as zero time spent on the advertiser’s website).
Therefore, reports an advertiser gets from the digital company running the ads will NEVER match the reports from Google Analytics. Why? Because the digital advertising reports are reporting clicks on the ad as recorded by the ad exchanges’ servers. Google Analytics doesn’t record a visit until a whole lot of things happen first. Here’s a look at what has to happen for Google Analytics to be able to track a visit (Session) from someone who clicks on an ad and comes to the advertiser’s website:
As Google explains in this article (https://support.google.com/analytics/answer/4588315?hl=en0): When you compare Clicks from ads and Sessions from Google Analytics side by side, you might expect that the numbers match, however, they often don’t. There are a number of reasons why this can occur.
How Clicks Are Recorded:
When someone clicks on an ad, the click is immediately recorded in the exchange server logs which is what is reported in a digital company’s Monthly Reports.
However…
How Sessions In Google Analytics Are Recorded:
For Google Analytics to be able to record a session, several things happen (as illustrated in the graphic above):
- When the click takes place, the browser is pointed to the advertiser’s landing page. Then,
- The advertiser’s website then responds to this request and starts to transfer data from the web server to the user’s browser. Then,
- When the browser starts to download the landing page, there may be a request for several files at the same time, including JavaScript, CSS, images, video, audio, etc. The requests for JavaScript include the Analytics tracking code. Then,
- The JavaScript file (ga.js or analytics.js) must first be downloaded and interpreted by the user’s browser. Then,
- The user’s browser/device and security settings must support:
- Cookies
- JavaScript
- Images
(If any of the above are disabled, Analytics may not be able to record a session.) Then,
- The browser sends a separate request to www.google-analytics.com, the Analytics servers. Then,
- Finally, a session is recorded in Google Analytics.
← Frequently Asked Questions