You might have seen them when you’re trying to share a link. There’s the easy-to-read URL, something like
www.ecowebhosting.co.uk/web-hosting, and then there’s a ? and then there’s just a pile of…something after it, so that the entire link looks like this:
What is all that, why is it important, and how can you make your own?
Welcome to the wonderful world of UTM tracking.
What is UTM tracking?
UTM stands for Urchin Traffic Monitor. Urchin was an analytics programme that was bought out by Google and turned into Google Analytics.
By adding UTM parameters to your URL, you can track how your visitors use that URL, and from that, see where they’re going, what they’re doing, and where you can optimise your site and your marketing campaigns even more.
How does it work?
There are five parameters you can add to each URL:
utm_source— identifies where the visit came from
utm_medium— identifies what type of link this is
utm_campaign— identifies what campaign this is a part of
utm_term— identifies what search this came from
utm_content— identifies exactly what was clicked in order to get here
utm_source is required, but you can use the rest only as needed. Start with a question mark, add in your
utm_source, and then attach each additional parameter with an ampersand, so it looks something like this:
Because these parameters are logged in Google Analytics, they make it easy to track people coming to your site.
For example, these are some of the
utm_source parameters we have that show up in our Google Analytics (under Acquisition > Traffic Acquisition > Session Source/Medium):
You can see the details I’ve put into
utm_medium in this list, making it easy for me to see which emails result in the most traffic to the site.
If I go into Engagement > Pages and Screens, I can search for a particular set of pages (in this case
/domain-names), and by adding a filter, I can then see which UTM tracking labels point people to a certain page:
How do I make my own UTMs?
The beauty of UTMs is that you can put anything you want into them, provided it fits the general idea of what it’s supposed to be. Want to name every button that takes people to the home page
homebutton? That goes into
utm_content and it’s good. Want to name your campaign
facebookmillionaires? You might want to lower your expectations, but you can name
utm_campaign whatever you want.
Just work out what you want them to say, make sure you’d recognise them when they show up in your Analytics, and add them to your links.
Ours, we put in a bit more detail, just because it makes it easier to track for me. So, for example, in
utm_source, I have:
[type of link]-[date]-[campaign]
This means that when it’s something like:
I can instantly see that it’s a newsletter (
n) sent on April 14th, 2023 (
140423), and it was the April newsletter (
I also add more to the
utm_content as well, especially with emails:
[location]-[link type]-[where it's going]
So if I want to see which link in an email is effective, I can go to Acquisition > Traffic Acquisition > Session Source/Medium and filter the data by Page Path and Screen Class and Session Manual Ad Content. Then by adding Session Manual Ad Content, I can see exactly which link was used in which email.
Do I have to write them out by hand?
Thankfully, no. Google has a Campaign URL Builder that will generate all the UTM data for you. You still need to figure out what each field will say, but at least they’ll build it for you.
Or, if you know your way around a spreadsheet, you can create one that’ll build the URLs for you just as you want. I have one that ties into a Google Form, so all I need to do is select certain attributes, enter in some information, and it spits it out for me in a spreadsheet.
If you want to see where people are coming from, UTM data is a fantastic way to track them. It takes a little work to set up, but once it’s rolling, it really brings in the data.