How Accurate is Your Google Analytics Data?

Let's start

Using google analytics can be quite a leap of faith. A lot of things are new while others don’t add up. At back of your mind there is always that sneaking suspicion that something might be wrong. 

Below I have mentioned some of the common reasons for inaccurate reports, why it happens and steps you can follow for better accuracy, common checkpoints covered below include:


  1. Your Domain As a Referral/Self-Referral
  2. Low Bounce Rate
  3. Payment Method As a Traffic Source
  4. Mismatching Analytics & Actual Sales
  5. Duplicate Page URLs In Reports

1. Your Domain As a Referral / Self Referral

Self-referral in google analytics is the case when you see your own domain listed in the referral reports. This is a common error which indirectly indicates a problem with your tracking code installation.

 self referrals google analytics

self referrals google analytics

It’s common to have a few visits from self-referrals, but a huge traffic is an indication of inaccurate google analytics reports.

Causes of Self-Referrals in Google Analytics

1. Cross Domain Tracking code errors

 cross domain tracking

cross domain tracking

Cross Domain Tracking is done when you are using multiple domains. A single mistake while configuring a cross domain tracking can deliver inaccurate reports in google analytics.

If you made a mistake setting up cross domain tracking, you would see your own domain showing up in referral reports.

2. Landing page missing analytics tag

Let’s suppose you have set up a landing page named as page A and is missing the analytics tag. One of the users enters page A via Adwords ad and moves to next page B. Now page B will track the source of traffic as page A instead of the Ad.

 landing page missing analytics tag

landing page missing analytics tag

How to fix the landing page as a self-referral

  1. Make sure to properly tag the landing pages.

  2. Add your domain to the referral exclusion list

3. Cookie Timeout

If you have a non-interactive or video/audio content it might be possible that visitors open your site in the background. By doing this the session will be expired after 30 minutes and when the visitor gets back to the site it will start a new session with a referral of the last page you visited.

 too many tabs open

too many tabs open

To avoid this issue increase your cookie/ session timeout to a maximum of 60-90 minutes. By doing this the visitors who open your site in the background for a long time will count as a single visitor.

2. Low Bounce Rate

Bounce rate is a very annoying metric in google analytics, which always make you fearful, especially when you see a very low bounce rate.

I have seen people frequently questioning about the low bounce rate in analytics communities. A very low bounce rate means a miscalculation which leads to inaccurate reports.

Causes of low Bounce Rate

There are at least three possible reasons for a low bounce rate of your website.

1. Multiple google analytics tracking codes

Whenever a user lands on your site, analytics tag sends a single pageview to google analytics. But what if you have added double analytics tracking code to the same page? Does this still send a single pageview or multiple pageviews?

Yes, I know what you would answer, it will send double pageviews to your analytics account. Let’s look at how a bounce rate is calculated:

Whenever you see a very low bounce rate in google analytics, check your site with google tag assistant to make sure your site doesn’t contain multiple tags.

2. Using iframe on your website

This is a very common case where users face very low bounce rate due to the iframe. Let’s say you have an iframe on a page, and both contain the analytics tracking code. When a user visited that page a single pageview will be sent to google analytics and after the iframe is loaded it will also send a pageview. This again sends multiple pageviews. Remember that your site should always send a single pageview to google analytics account.

3. Auto Event Tracking

It’s important to keep in mind that any implementation of Event Tracking that automatically executes on page load will result in a zero bounce rate for the page.

Event tracking in google analytics is very useful if implemented correctly. But it can be a red flag to bounce rate if configured the wrong way.

If you are firing an event after a pageview is sent to google analytics, it will be considered as an engagement and will indirectly result in a very low bounce rate.

The best way to avoid this issue is to send the fourth parameter i.e non-interaction. This way the event will not be counted as an engagement.

ga (‘category’, ‘action’, ‘label’, ‘noninteraction’)


Always avoid sending multiple pageviews to your google analytics account and make sure your website doesn’t contain multiple analytics tags.

3. Payment Method as a Traffic Source

Google analytics by default tracks every incoming traffic to your site and marks it as a referral if it comes from a different website. Every time a new visitor/referral visits your site, google analytics triggers a new session.

 third party redirection

third party redirection

The Problem

A common tradition which still makes the google analytics data inaccurate is showing up the payment method as a referrer.

When a visitor begins shopping on your site, a new session is triggered and as he browses different products and adds products to cart, it’s all included in the same session. Once the user proceeds to the payment he is redirected to the third party payment site(i.e Paypal). When he finishes the payment, he is redirected back to your site and at this point google analytics tracks the third party site as the new referral.

This is why you will see the third party site as a referral in your analytics reports.

Excluding the payment gateway from the referral list

The best way to resolve this issue is to add the third party site to the referral exclusion list.

By doing this, the site will no longer show up in the google analytics referral reports.

4. Mismatching Analytics & Actual Orders

A common issue which is faced by many online retailers is the discrepancy between actual sales and analytics ecommerce sales.

It’s quite common to have a 5% discrepancy, but more than 10% mismatching is simply a red flag for handling your ecommerce data.

Common Reasons of Mismatching Sales

1. Google Analytics is a recording tool, not an accountant

Google analytics only records the activity that is happening on your ecommerce site. It only keeps record of the customers reaching the order confirmation page. When a customer purchased a product from your site, GA track it as a sale.

What if a customer returned your product due to a fault? Google analytics does not process historical data and there is no way of excluding this sale from analytics ecommerce reports.

This might be the reason for 5%- 10% discrepancy between your actual sales and sales recorded by google analytics.

2. Ask your developer to put correct ecommerce tracking code

One of the reasons for data discrepancy is the missing ecommerce tracking code. Your developer might have forgotten to add the tracking code to the order confirmation page, which is why google analytics is not recording any sale.

Make sure you have added ecommerce tracking code to all of your pages specially the order confirmation page.

3. Have you enabled enhanced ecommerce?

Enabling enhanced ecommerce(admin>>ecommerce settings>>enhanced ecommerce settings) in google analytics helps in collecting more data from your ecommerce site and more ways of tracking it and thus reducing the data discrepancy.

 enable enhanced ecommerce

enable enhanced ecommerce

There are many factors which lead to inaccurate sales reports and there will always be a little gap between reality and analytics reports.

5. Duplicate Page URLs in Reports

You will occasionally notice that the same page shows up multiple times in your pages report, making it hard to see total pageviews for the page. This generally happens due to query parameters added to end of urls.

Query parameters are the strings attached to the actual URL and they are used for tracking campaigns as UTM parameters. Usually, query parameters come from the site search and are helpful if used correctly.

Actual URL:

With query parameters:

How to remove query parameters?

To view the accurate reports in google analytics you would need to remove query parameters. This way you will get the reports of the actual reports without any duplicates.



There is no doubt that google analytics is a great tool for analyzing your online business. By ensuring that you can trust the data, you can be sure that you are making the right decisions for your business.

p.s. I am currently helping clients audit and verify that their data is accurate by checking data accuracy on a customized 30 point checklist. For help ping me here.

Don't miss out when new resources launch

Our customer analytics experts share wisdom only once a month

Share now
We are customer-analytics consultancy that transforms messy data into actionable insights that will help you grow your company and make better data-backed decisions.