Why Adwords and Google Analytics data don’t match & how to fix it

I am often asked this question:

“Why my Adwords and Analytics data don’t match?”

and my answer is usually,

“I can’t say for sure without first diving into your Adwords and Google Analytics accounts and checking your website setup”

And this is true.

There is no single straight forward answer to this question and it could take several hours/days to find a solution to this problem, depending upon your expertise.

First things first. It is common and normal to have data discrepancy between Adwords and Google Analytics data.

So no need to panic.

However it is not normal to have very large data discrepancy between adwords and GA data.

For example, your adwords is reporting 100 clicks from an adwords campaign but your Google Analytics is reporting only 10 sessions from that campaign in the same time period.

Before you take any action, you need to first measure the level of data discrepancies between adwords and Google Analytics.

Measure the level of data discrepancy between Adwords and Google Analytics

In order to measure the level of discrepancy between Adwords and GA data follow the steps below:

Step-1: Navigate to Acquisition > AdWords > Campaigns report in your GA main view:

Step-2: Click on the ‘Clicks’ tab:

Step-3: Select ‘Clicks’ from the ‘Select a metric’ drop down menu as shown below:

You will now see the following similar report:

Through this report you can measure the level of discrepancy between ad clicks and GA sessions for all campaigns or for each individual Adwords campaign.

Small amount of data discrepancy is normal. But if you see lot of difference then it is a cause for concern.

From the screenshot above we can conclude that the Adwords clicks are far more than Google Analytics Sessions.

So there is clearly a huge data discrepancy between Adwords and Google Analytics and we need to dig deeper to find the cause.

Get the E-Book (37 Pages)

Learn to read e-commerce reports book banner

Get the E-Book (104 Pages)

21 Causes of data discrepancy between Adwords and Google Analytics data

Following are the most common reasons for data discrepancies between Adwords and Google Analytics data:

  1. Adwords account is not linked to Google Analytics
  2. Wrong Adwords Account linked to Google Analytics
  3. Multiple Adwords account linked to same GA view
  4. Clicks and Sessions are fundamentally different metrics
  5. A user clicked on the same ad multiple times
  6. Google Analytics sessions are not filtered for invalid clicks
  7. Google Analytics tracking code missing from landing pages
  8. Google Analytics tracking code not firing on landing pages
  9. Multiple Google Analytics tracking code firing on landing pages
  10. View filters excluding Google Analytics session data
  11. Manual tagging is not configured correctly
  12. Adwords destination URLs are not tagged
  13. Using both manual tagging and auto-tagging for Google Analytics
  14. Using both manual tagging and auto-tagging for non-google analytics purpose
  15. GCLID parameter dropped because of redirect
  16. Google Analytics can not read the GCLID value
  17. GCLID parameter is throwing error pages
  18. Bookmark contains GCLID parameter
  19. Difference between Google Adwords and Google Analytics Conversion Tracking
  20. Data sampling issue creating data discrepancies
  21. You are comparing Apples to Oranges

Now you have got a pretty good idea of why there is no single straight forward answer.

#1 Adwords account is not linked to Google Analytics

If your Google Adword account in not linked to your Google Analytics account then all of the traffic from Adwords can be reported as organic traffic from Google in GA.

You may not see any adwords traffic data being reported in your GA reports.

So in case, you have got this issue, you need to link your Adwords account to your Google Analytics account.

You can verify whether or not Adwords account is linked to Google Analytics by following the steps below:

Step-1: Navigate to Acquisition > Adwords > Campaigns report in your GA view.

Step-2: Look for the following notification:

If you see such notification and you use Google Adwords then you need to link your adwords account to your GA account.

Linking Adwords account to your Google analytics account help you greatly in understanding what people do on your website after they click on your adwords ads.  

You can understand the behavior of Adwords visitors in terms of site usage (pageviews, bounce rate, avg. session duration etc), goal conversions and e-commerce transactions.

This type of insight helps immensely in optimizing ad copies, keywords and landing pages of your Adwords campaigns.

Following are some other advantages of linking your Google Adwords account with your Google Analytics account:

#1 You can import Google Analytics goals and sales data directly into Google Adwords.

#2 You can import Google Analytics remarketing audiences into Adwords.

#3 You can run dynamic remarketing campaigns in Adwords.

#4 You can import website usage data (like bounce rate, average session duration etc) from GA into Adwords.

#5 You get more accurate data in your GA reports esp. in your multi channel funnel reports.

#6 You get accurate data in various attribution reports in Google Adwords.

Following is a short video on the benefits of linking your Adwords and GA account:

#2 Wrong Adwords Account linked to Google Analytics

If you have got access to multiple Adwords accounts then there is a possibility that you accidentally linked wrong Adwords account to GA. Make sure that the correct Adwords account is linked to Google Analytics.

#3 Multiple Adwords account linked to same GA view

Avoid linking multiple Adwords accounts to the same GA view as this can increase data discrepancies between Adwords and Google Analytics.

#4 Clicks and Sessions are fundamentally different metrics

There is always a very strong probability that the number of clicks on your Adwords ads do not match with the number of resulting Google Analytics sessions.

This is because ‘clicks’ and ‘sessions’ are fundamentally different metrics. A click is a hit (user’s interaction) whereas a Google Analytics session is a group of hits recorded for a user in a given time period.

On top of that, Google Adwords report ‘clicks’ whereas Google Analytics report ‘ sessions’.

#5 A user clicked on the same ad multiple times

In Google Analytics, every time a campaign source is changed, the existing Google Analytics session expires and a new session starts.

If you are using Google Adwords autotagging, then each ad click has its own unique GCLID value. So multiple clicks on the same ad will change the GCLID value associated with the ad which will cause the existing GA session to expire and a new session to begin.

So if Google Adwords in not filtering out multiple clicks on the same ad then in that case the number of ad clicks would be equal to number of GA sessions.

If a user is excessively clicking on the same ad over and over again then Google Adwords may choose to filter out excessive clicks. But Google Analytics still won’t filter out multiple GA sessions generated from such invalid ad clicks.

So in that case, one click can result in multiple GA sessions.

If you are manually tagging Adwords campaign URLs, then each ad click can have the same campaign source.

So multiple clicks on the same ad may not change the campaign source and hence the existing GA session may not expire and no new GA session will begin. In other words multiple clicks on the same ad by a same user, may not generate multiple GA sessions, if you have manually tagged your Adwords ads.

If Google Adwords in not filtering out multiple clicks on the same ad then in that case the number of ad clicks could be greater than number of resulting GA sessions.

If a user is excessively clicking on the same ad over and over again then Google Adwords may choose to filter out excessive clicks.

In that case the number of ad clicks could be equal to number of resulting GA sessions provided you have manually tagged the adwords campaigns.

#6 Google Analytics sessions are not filtered for invalid clicks

Google Adwords filter out invalid clicks but Google Analytics can’t filter invalid sessions resulted from such ad clicks.

So Google analytics will track and report sessions even for invalid clicks. If your adwords account is getting lot of invalid clicks (may be because of click fraud or spambot attack) you will see lot more GA sessions than ad clicks.

#7 Google Analytics tracking code missing from landing pages

If the landing page of the Adwords ad doesn’t contain Google Analytics tracking code, then Google Analytics will not be able to track sessions but Adwords will still track and report on ad clicks. In that case the number of ad clicks could be more than the number of GA sessions.

Use a website crawler like ‘Screaming frog SEO Spider’ to find pages with missing GA tracking code. You can also use tag auditing tools like ‘Tag Inspector’ to find such pages.

Note: If your website does not use template files then you are more likely to find web pages with missing GA tracking code.

#8 Google Analytics tracking code not firing on landing pages

Whenever Google Analytics tracking code does not fire for some reason on the landing page of an Adwords ad, Google Analytics does not track session resulted from an ad click but Adwords will still track and report on the ad click.

In that case the number of ad clicks could be more than the number of GA sessions.

Following are the events in which your Google Analytics tracking code will not fire:

#1 Google Analytics tracking code is not a valid code.

#2 A user has disabled JavaScript, Cookies and/or images via browser settings.

#3 A user is using Google Analytics opt out add on which disable Google Analytics.

#4  Redirects in landing pages may prevent the Google Analytics Tracking code from being executed.

#5 Some server or client side error may prevent GA tracking code from being executed.

Use ‘Google Tag Assistant’ to identify such issues.

#9 Multiple Google Analytics tracking code firing on landing pages

This issue has become more common lately, as more and more marketers have started using ‘Google Tag Manager’ (GTM).

Often marketers forget to remove the hardcoded GA tracking code from the website once they start using GTM.

As a result, the tracking code is fired twice on each landing page, once via the code, hardcoded on the page and once via GTM. So every click on an adwords ad can trigger two GA sessions. In that case you may see lot more sessions than ad clicks.

Make sure that Google Analytics tracking code is fired only once on a page. You can identify this issue by using ‘Google Tag Assistant’ and by learning to install Google Tag Manager correctly via this article: Google Tag Manager Implementation and Deployment Guide.

#10 View filters excluding Google Analytics session data

View filters can remove some or lot of GA session data from your view. So when you compare the session data from a filtered view, with Adwords click data, you are more likely to see lot of data discrepancy.

The solution to this problem is to always use unfiltered view when comparing Adwords and Analytics data.

#11 Manual tagging is not configured correctly

In order to import Adwords data into Google Analytics, you need to tag the adwords destination URLs. You can do that either manually or through auto-tagging.

If the manual tagging of destination URLs is not correct then Google Analytics may choose to ignore the campaign tracking variables and treat adwords traffic as Google organic traffic. This would result in lot of discrepancy between adwords and analytics data.

The solution to this problem is to avoid using manual tagging. Use auto-tagging instead. Google also strongly recommends using ‘auto tagging’ for Google Adwords campaigns.

#12 Adwords destination URLs are not tagged

In order to get adwords data into Google Analytics, you need to tag your Adwords destination URLs either via auto-tagging or manually.

If you do not tag your Ad URLs then Google Analytics can report adwords traffic as traffic coming from Google organic search.

This can happen, if you have disabled auto-tagging but then forgot to manually tag your ads URLs or when your auto-tagging is not working for some reason.

#13 Using both manual tagging and auto-tagging for Google Analytics

Following is an example of Ad URL which uses both manual and auto-tagging:

https://www.abc.com/?utm_source=google&utm_medium=ppc&utm_term=car-insurance&utm_content=text-ad&utm_campaign=car-insurance-promo-feb&gclid=CLjTpNrg8NIC

If you are tagging adwords destination URLs both manually and via auto-tagging for the purpose of importing Adwords data into Google Analytics then this could create serious data discrepancy issues.

You may also see multiple/ duplicate entries for adwords in your GA view:

mutiple duplicate entries

When you use ‘auto tagging’, Google automatically tags the campaign source and medium of your AdWords ads as google / cpc.

But if you are also using manual tagging, you may over a long period of time, tag the same campaign source and medium differently as: google/ppc, google/PPC, google/CPC, Google/CPC etc.

In GA, traffic source names are case sensitive. So Google is different from google and Google. Similarly, traffic medium names are case sensitive. So cpc is different from CPC, Cpc.

If you are not consistent with the names and spellings of the values of your campaign tracking variables then you are most likely to see multiple/duplicate entries in your GA view. 

The best practice is to avoid using both manual and auto-tagging at the same time. If you are using auto-tagging, make sure that no URL is manually tagged.

#14 Using both manual tagging and auto-tagging for non-google analytics purpose

There are situations when you have to use both manual and auto tagging.

Like for example, if you want to track Adwords traffic data in Kissmetrics in addition to Google Analytics, then you have to use both manual and auto tagging.

Kissmetrics can not extract any campaign data from the GLCID parameter. So GCLID is pretty much useless for kissmetricsIt can get campaign data only through campaign tracking variables (UTM parameters). 

So you need to use manual tagging for sending adwords data to Kissmetrics and auto-tagging for sending adwords data to Google Analytics.

If you are using both manual and auto-tagging then GA can discard campaign tracking parameters (UTM parameters) in favor of GCLID. 

In order to stop this, follow the steps below:

Step-1: Navigate to the ‘Admin’ section of your GA view and then click on ‘Property Settings’ under the  ‘Property’ column:

Step-2: Check the box “Allow manual tagging (UTM values) to override auto-tagging (GCLID values) for Adwords and Double Click Search Integration”:

#15 GCLID parameter dropped because of redirect

Sometimes redirect can cause a GCLID parameter to be dropped from the landing page URLs (quite common in case of redirect from desktop to mobile website) .

When GLCID parameter is dropped, the auto-tagging doesn’t work and Adwords campaign data is not sent to Google Analytics.

In order to test whether the GCLID parameter is dropped or not, follow the steps below:

Step-1: Add ‘?gclid=test’ to the end of the original destination URL of your Adwords Ad.

For e.g. https://www.abc.com/?gclid=test.

If glcid=test is not the first parameter, then add ‘&gclid=test’ to the end of the destination URL of your Adwords Ad.

For e.g. https://www.abc.com/?source=google&gclid=test

Step-2: Copy-paste the modified URL into the address bar of your browser window and then press the ‘enter’ key:

Step-3: If the URL of the resulting page does not display ‘gclid=test’ then it means the redirect did not carry the GCLID parameter from original URL to final URL.

For example:

Let says the destination URL with auto tagging is:

https://www.abc.com/?gclid=test

when the redirect occurs, the final URL becomes:

https://www.abc.com/tops/

instead of:

https://www.abc.com/tops/?gclid=test

To resolve this issue you can do two things:

#1 Prevent the redirect from occurring .You can do that by manually updating all of your original ad destination URLs to final URLs.

For example if your original ad destination URL is https://www.abc.com/ but it redirects to https://www.abc.com/tops/ then use the later URL as your ad destination URL.

In this way no redirect will take place when a user clicks on an ad and hence no GCLID parameter will be dropped.

#2 Configure your server to allow redirects to carry GCLID parameter from original URL to final URL.

For example:

Let says the destination URL with auto tagging is:

https://www.abc.com/?gclid=test

when the redirect occurs, the final URL becomes:

https://www.abc.com/tops/?gclid=test

Here the URL has changed but the GCLID parameter remains intact. That means your redirect is able to carry the GCLID parameter from original to destination URL.

#16 Google Analytics can not read the GCLID value

Sometimes GA can’t read GCLID value even when you can see the value in the browser address bar.

This can happen when:

#1 Google Analytics Tracking code on the landing page is not valid.

#2 GA tracking code is valid but is not fired for some reason.

#3 GA tracking code is embedded in an IFRAME and the IFRAME is not a parent frame. If GA tracking code is embedded in an child frame then it can not read the GCLID value, as a child frame can not read the address URL of a parent frame. So make sure GA tracking code is always embedded in parent frame.

#4 Your web server is altering or truncating the GCLID parameter. In order to test, whether or not your server is truncating the GCLID parameter, follow the steps below:

Step-1: Add following GCLID parameter to the end of destination URL of your Adwords Ad:

gclid=TeSter-123-ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-0123456789-AaBbCcDdEeFfGgHhIiJjKkLl

For example:

https://www.abc.com/?gclid=TeSter-123-ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-0123456789-AaBbCcDdEeFfGgHhIiJjKkLl.

The value of this GCLID parameter is 100 characters which is the maximum value a GCLID parameter can store.

Step-2: Copy-paste the modified URL into the address bar of your browser window and press enter.

Step-3: If the entire value of the GCLID parameter remains intact, then it means your server is not truncating the GCLID value.

#17 GCLID parameter is throwing error pages

This can happen when the presence of GCLID parameter in a URL breaks the URL rewrite rule.

You would need to configure your web server so that it accept GCLID parameter.

#18 Bookmark contains GCLID parameter

Sometimes a user bookmark a landing page and the page URL also contains the GCLID parameter.

In that case when a user return to your website via the bookmark, Google analytics record a session resulting from an ad click but no ad click is recorded and reported by Google Adwords.

If lot of users return to website via such bookmarks then Google Analytics can record more sessions than ad clicks reported by Adwords.

#19 Difference between Google Adwords and Google Analytics Conversion Tracking

I have explained the difference between Adwords and analytics conversion tracking in this article: Difference between Google Adwords and Google Analytics Conversion Tracking

#20 Data sampling issue creating data discrepancies

Data sampling in Google Analytics can easily skew your GA sessions data and as a result you may see lot of discrepancy between adwords clicks and GA sessions.

#21 You are comparing Apples to Oranges

If everything else fails, you are most likely comparing apples to oranges. 

When you look at the analytics data for long data ranges (6 months or more), you could be comparing apples to oranges. This is because so much would have changed during that time frame from: website size, traffic volume, marketing campaigns and yes analytics setup.

May be 6 months ago, your analytics account wasn’t linked to your Adwords account.

May be 3 months ago, conversion tracking wasn’t set up in Adwords.

May be 4 months ago there was some problem with auto tagging.

May be 3 weeks ago, you applied a filter to your GA view which started excluding all of the internal traffic.  

So when you overlook all of these historical changes made to your Adwords and GA accounts and you start comparing Adwords clicks with GA sessions, you are likely to see data discrepancies.

Other article you will find useful: Blue Print for Google Analytics Implementation

Learn about the Google Analytics Usage Trends Tool

The Google Analytics usage trend is a new tool which is used to visualise trends in your Google Analytics data and to perform trend analysis.


Do you want to Learn Web Analytics in 4 Weeks?

  • Learn and Master Web Analytics, Conversion Optimization & Google Analytics from Industry Expert in 4 weeks.
  • Lifetime access to the course + Lifelong FREE course updates.
  • New study material added every few months (lifelong learning).
  • Up to date training material.
  • Most exhaustive course on Google Analytics on the internet.
  • Hundreds of Assessments to test your learning.
  • Your 24/7, 365 days a year reference source.
  • Learn at your own pace and from any place.
  • Risk Free with 30 days 100% Money Back Guarantee.

Take your Analytics knowledge to the next level. Checkout my Best Selling Books on Amazon

Maths and Stats for Web Analytics and Conversion Optimization
This expert guide will teach you how to leverage the knowledge of maths and statistics in order to accurately interpret data and take actions, which can quickly improve the bottom-line of your online business.

Master the Essentials of Email Marketing Analytics
This book focuses solely on the ‘analytics’ that power your email marketing optimization program and will help you dramatically reduce your cost per acquisition and increase marketing ROI by tracking the performance of the various KPIs and metrics used for email marketing.

Attribution Modelling in Google Analytics and Beyond
Attribution modelling is the process of determining the most effective marketing channels for investment. This book has been written to help you implement attribution modelling. It will teach you how to leverage the knowledge of attribution modelling in order to allocate marketing budget and understand buying behaviour.

Himanshu Sharma

Certified web analyst and founder of OptimizeSmart.com

My name is Himanshu Sharma and I help businesses find and fix their Google Analytics and conversion issues. If you have any questions or comments please contact me.

  • Over eleven years' experience in SEO, PPC and web analytics
  • Google Analytics certified
  • Google AdWords certified
  • Nominated for Digital Analytics Association Award for Excellence
  • Bachelors degree in Internet Science
  • Founder of OptimizeSmart.com and EventEducation.com

I am also the author of three books:

error: Alert: Content is protected !!