Google Analytics is a great tool that provides you with information about what your users are doing on your website, and this data informs critical business decisions that we make. But is that data accurate and can we really take what it is telling us at face value?
Google Analytics reports don’t always show you what you might think, so you need to properly understand what the reports actually mean and adapt them if necessary.
1. It’s reporting traffic that aren’t your users…
… because your traffic includes internal traffic
Internal visitors to the site are likely to behave very differently to your users and can skew all the reports, particularly engagement metrics and conversion rates.
Solution: Identify common characteristics of internal traffic (usually an office IP address) and create a filter to exclude all traffic that shares this characteristic.
… because your traffic includes spam
Depending on the amount of traffic on your site, spam can account for anything from less than 1% of traffic to over half. Either way, it is still a good idea to filter it out because, much like internal traffic, they are not your audience and so they do not behave like your audience. Therefore, any data that includes spam can be skewed.
Solution: First of all ensure that bot filtering is enabled in view settings, then create a filter to include only traffic on your site’s hostname. There are also some filters that can be created to remove known spam referrers.
… because your traffic includes self-referrals
Self-referrals are referrals from pages within your own domains. They can not only cause your referral metrics to be inaccurate, but more importantly, they could be indicative of improperly-configured cross-domain tagging resulting in your users generating a session per domain and thereby artificially inflating session counts.
Solution: Ensure that all pages on your site are correctly tagged with the Google Analytics tracking code, make sure that cross-domain tracking is configured correctly on all your pages, and check your cookie domain settings in your tracking code.
2. The data has been fragmented unnecessarily…
… due to case-sensitivity
As Google is case sensitive, /contact and /Contact would be counted as different pages, yet the user would see the same page.
Solution: Create a filter on your account to force all URIs, search terms, and campaign dimensions into lowercase format.
… due to the presence of query parameters
URL query parameters can cause a huge fragmentation of content in your reports, making it extremely difficult to measure the effectiveness of your pages.
Solution: You can specify which query parameters should be stripped out of the URL in view settings. Be careful to only exclude those that manipulate content within a page, e.g. sort filters, and not ones that provide unique content or ones that you want to report on later.
… due to a slash
Depending on your technical setup, the site might report a pageview with either a slash or without for the same page.
Solution: Create a filter to either add a slash to, or remove a slash from, all URIs.
3. Your data is not fragmented correctly…
… due to multiple domains
If you are tracking across different subdomains or domains it is impossible to distinguish between the different URIs in reports, e.g. www.domain.co.uk/contact and sub.site.co.uk/contact would be reported as the same page /contact.
Solution: Create a filter to prepend the hostname to the URI, which will then report the whole URL and therefore separate the data.
4. The metrics are wrong…
… because it can’t calculate time accurately
To calculate how long a visitor spends on a page, Google uses the time of the next page view to determine the time you spent looking at the current page. This inevitably means that it is impossible to report time spent on the last page of any session, so Google reports it as zero.
Solution: Do not trust the time on page metric for pages with high exit or bounce rates and do not trust average session duration at all because all sessions will be affected by an exit page calculation of zero. There are various advanced workarounds for this if it is an important metric.
… because it doesn’t correctly classify acquisition data
Google classifies referral traffic according to the rules that it has set up, so it recognises traffic coming from google.com as organic search traffic but will quite often miss other traffic and classify it as referral.
Solution: Edit the default channel groupings and/or create a filter for organic search traffic. For email and social traffic, you should ensure that you are using comprehensive campaign tagging to manually set the parameters correctly.
5. The metrics are misleading…
… because the session count does not mean the total number of visits by a user
When a user first visits the site, their session count is 1 and then on every subsequent visit this count increases but they are still counted under the previous counts. So if 1 count of session equals 1,000 that means 1,000 people had their first session during the time period, not that 1,000 people had only one session.
Solution: Use this report cautiously.