Updated Feb 9, 2017.
You probably send out e-mail blasts or do some other type of outbound marketing to prompt people to visit your website.
So – is it working?
Without UTM parameters, you won’t have a clue. And you won’t be a smart marketer.
But you are a smart marketer, right? Your e-mail blasts contain a link to a blog on your website. And you, smart marketer, have added the UTM code to that link. You can gain not only a site visit, but also valuable hard facts about the effectiveness of your e-mail blast.
What does UTM stand for?
UTM is an acronym for “urchin tracking module.” The name hangs over from Urchin, a company Google bought back in 2005. Urchin software formed the basis of Google Analytics.
Three of the five UTM parameters are required:
- utm_medium – a big, all-encompassing category: “organic,” for example, or “email.”
- utm_source – a subset of “medium”. For example
- The Medium of “organic” covers several ways that organic traffic can come to your site.
- The three most common Sources, or subcategories, of organic are:
- So, "google / organic" would be a common source/medium category you'd see in Google Analytics
- utm_campaign – An identifier of the particular marketing activity. Examples might be:
- Newsletter
- Newsletter-2017-03 (a specific term; the March 2017 newsletter)
Google Analytics is smart enough to automatically assign most varieties of utm_source and utm_medium, with no input needed from us. It handles all the “organic” Medium, for example. It also handles “social” and most of those Sources – Facebook, LinkedIn, Twitter, etc.
But it does not automatically handle outbound campaigns that you set up. You have to do that, by creating your own UTM tracking code.
Can you give me an example?
Sure. Here’s a sample link to a new blog post:
MyWebsite.com/My-Great-New-Blog.html/
That’s fine. People click on it, they go where you want them, to your blog post.
But without UTM tracking, you won’t know how they got there.
Even worse: Google Analytics won’t know, either. GA will report that visit as direct traffic with no known Medium.
That’s bad. That’s misleading. Now, you can’t tell truly “direct” traffic (e.g., they bookmarked your site and visit routinely) versus traffic your email blasts generate. For want of UTM variables, your GA data gets all muddy. Yuck!
A better example - using UTM parameters:
So let’s add some UTM codes to that link:
MyWebsite.com/My-Great-New-Blog.html/?utm_source=main-mailing-list&utm_medium=email&utm_campaign=blog-blast
Calm down.
We added just three things:
- utm_medium = email
- utm_source = main-mailing-list
- utm_campaign = blog-blast
When people click on this new, improved link, nice things happen:
- They still get to your great blog post
- GA now recognizes them as coming from “email”
- You know how they got to your website.
Now check out that new, improved GA report, with the Medium, Source, and Campaign specified.
(Thanks to jeffalytics.com for the cool tip on using the GA real-time reports to test the UTM code.)
But wait – there’s more! When somebody clicks on that link, data automatically appears in GA. No need to set up anything in Google Analytics beforehand. GA just knows how to deal with it. All you have to do is supply the information to GA.
Sophisticated Marketer
Adding UTM parameters makes you a sophisticated marketer. Why? Because when you go into GA:
- You know which campaign enticed the visitor to come to your website (e.g., the “blog-blast”).
- You know it was an e-mail.
- And you know that the visitor came from the “main-mailing-list.”
Holy cow, that’s great information! Once you have that, you can start doing real analysis in GA and answering the tough questions:
- Compared to your other mailing lists, do people that come from the “main-mailing-list”
- spend more time on your site?
- convert more?
- buy more?
- Do your “blog-blast” campaigns drive more traffic than your “Friday-fun-facts” campaigns?
- Do visitors who come in via “email” look at more pages than people who come in via “social”?
Without the UTM codes, you won’t know any of that, and your “direct” traffic will be overstated.
Where do I see the UTM code in Google Analytics?
Google Analytics calls UTM parameters “dimensions.” They show up just about everywhere in GA.
Look for them first in the “Acquisition” section of Google Analytics. There, you’ll see a section dedicated to “source / medium” and another one dedicated to “All Campaigns.”
But those aren’t the only places.
Wherever you can segment data (which you should always be doing!), you can segment by the UTM parameters:
Also, because the UTM parameters are “dimensions,” in most Google Analytics reports you can add the UTM variables as a “Secondary dimension” and choose:
- Source
- Medium
- Source / Medium
- Campaign
In the “Landing Pages” report below, for example, I’ve clicked on "Secondary dimension", selected “Source / Medium” and can now see my e-mail activity.
Even better, of course, is seeing how well your e-mails did at converting visitors as measured by the goals you’re tracking in GA.
(Note: I’d bet that some of the “direct/none” completions in the above report are actually from incorrectly coded e-mails.)
Setting Source and Medium Names (utm_source and utm_medium)
Marketing automation or e-mail blast software does much of the work for you automatically. In general, the software decides the Medium and Source for you.
For comparison purposes, let's look at three different software packages that manage e-mail blasts: Act-On, Campaign Monitor, and MailChimp. Be forewarned: You might not like the decisions these software packages make for you.
Both Act-On and Campaign Monitor list themselves as the Source and “email” as the Medium.
While having the software package as the Source is theoretically useful, in most cases they’re probably the only source of outbound e-mail traffic coming to your website. So Act-On = email and e-mail = Act-On. In effect, instead of two UTM variables to study, you really have one.
Act-On gives you no way to change the Source name (other than disconnecting from GA); Campaign Monitor gives you some limited options.
MailChimp goes a different route. Its Source is the mailing list you used. This is a better solution, but limiting; it’s the default and only option.
Setting Campaign Names (utm_campaign)
Software packages also treat Campaign names in various ways.
By default, both Act-On and Campaign Monitor use the name of the e-mail blast for the Campaign, but let you change it. Good for them! Here are the default Campaign names, as well as a changed one.
MailChimp uses the name of the e-mail blast and prefixes it with a bunch of stuff. This singularly unhelpful approach destroys any useful, organized naming system you might devise for campaigns (more on that below).
I can’t vouch for all marketing automation packages, but it appears that they all treat UTM variables differently. They all claim to integrate with Google Analytics; they do, but perhaps not in a way that gives you the flexibility you want.
Creating Smart Campaign Names
Creating Campaign names takes some thought and planning.
Let’s say you offer a monthly webinar, supported by an e-mail blast campaign. The first time, you may use a generic Campaign name, “Webinar.” This will show up in the GA Acquisition / Campaigns / All Campaigns report thus:
That’s great for the first month – what happens next month? Hmm – maybe you should start adding the month to the Campaign name:
Ok, that’s great for the first year – but what happens when January rolls around again?
For a recurring event, like this webinar, the best approach is to identify the campaign name and add a suffix (or prefix) of the year-month (e.g. yyyy-mm)
With this Campaign naming convention, you’ll know exactly which campaigns worked best. You can even see seasonal patterns – do January (“01”) campaigns convert as well as May campaigns?
Summary – e-mail software and UTM parameters
Start with UTM codes by using what your software package provides automatically. These may not be ideal, but at least your e-mail traffic will no longer end up in the “none / direct” bucket.
Feeling sophisticated? Disconnect the software package’s automatic integration with Google Analytics and create and use your own UTM variables. It takes a little time, but gives you more analysis options.
How else can I create the UTM parameters?
If you decide not to use the UTM codes from your email software, you need a utm builder to create your own. You have several options.
Most people default to the Google Analytics Campaign URL Builder. It can create a one-off URL with all the UTM parameters you need. Fill out a simple form to get the URL. Very easy, but primarily for one-time uses. (Hat tip to Prateek Agarwal for letting me know the URL builder had changed; he has a nice blog post about it here.)
You can also use a great Chrome extension to build the URL here. I love this tool. Either of these tools works great for low volume purposes.
Several publicly-available spreadsheets will build the links for you -- useful if you run a fair number of campaigns.
If you really want to go full bore, Terminus offers a nice software package. It builds the URLs and gives you a great history of the campaigns you’ve run. They also offer an informative, free five-day course on best practices in UTM building.
A Caveat – use lower case! (OK – ok – make that caveat)
Yep, Google can build a self-driving car, but they can’t figure out that “Email” is the same as “email.” Google Analytics is case-sensitive when it looks at UTM variables.
So always use lower case for your Source and Medium, or you’ll end up with duplicates, which won’t help your analysis efforts.
Duplicate sources:
Duplicate mediums:
Further Reading
Much of my deep understanding of UTM variables comes from Jeff Sauer’s fantastic Google Analytics course.
You could also take the five-day course at Terminus.
You can probably tell by now that UTM and I have a thing going on. Need help with UTM variables? Reach out – Northwoods can help!