To track the interaction of users with marketing assets (banners, videos, links, ...), we use URLs enriched with special parameters called UTM parameters.
These specially formatted URLs are what we call UTM links.
Unfortunately, UTM parameters are often misunderstood by marketers and this generates all sorts of issues with tracking.
In the following you'll find useful information to straighten your understanding of UTM parameters, so you can use them correctly 100% of the time and get your tracking sharp as a razor!
These are the 5 UTM parameters most commonly used for tracking:
At the moment of writing GA4 supports reporting only for the 3 required parameters. This means that adding utm_content and utm_terms won't result in better tracking (since you cannot make those reports yet).
This is no excuse to avoid using utm_content and utm_term.
In fact, as soon as reporting for those parameters will be available in GA4, you'll want to be using all 5 UTM parameters in your UTM links.
To each of the 5 UTM parameters we can assign any arbitrary value.
However, it is necessary to choose those values using some logic and some naming convention... otherwise we'll end up with meaningless (and possibly redundant) values that will make tracking impossible.
Before we dive into the most common mistakes that render tracking useless, we need to get a better understanding how each parameter is supposed to be used...
If this were a road trip, utm_source would be the city you start from.
Ideally, utm_source contains the name of the website where the marketing asset was published.
If this were a road trip, utm_source would be the vehicle you travel by.
utm_medium must contain the type of medium used to distribute the content... and you must pay special attention to what you choose, because this value cannot be arbitrary!!! (more on this below).
If this were a road trip, utm_source would be the occasion you travel for.
Marketing operations are organized in campaigns.
For tracking purposes, campaigns are very important since a campaign can serve as the umbrella for the distribution of marketing assets on different sources and mediums.
Marketers should be fully aware of which marketing campaign they are working on and they should follow the naming conventions associated to that campaign (more on this below).
If this were a road trip, utm_source would be the make and model of your vehicle.
The parameter utm_content tracks the specific marketing asset used in the distribution effort.
This means that this parameter has to describe the marketing asset.
Of all the UTM parameters, utm_content is the one that can get quite complex if used to its full power.
To be able to make the most of utm_content, you'll need to do some serious planning and define clear rules for the distribution of your marketing assets.
As for all tracking things, it is important to define naming conventions so you will describe marketing assets always in the same way (and then you'll be able to track them).
Essentially, clickable content can be distributed in just 4 formats.
Information such as placement or size can be appended to the type of content allowing for very granular tracking of marketing assets and their placement.
Here are a few examples:
As you can see, the possibilities are endless and the structure you use to build your utm_content parameter ultimately depends on what you want to track.
If this were a road trip, utm_source would be the theme of your trip (or the music you play when traveling).
You can use this parameter to track the performance of different marketing messages.
If you make a list of "allowed" marketing messages and you stick to it when you create your marketing assets, you track which one is the most successful by using the utm_term parameter in your UTM links.
Here are a few examples:
When used properly, utm_term can help uncover great insights on which message works best with our audience!
The good of UTM parameters is that we can give to them any arbitrary value.
This gives marketers great flexibility for tracking marketing assets and campaigns.
The bad of UTM parameters is that we can give to them any arbitrary value.
This creates innumerable opportunities for screwing things up.
Of all the mistakes one can make with UTM parameters, choosing a medium that is not recognized by Google Analytics is the worst of all sins.
In fact, utm_medium cannot be chosen arbitrarily but it must be chosen from a list of allowed values.
Here you find the list of allowed values for utm_medium: GA4 Default Channel Grouping
Take your time to understand that list and pick the value that describe correctly the medium you're using to distribute your marketing assets.
If the values passed to the UTM parameters are arbitrary and inconsistent, meaningful tracking becomes impossible.
Inconsistent UTM parameters can be generated under 2 different circumstances:
UTM parameters are case-sensitive.
This means that Facebook is different from facebook.
Every time you mix up the letter case of the values of your UTM parameters, you create extra entries in your tracking.
While this cam be fixed with filters in Google Analytics, it should be avoided in the first place.
One thing is to get the letter case wrong, another issue entirely is to use different values for the same thing... and this happens more often than you think!
Here are a few examples:
As humans, we know these variations all mean the same thing... but for a tracking system they are all different entries and they are treated as such, generating countless variations that render reporting more laborious and painful.
While different marketers in the same team may have different opinions on which of the naming convention above is the best one, in the end they must come to an agreement and set things in stone by agreeing on which naming rules they are going to use and by writing down the actual values "allowed" for campaigns, sources, contents, and terms.
This is another very common mistake, a mistake that probably comes from poor understanding of what UTM parameters actually are.
At their core, UTM parameters are just - well - URL parameters.
This means they are a pair of key and value to be appended to a URL.
So far so good... no one gets this wrong.
Things start to go sideways when you have to append those parameters to an actual URL.
URL parameters are appended to the original with a ? and they are concatenated with a &.
So if the URL you want to share is https://mysite.com/awesome-page, this will turn into:
...and even this is something that most people get right.
The problem is when one or more parameters are already appended to the original URL.
Take this for example:
How would you append your UTM parameters here?
Most marketers would do it like this:
https://mysite.com/awesome-page?contentid=1234&userid=5678?utm_source=something&utm_medium=something&utm_campaign=something&utm_content=something&utm_term=something..and that's WRONG!
Can you say why it's wrong?
Because there can be only ONE question mark in a link, but in the URL above we have two!
The link above is broken and its UTM parameters won't work.
The ? symbol has to be used ONLY to append the first URL parameter, whichever that is. All the subsequent URL parameters must be appended with the & symbol.
This is a very simple rule that even a 5 year old can grasp... but in the era of copy/paste it kills more URLs than you can imagine.
If you are a smart reader you may have already figured out the 3 best practices that guarantee rock-solid UTM links.
Here they are
If you follow these 5 rules, all your UTM links will turn out perfect for tracking and they'll allow Google Analytics to assign the correct attribution to all your visitors.