Omniture Tracking Codes and SEO

August 9th, 2011

Yesterday I was eavesdropping on a Twitter conversation between @alanbleiweiss and @omniturecare where they were talking about the use of Omniture tracking IDs and how they relate to SEO. It got interesting, and it reminded me of the solution we use on Ford.com for tackling this issue.

Any good SEO will tell you how much they despise tracking parameters on URLs. You know, things like ?utm_source= , ?bannerid= , ?intcmp= , etc…. Every good analytics package allows you to set up tracking IDs to track various things. They can be used to track campaigns, referring sites, affiliates, or even which link on the page somebody clicked on. In general, they’re very useful.

The problem with tracking IDs though is that they can really mess with a site’s SEO. Unless told otherwise (and we’ll get to that) when search engines encounter a URL with a parameter on it, they treat it as a separate URL than the version without it. Basically, by adding ?utm_source=feedburner to your URL, you’ve created 2 versions of the same page. In a word, duplicate content. That can be bad.

Fortunately, Google webmaster tools lets you specify specific parameters that you want Google to “ignore” – but that only works for Google.

Another solution is the canonical tag – but as Alan pointed out in his tweets, it’s only a suggestion and even though Google follows it, other search engines may not.

So webmaster tools and canonical may work for 90% of the cases and not cause problems, but sometimes that’s not good enough.

On Ford, we take an interesting approach. Take a look at this Truck Page and see if you can spot it. When you visit and hover over the name of a truck (like F-150) you see a clean URL. In this case it’s http://www.ford.com/trucks/F150/

When you click the button though you’ll notice that you actually visit http://www.ford.com/trucks/f150/?fmccmp=fvlp-tt-cons-f150 – a URL with a nice tracking code that tells us you clicked on F150 from the left column rather than the middle or right. We then use that to do other analytics and customizations that are beyond the scope of this post – but it’s a useful and required tracking code.

Why do we do that? Simple, because we don’t want to count search engines in our analytics and we don’t want them to index the URLs that have the tracking code in them – as that would also bias our data.

So how do we show you (and search engines) a clean URL without parameters but take you (and not search engines) to the one with parameters? Easy – we use the HTML/Javscript onClick event.

Essentially, the code looks like this:

<a href="http://www.ford.com/trucks/f150/" onclick="javascript:[Function that creates URL with parameter] return false;">F-150</a>

That extra “return false” in there isn’t an accident either. This technique won’t work without it.

This way search engines follow a nice clean href, but users who actually click get the tracking ID appended. This technique isn’t guaranteed by itself. It’s just one extra step we can take to try to keep the tracking parameters hidden. Combined with canonical and webmaster tools parameter exclusion it works pretty well to prevent those tracking IDs showing up in search engines.

Entry Filed under: Main

1 Comment

  • 1. Ryan  |  August 10th, 2011 at 2:38 pm

    Again. the JS implementation above isn’t a catch-all (and we use a javascript function that does a few things, not just a simple document.location)

    Combined with canonical and other best practices, this is just one more precaution we can take.


About Ryan Jones

Name: Ryan Jones
Alias: HockeyGod
Location: Michigan
Company: Team Detroit
Title: Sr. Search Strategist
AIM: TheHockeyGod
Pets: Who Dey

Twitter & Klout



My Websites

Internet Slang Dictionary
Fail Pictures
FeedButton
Translate British
TextSendr
URL Shortener
Bad Words
WoW Slang
Free Softball Stats

Buy My Book

Recent dotCULT Posts

Related Posts: