Checklist for Google Analytics audit in 2016-2017

Google Analytics checlist for audit
Nowadays, many websites have Google Analytics installed. Sometimes we can see discrepancies between Google Analytics and other tools, or we take a new client and need quickly check data collection. In such cases would be helpful to make an audit of overall tracking for the website.
The checklist for Google Analytics audit below helps to do that and may be useful for agencies, digital analytics consultants, and even website owners. It based on my experience of work under web analytics for different business types.

Common Google Analytics configuration

  • Deprecated Google Analytics code installed on the website;
  • Missed Google Analytics tracking on some website pages;
  • Duplicated Google Analytics or Google Tag Manager snippet;
  • GA property doesn’t contain “Raw Data” view[optional];
  • Developers and/or agencies sessions were not excluded from reports;
  • Using of incorrect filters in GA view or account;
  • Demographics and interest reports were not enabled and/or GA tracking code wasn’t updated to support these reports;
  • Expired Google Experiments code installed on pages;
  • Timezone in Google Analytics view settings doesn’t match with client’s timezone or with timezone of client’s server[optional];
  • Currency in GA view settings is incorrect;
  • “Bot filtering” option disabled in GA view settings;

Tracking of traffic sources

  • Google Analytics isn’t integrated with Google Adwords[optional];
  • Google Analytics isn’t integrated with Google Search Console[optional];
  • Cross-domain tracking works incorrectly(traffic reports include self-referrals, website own subdomains, payment providers);
  • High percentage of (direct)/(none) traffic;
  • Missed UTM-tagging of custom campaigns;
  • The same custom campaigns with different register in UTM-tags(“Newsletter/email” vs “newsletter/email”).

Tracking of user behavior and website content

  • Incorrect goals tracking;
  • Collection of unuseful GA events;
  • Tracking of internal search doesn’t set up;
  • Unnecessary technical GET-parameters were not excluded in GA view settings;

Tracking on the E-commerce websites

  • Incorrect or missed e-commerce parameters for transactions or products;
  • Transactions discrepancy between GA and other sources;
  • Duplicated transactions;

Common Google Analytics configuration

Deprecated Google Analytics code installed on the website

How to identify:
Deprecated Google Analytics code(classic) looks like:

Modern code(Universal Analytics) looks like:

Why important: classic GA code was deprecated in 2013 so it doesn’t support many important tracking features. This may be a reason for one of the common mistakes: using of mixed old and new versions of the tracking codes.

Missed Google Analytics tracking on some website pages

How to identify: if a website has self-referrals(sessions from its own domain or subdomains), add “Full Referrer” as the second parameter in “Referrals” report. List of pages from your domain potentially contains pages, where Google Analytics code was missed.

Why important: missed tracking code breaks user’s session, that may be a reason for cross-domain tracking issues and incorrect conversions attribution, increasing the number of users and so on.

Duplicated Google Analytics or Google Tag Manager snippet

How to identify: check website source code or use Google Tag Assistant plugin for Chrome. Also, very low bounce rate(1-5%) may be the result of duplicated tracking code.

If Google Tag Manager snippet was installed twice on the same page, it may send duplicated hits to the Google Analytics and other apps.

Why important: duplication of tracking code influences on the bounce rate and other website metrics.

GA property doesn’t contain “Raw Data” view[optional]

Using of one “untouched” view(view without filters, goals and so on) for GA property may be useful to check(from time to time), how other GA settings(like filters) are working.

Developers and/or agencies sessions were not excluded from reports

How to identify: for example, you see many sessions from “127.0.0.1/referral”.
In my practice, I have a case when many transactions in one GA property were attributed to (direct)/(none) source/medium. After more deep analysis with my client, we identified, that almost all of transactions were from one city in India, where client’s developers were located – but their traffic wasn’t filtered.

Using of incorrect filters in GA view or account

Sometimes GA accounts/views have filters applied. Makes sense to check them all and make sure the are working correctly: because after filtering we can’t change the data. This is the case when “Raw Data” view may be helpful.

Expired Google Experiments code installed on pages[optional]

This is not important issue, but if clients have finished Google Experiments sometimes they do not delete these codes from websites for months.

Timezone in Google Analytics view settings doesn’t match with client’s timezone or with timezone of client’s server(optional)

In my practice, I had a client, who has a discrepancy between sales in Google Analytics reports and server. After deep analysis we identified, that client GA view timezone was “UTC – 08:00”, but server timezone was set up to “UTC – 08:00”. Because of this, some transactions that happened at 11pm, Oct 18(by server time) were applied to 2am Oct 19(by GA reporting time). That influenced on Revenue parameter in daily/weekly reports(client had 10-15 transactions per hour).

Currency in GA view settings is incorrect

This is not so important issue, but for those GA consultants who work with worldwide clients makes sense to check, what currency set up in GA view.

“Bot filtering” option disabled in GA view settings

This option requires one click but may save data untouched by spam bots and spiders.

Tracking of traffic sources

Google Analytics isn’t integrated with Google Adwords[optional]

This option is helpful on those websites, where used Google Adwords as the traffic source. It allows importing useful Adwords data(ROI, CPC, etc.) to Google Analytics.

Google Analytics isn’t integrated with Google Search Console[optional]

If you would like to import some SEO data from Google Search console tool(queries, positions on search, clicks, etc.), would be great to check if this tool linked with Google Analytics.

Cross-domain tracking works incorrectly(traffic reports include self-referrals, website own subdomains, payment providers)

This is one of the most important things that I always check in my client’s GA accounts.
If cross-domain tracking works incorrectly, attribution of conversions or transactions, a number of sessions and other traffic sources data may be wrong.
How to identify:

  • Website has a significant self-referral traffic(sessions from your own domain);
  • Website has big percent of (direct)/(none) traffic;
  • Significant number of transactions attributed to payment provider(PayPal, Stripe, etc.) instead of real traffic sources;
  • For websites where implemented authorization by Google, Facebook, LinkedIn: many sessions from service domains(like accounts.google.com / referral). OR referral visits from social network pages, where user potentially authenticated(use “Referral Path” as secondary dimension in source/medium reports):
  • Google Analytics cross-domain tracking

How to fix: each cross-domain tracking issue is unique. I think the best way is to hire somebody experienced in Google Analytics consulting.

Missed UTM-tagging of custom campaigns

Google provides a simple opportunity for tracking of custom campaigns – UTM-tagging(adding utm_source, utm_medium, utm_campaign and other 2 optional parameters at the end of URL). But many websites don’t use this opportunity.

How to identify:

  • Check website’s email newsletters – all links should be UTM-tagged;
  • Check website posts on Facebook, Twitter, LinkedIn – links to the website should be tracked as well;
  • Check website YouTube channel – links to the website should be UTM-tagged.

In some cases, this is not necessary to tag everything.

But, let’s say you have a Facebook community with untagged links and ability to log in to the website via Facebook.
You see 10% of visits from facebook.com / referral for a certain period of time. How many were these sessions from FB community? How many sessions were after FB login and should be excluded from reports? How many sessions were from other links to the website, published in FB?
UTM-tagging will answer such questions and make your reports more structured

High percentage of (direct)/(none) traffic

Usually, percent of (direct)/(none) traffic is around 20-25%(for blogs, forums, and similar websites this percent will be higher).
How to identify: if the website has the high percent of direct sessions or many conversions were attributed to (direct)/(none). This complicates the analysis of the performance of traffic sources.

Potential reasons:

  • Incorrect cross-domain tracking;
  • GA tracking snippets missed on some website pages;
  • Links to website on email campaigns were not tagged;

Similar custom campaigns with different register in utm-tags(“Newsletter/email” vs “newsletter/email”)

Google Analytics is case-sensitive tools, so source/medium “Newsletter/email” and “newsletter/email” are different for GA. Makes sense use the same case in all UTM-tagged links(lowercase is better by my opinion).

Tracking of user behavior and website content

Incorrect goals tracking

Makes sense to check each goal: does it have conversions for past weeks/months? Was it configured properly? Is that possible to compare GA goal conversions number with other data sources?
Also useful to “simulate” users actions and check each goal in Real-time reports.

Collection of unuseful GA events

Often website has some add-ons/plugins/extensions, that are sending hundreds of events. Sometimes is better to switch them off to avoid a mess in events reports.

Tracking of internal search doesn’t set up

Internal search tracking in GA is a useful tool, that allows understanding users needs or problems in UI. It is easy to set up internal search tracking – just to add query parameter in GA view settings, but some clients don’t do that.

Unnecessary technical GET-parameters were not excluded in GA view settings

Let’s say you are analyzing “All pages” report and see pages like “/?src=email_newsletter_11-05-16”. Obviously, “src” parameter added to identify source where a user came from. But GA uses UTM-parameters to identify traffic sources.
Also, in this case pages”/” and “/?src=email_newsletter_11-05-16” are different for Google Analytics. However, both are the same page – Home Page.

Why this is important: such parameters will increase the number of pages in reports and will influence on parameters like “Pageviews” or “Bounce Rate” for a separate page.

How to fix: use “Exclude URL Query parameters” option in GA view settings.

P.S. we should be careful choosing Query parameters – some of them are really changing a content of the web page and shouldn’t be excluded.

Tracking of user behavior and website content

Incorrect or missed ecommerce parameters for transactions or products

Google Analytics Ecommerce tracking requires using several parameters.
Some client’s developers may mix up them – for example, use SKU parameter instead of the Product name in JavaScript code.

In my opinion, the good practice is to use parameters structure, recommended by Google, and send as much E-commerce parameters as possible on this website.

Transactions discrepancy between GA and other data sources

When I working with my “E-commerce” clients, one issue that happens every time – discrepancy in transactions number.
Ask your client for a list of transactions breakdown by date and compare with GA e-commerce “Transactions” report. Some of the transactions may be lost. Or otherwise, GA reports may have some “additional” transactions.

Why this happens: depends on each unique website and user’s behavior.
Examples:
a. Transaction tracking code is incorrectly firing from time to time.
b. Some users are leaving “thank-you-page” before GA tracking code was loaded.
c. Some websites require to confirm transactions and this may happen offline. If GA tracked transaction, but it was not confirmed, GA may get some extra transactions.

In my opinion, 3-5% of discrepancy between GA and client’s database is normal. But if the difference is higher – makes sense to find a solution for that.

How to fix: talk with client’s developers and try to find a solution together. Make test transactions and check JavaScript code(a,b), implement refunds for not-confirmed transactions(c), or even use Measurement Protocol for transactions, that were 100% paid(c).

Duplicated transactions

This issue is similar to previous: in some cases, each unique transaction may be tracked 2, 3 or even more times. This will influence on “Revenue” report, as every duplicated transaction increases Revenue metric.

How to identify: I usually create a simple custom report with “Transaction ID” dimension and “Transactions” metric. “Transactions” metric should equal to “1”, otherwise this transaction is duplicated:

Google Analytics duplicated transactions
Potential reasons:
Ecommerce Tracking code should fire only once per transaction. So, if user reloaded “thank you page”, this code shouldn’t fire again. But often developers ignore this and fire code every time when the page loaded. Users may reload the page – this doesn’t mean transaction happened again, isn’t it? Also, some websites send to users confirmation emails with a link to the “thank you page”. When a user clicks on this link, a transaction will be tracked again and may be attributed to the (direct)/(none) or to Email channel, instead of “real” source.

How to fix: Ask developers to fire this code only once per transaction. OR, if you have GTM access and JavaScript skills, you can try an approach, described in this great article.

Summary

Hope this list will help some consultants or website owners to check their websites Google Analytics configuration from time to time and get correct data in reports.

I understand, that it is not possible to describe all issues, because of my limited experience and my personal vision. So if you think I missed something important – feel free to leave a comment , your opinion is very important.

Digital analytics consultant.

Want to improve your website performance?
Contact me!