The Problem With Google Analytics E-Commerce Tracking

Have you ever noticed that your Google Analytics data sometimes doesn’t line up with your other data sources? Why is that and what can you do about it? Contributor Patrick Stox explains.


Many companies don’t understand why visitor data and e-commerce sales are underreported in Google Analytics, and this tends to cause confusion. In this article, I’ll explain why what you see in Google Analytics doesn’t jibe with what you view in server logs and sales data.

Google Analytics doesn’t have access to the actual sales data, only the data that is reported to it. While the Google Analytics data should not be used for financial reporting, it is a good indicator of sales and useful for data analysis.

Here are some reasons why the data is not accurate.

Missing Tracking Code On Pages

If the JavaScript code snippet for Google Analytics is missing, then the page can’t be tracked. While this is more common on sites that have individually-coded pages or run across multiple platforms, many sites that run on a single CMS (content management system) may still have this problem if they use different templates for different sections of a site — any of which may be missing the code.

Luckily, a program such as Screaming Frog can quickly identify any pages missing your analytics code by using a custom filter and searching for pages not containing your tracking ID.

Location, Location, Location!

According to Google Analytics, its script should be placed after the opening <body> tag. Many things can go wrong with the script, depending on its location.

One of the worst cases would occur when a user leaves a page before the code can fire, preventing tracking. The other end of this spectrum is that you could be sending the tracking code before the e-commerce data has loaded onto the page, causing the e-commerce data to be blank or report an error.

Latency And Communication

There can also be errors in the transmission and reception of the Google Analytics data.

The client could be slow or have a poor signal and lose packets, causing the user to fail to transmit properly. Google servers are not infallible either, and they can have issues with receiving the data.

The User Opted Out Of Analytics

Some of your users may be opted out of Google Analytics altogether. I use Google’s plugin for this so as not to inflate client data and because it’s easier than filtering my IP address for every profile. Some of your users might be doing the same.

JavaScript Errors

Many different items can cause JavaScript errors that prevent Google Analytics from firing properly. There can be conflicts with other scripts that block the Analytics code, variables with the same names, or special characters in your own product names, such as apostrophes, that can break the JavaScript.

Google Tag Manager can be set to listen for any JavaScript errors, which can help you track down issues in different browsers and operating systems. To assist you with troubleshooting, I would also recommend the Google Analytics Debug browser extension, which prints information that can help diagnose the problem right into Chrome’s console.

JavaScript Disabled

Some browsers and common ad blocking programs disable JavaScript, which means Google Analytics won’t see the data.

Without JavaScript, you will need a backup tracking method, and one of the best I’ve seen is from Simo Ahava; he uses Google Tag Manager to detect if JavaScript is disabled. If it is, he loads a tracking pixel that sends the data through the Measurement Protocol, which you can find here.

Google Is Sampling Data

For high traffic sites, unless you upgrade to an enterprise-level tracking solution, you will be stuck with sampled data. This causes even more data to be missing from Google Analytics and can make statistically significant insights more difficult.

For more information on limitations and data sampling for Google Analytics, check out

Date & Time Settings

Check both your website settings and Google Analytics to make sure they have date/time settings that are the same. Be aware of time zone discrepancies, as well.

These settings can affect daily sales reporting and may attribute sales to the wrong day, week, or even month, depending on when they occur.

Duplicate Data

Users’ behavior on transaction pages is always interesting. Many will refresh or even bookmark the page to come back to at a later time. I’ve even seen sites that send a confirmation email that leads to the transaction page and others that linked to the transaction page for their order history.

You will see multiple events with the same transaction ID if this occurs, but this problem can be mitigated by setting a cookie for the user or adding a field in the database that you can have Google Analytics check to see if the transaction has already been sent.

What else have you seen that caused data errors or discrepancies and what implementation issues have you run into?

Some opinions expressed in this article may be those of a guest author and not necessarily Marketing Land. Staff authors are listed here.

(Some images used under license from


Marketing Land – Internet Marketing News, Strategies & Tips


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.