The term “UTM” is commonly used to describe the concept of appending campaign parameters to your landing pages as a method of identification (i.e. utm_campaign, utm_source, utm_medium, etc.). It’s a very popular way of tagging paid or sponsored traffic to track what source it came from. Essentially, by adding a few parameters to a URL you can then precisely measure how different elements of your campaigns are performing. However, there are a few rules to follow to make sure your measurement is optimized and error-free. The consequences of ignoring these rules can range from skewed data to badly corrupted traffic.
If you’re only going to retain one rule, it should be this one:
NEVER PUT A UTM TAG (campaign variable) ON AN INTERNAL LINK
A classic example of this would be a site that runs multiple campaigns, including internal campaigns. Just like they do for external campaigns, the marketer wants to measure their internal banners with campaign variables. This seemingly innocuous error can actually have a substantial effect on the quality of your data in Google Analytics, because it corrupts your source data in a major way:
To properly understand why you should never use campaign parameters in internal links, you need to understand how the source is attributed in Google Analytics.
How sessions are attributed in Google Analytics
One of the benefits of Google Analytics is being able to analyze how users are getting to your site, and then to identify the traffic source that is the most profitable for you, based on your goals. However, this mechanism only works when the initial traffic source isn’t lost along the way. Unfortunately, that’s just what happens when internal links are tagged with campaign parameters.
Methodology review: A session customized with campaign variables for Google Analytics has three required parameters that define the origin of that session:
Examples:
Situation | Utm_campaign | Utm_source | Utm_medium |
The user did a Google search (automatically tagged – no tagging needed) | (not set) | google.com | organic |
The user clicked on a post from your Facebook page | BlackFriday-2016-Social | Right-Side* | |
The user clicked a link in one of your emails | 201611_black_friday_A | B2C List | |
The user clicked on an AdWords ad* | BlackFriday-2016-Social | cpc |
It is important to note that :
The four sessions described above will show up in your Google Analytics reports, like in this custom report:
However, in the campaigns section of your acquisition report, only the three sessions tagged with the “utm_campaign=” parameter will appear. Essentially, when this parameter is absent, its default value is “(not set)”. These sessions, by default, do not appear in campaign reports.
The problem with internal campaign variables that are applied to external links is that every time the campaign name changes, the session automatically ends and a new session starts, as mentioned on Google Analytics’ official support page:
It’s definitely a situation you’ll want to correct, as it can have a major impact on your Google Analytics tracking.
But what happens, strictly from an analytics point of view, when a campaign variable is set up on an internal link ?
In conclusion, it’s legitimate to want to measure the impact of your internal promotions. However, UTM tags should only be used to measure incoming traffic to your domain (coming from outside your site). If you want to do the same with internal links, you need to tag them in a specific way, and the data will be reported in a separate place: in the ecommerce section of Google Analytics under internal promotions. These tags require certain additional steps to implement, you can find details on Google Analytics’ official support site.