How do you exclude yourself from Google Analytics or Omniture SiteCatalyst?

Google Analytics Exclude YourselfLast year I blogged on excluding yourself from web analytics reporting.  In particular, I dove into how to manage large numbers of IP addresses in your exclude filters for Google Analytics.  But the landscape has changed since then.  Now the methods need to be tweaked and there are some gotchas worth sharing on how to exclude yourself.

Background

Depending on the size of your company, or more importantly the visitorship of your websites, the impact of internal visitors to your reporting could be huge and misleading.

Even for some of my tiny sites where I’m looking for traction in the early stages of life, I don’t want my footprints to be muddying up my web analytics.

Fortunately most web analytics packages allow you to remove, or at least hide, yourself and your visits.

When I refer to “my footprints” I’m really talking about me, my company, my client’s staff maybe even vendors.  Anyone that would be considered “internal traffic”.

Methods

The two most common methods for excluding yourself from your web analytics reports are: cookie-based and IP/domain exclusion.  There are pros and cons to each and that’s why Google Analytics and Omniture’s SiteCatalyst leave the decision up to you by providing you both options.

Cookie-based Exclusion

  • PROS:
    • For mobile computers or computers that regularly connect via dynamic IP addresses, this is the only method that works.
    • If there are devices on the same IP (not internal IP, but rather Internet-facing IP) as you then again you have to use cookies
  • CONS:
    • If your machine or software regularly deletes cookies (browsers can be configured to do this on closing) then you will need to continually re-add the cookies
    • Once a visit has been excluded via cookies, they cannot be retrieved.

IP/domain Exclusion

(Domain names just resolve to an IP address so they are lumped together for this purpose)

  • PROS:
    • If you do not have the ability to place cookies on the target devices (too many or remote) then you will have to exclude them via IP addresses or domains
    • You can use the filter on some profiles and not others. This allows you to have some reports with internal traffic excluded and others with the internal visitors included.
  • CONS:
    • You may not be able to inventory each and every one of your IP addresses, therefore leaving you open for contaminated web analytics reports.

Current Techniques

For Google Analytics, you need to go to your setup view and click on “Filter Manager >>”

Google Analytics Filter Manager

Google Analytics Filter Manager - Click To Enlarge

From there click on “Add Filter”

Google Analytics Add Filter

Google Analytics Add Filter - Click To Enlarge

GOOGLE ANALYTICS – IP/DOMAIN EXCLUSION

There you will name the filter “Home Router” or “Corporate Office IP”, choose “Predefined Filter” and choose to either exclude based on IP address or domain.  It’s that simple.

Google Analytics Filter Types

Google Analytics Filter Types - Click To Enlarge

If you need to exclude many IP addresses, you need to dive into regular expressions which then lead you to the 225 character maximum and custom filters.  It’s not hard, but it’s also not 5 minutes of work.  I’ve built custom filter lists numbering over 30, encompassing over 200 IP addresses.  Fun times!

GOOGLE ANALYTICS – COOKIE EXCLUSION

Here you’ll need a custom filter that Google has done a great job of explaining it in detail.

Google Analytics Cookie Filter

Google Analytics Cookie Filter - Click To Enlarge

Note the code needed on the exclude.html page had been updated with the latest asynchronous Google tracking code snippet.  Here’s the HTML code from a site that I have not yet upgraded to the latest code version.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Exclude Me</title>
</head>
<body onLoad="javascript:pageTracker._setVar('test_value');">
<p>This computer now has a cookie placed on it to exclude it from any Google Analytics reports.</p>
<p>If you delete your cookies, you will need to revisit/reload this page again.</p>

var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));


try {
var pageTracker = _gat._getTracker("UA-1111111-11");
pageTracker._trackPageview();
} catch(err) {}
</body>
</html>

Update: Here’s how the code should look using the new asynchronous tag.  Note, I haven’t actually implemented this yet, but it’s pretty straightforward.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Exclude Me</title>
</head>
<body onLoad="javascript:pageTracker._setVar('test_value');">
<p>This computer now has a cookie placed on it to exclude it from any Google Analytics reports.</p>
<p>If you delete your cookies, you will need to revisit/reload this page again.</p>

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-1111111-11']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();


</body>
</html>

With Omniture’s SiteCatalyst, there may (and should) be a quicker way (please comment if you know it), but I manage it by logging in and going straight to “Exclude by IP”

Omniture SiteCatalyst Exclude by IP

Omniture SiteCatalyst Exclude by IP - Click To Enlarge

OMNITURE SITECATALYST – IP/DOMAIN EXCLUSION

Here you’ll be able to add IP addresses one by one to your report suites.

Omniture SiteCatalyst IP Exclusion

Omniture SiteCatalyst IP Exclusion - Click To Enlarge

Two limitations: I don’t know of a way to add a domain exclusion, and if you want to exclude a large number of IP addresses, my Omniture account manager told me it would involve their professional services team ($$$).  I’ll have that need soon and I’m too stubborn to pay for something that should be free.

OMNITURE SITECATALYST – COOKIE EXCLUSION

To enable cookie exclusion, on that same “Exclude by IP” you will see a very well-hidden link title “click here” (brilliant label) that will take your cookie “jar”.

Omniture SiteCatalyst Cookie Exclusion Option

Omniture SiteCatalyst Cookie Exclusion Option - Click To Enlarge

Here you’ll either see a button that says “Exclude” (your computer is not yet excluded and needs to have a cookie placed on it) or “Reactivate” (your computer already has the needed cookie placed on it).

Interesting!  When I went to take my screenshot I ran into an error.  I tried multiple browsers, report suites and computers.  For now you’ll need to trust me the button usually exists where “undefined” is below.

Omniture SiteCatalyst Cookie Exclusion Error

Omniture SiteCatalyst Cookie Exclusion Error - Click To Enlarge

A very big downside of Omniture cookie exclusion implementation is that you must log on to SiteCatalyst to place the cookie.  So you can’t have non-users just visit a page that places the cookie on their machine.  You have to either grant them access or log in yourself from their machine.

Gotchas

  1. Beware of automatic cookie deletions.
  2. Dynamic IP addresses, ISP changes and location growth can quickly invalidate your filters.
  3. Creating new profiles (Google Analytics) or report suites (SiteCatalyst) requires you to apply your chosen exclusion technique to them.  It will not occur automatically.

I hope this helps explain the two exclusion methods, two web analytics vendors’ implementation of those methods and a few of the hazards to avoid when implementing them.

Please leave comments if this was helpful (or not)!

Don’t Count Yourself – Exclude your company from your analytical reports

No matter what the size of your company, your (and your co-workers) can have a significant impact on your analytics data.

Depending on the purpose of your website, internal visitors may or may be interesting to track.  If internal visitors are treated equally to exxternal visitors, then stop reading now.  Your analytical tool likely have you covered by default.

But if you don’t want to see your internal traffic on your reports, then keep reading.

There are three primary methods to exlude this traffic:

  1. Place a cookie on the to-be-excluded machine.
  2. Identify which domain name you want to exclude.
  3. Identify which IP address you want to exclude.

For Google Aanlytics, they have done a great job explaining the necessary steps.

For Omniture’s SiteCatalyst, go to “Admin” and choose “Exclude by IP”.  From there you can enter the necessary IP addresses as well as look for a link that takes you to the page where you can place a cookie on you machine.  Hint: The link is hidden in the Overview paragraph.

Here one trick you may need.  If you need to exclude multiple IP addresses from your Google Analytics account it could be very daunting to type them and apply them to many different profiles.  Note: I have not found a similar trick for SiteCatalyst yet.  Also note that if your IP addresses are adjacent to each other in number sequence, you can use wildcards more easily.  This is for distinct IP that are not remotely similar to one another.

Within your Google Analytics account, click on the Filter Manager option at the bottom.  Then choose “Add Filter”.  Name your filter “abc.com ip range 1”, Predefined Filter,  Exclude, “traffic from the IP addresses” and Match.

In the IP address field you will type in a regular expression.  So if you wanted to exclude 2 IP address with one filter, 2.2.2.2 and 3.3.3.3, you would type in:

^2.2.2.2|3.3.3.3$

You can continue to add your IP address until you reach the 255 character limit.  In my experience it safest to limit this to 10-12.  To create this long regular expression, use Excel with the CONCATENATE formula.  So you may need multiple filters depending upon how many addresses you need to exclude.

Now if you have just applied this filter to one of your profiles.  If you need to apply it many more, just go into Filter Manager, edit the filter and apply it to each appropriate profile.

Hope this helps.  Let me know how it goes.

Bookmark and Share

Are You Tracking Your Broken Inbound Links? Your 404 Pages Not Found?

I see this happening all of the time with company sites.  Not only do they have no handling of “404 page not found”, if they do handle it there is no tracking of what page the visitor was trying to reach.

So let’s think about this.  Someone has come to your site through a bad link and here’s the results.

  1. They get peeved by the bad link and abandon your site.  You just lost money.
  2. You even don’t know they came and went.
  3. You don’t know where the bad link is out on the web.  So you can’t fix it.

Now here are the solutions:

  1. Oh Snap!  Create a custom 404 page according to some best practices out there.  Each time I do this I look up great examples and borrow their ideas.
  2. Track hits to your 404 page.  This will show you which pages are not being found as well as show you where the links are coming from.  Have these reports sent to you on a daily basis.  Else you lose more traffic.
    • Google Analytics has a simple addition to the JavaScript tracking code on the 404 page.
    • Omniture SiteCatalyst: in the code of your 404 page, leave s.pageName=”” blank and set s.pageType=”errorPage”.  This will create a custom entry into your “Pages Not Found” report in SiteCatalyst.
  3. Once you know which pages are being requested but not found, create a 301 redirect to the closest matching page you have.  Don’t give them options if you know where they should be going.  If you’re not sure where they should go (you are the webmaster, aren’t you?), then send them to a tables of contents page.  Not the sitemap.html or sitemap.xml page, but rather a page with a few targeted pages that will help them decided.
  4. Contact the owner of the inbound links and fix the problem.  Sometimes it’s as simple as claiming your business on a review page, other times it’s going to be harder because they’re in someone’s blog comments.  At least you’ll have the 301 to back you up.

Don’t be blind to this visitor loss.  Everyone has bad inbound links.  Fix yours or lose money.

Bookmark and Share

Google Analytics and tagging your inbound links/campaigns

If you’re using Google Analytics, or any other web analytics tool, you must start now to tag your inbound links/campaigns so you can track their effectiveness.

Visit Google’s tagging page for details on how to use utm_source, utm_medium and utm_campaign, the three required parameters that make up campaign tracking.

Omniture’s SiteCatalyst has an even more extensive implementation of this through their default s_cid parameter that allows you to correlate campaigns across more dimensions than Google.  But no matter who you use, start using it now.

I’ve placed campaign tracking tags on my LinkedIn profile and even on the signature of my outbound emails.  You would be surprised how many people click on those links to learn more about you and your company.

A word of caution, I have found at least one place where you cannot place these campaign tracking tags, Google Local Business Center.  Surprisingly, the addition of the three utm_ tags above threw one of my customer’s listings into Flagged’ state for over a week.  That state supposedly sends it to Google for review.  After a week I couldn’t justify not having my customer listed in Google’s local search any more so I removed the tags.

Bookmark and Share