The web is perfect for direct marketing and rivals other mediums. With marketing attribution, it’s easy to track your online campaigns. The problem is most don’t know how to do it.
This is where UTM parameters come into play.
As I’ve stated in day two of my mentoring program, you can only improve your business if you measure it.
Pretty much all modern-day analytics tools support using UTM parameters. It’s become somewhat of an industry standard. If you aren’t using them, you are missing out the full potential of your analytics tools.
What are UTM Parameters?
UTM parameters (otherwise known as Urchin Tracking Module parameters) are made up of five options you add to a URL that points to your website. The purpose of these five options is to report the source of website visitors (otherwise known as attribution in marketing lingo). When a visitor lands on your website the UTM parameters tell you the source of that lead.
The UTM parameters comprise of:
- utm_content (optional)
- utm_term (optional)
I’ll go over what these mean in a minute.
They were originally created by the company Urchin Web Analytics. In 2005, Google purchased Urchin and eventually, it turned the product into what we know today as Google Analytics.
Why use UTM Tracking Codes?
Bottom line, you want to know the source a click to your web site. Especially if you are paying for traffic.
Typically when a visitor clicks on a link on a webpage, the web browser passes back the previously visited web page. This is known as an HTTP referer. Note the misspelling, as the person who created this feature, didn’t know how to spell referrer.
Want to see HTTP referer in action? Click on this link: What is my Referer?
What you should see:
Depending upon how you got it this article, it should show something similar to what you see above. The important fact, it shows you came from my website.
Great! The analytics on whatismyreferer.com would note LarryLudwig.com was the source of a website visitor.
Many Internet marketers use HTTP referer as the method of attribution. Unfortunately, HTTP referer is not always reliable.
For an example of a blank HTTP referer, click on this link.
Same website source, same website destination, yet the HTTP referer was no longer passed.
Why is that? More on that in a minute.
If you don’t have an HTTP referer, your analytics tool will show traffic as being ‘direct’. Which means the source of the traffic is unknown. It can also mean the visitor typed your domain in their browser URL bar. Obviously in this example that would be incorrect.
You want to reduce the amount of falsely reported direct traffic entries. While you cannot eliminate all, you should make it a goal to reduce as much as possible.
I’ve said this many other times and it’s worth repeating — Not all traffic is created equal.
The quality of traffic is always more important than quantity. Depending upon the source and intent some traffic converts better than others.
Shouldn’t you know that your paid Facebook ad converted better than the organic Tweet you just sent out?
UTM parameters are the first part of the marketing attribution equation.
When is the HTTP Referal empty?
The HTTP referal is not always present. It should not be relied on and should be used as a backup. Here’s a list of possible situations when the referral information is blank.
- Many smartphone apps (email, social media, messenger, video players, etc.)
- A bookmarked link
- rel=”noreferrer” HTML tag is present in the source <a href> link. For WordPress version 5.1 and newer, this is enabled by default.
- Linked clicked within an email
- Redirection from an https:// based website to a link that’s http:// (see example)
- Links in documents like PDF, MS Word, Powerpoint, etc.
- A website visitor has an ad blocker plugin which purposely blocks the referral.
When should you use UTM parameters?
Pretty much everywhere! Anytime you link to your website you should be using UTM parameters.
- Paid search traffic
- Organic social media
- Paid social media
- Links in your profile for any publically displayed source (i.e. social media)
- Affiliate links
- Offline (i.e. business cards) via a QR code.
What do the UTM parameters mean?
There are a total of five UTM parameters, two of them are optional. Here’s the definition of the options.
- utm_source – The source from where your traffic came from. Examples: facebook, google, twitter, activecampaign, or a domain name (example.com).
- utm_medium – Identifies the type of link. Examples: organic, referral, cpc, etc.
- utm_campaign – The web page, promotion, ad campaign, from your source the traffic came from. This parameter should be unique per campaign to help differentiate between campaigns.
- utm_content (optional) – Primarily used for A/B testing or sourcing which link was clicked on a web page with multiple links for the same campaign.
- utm_keyword (optional) – Used for paid search to note what keywords were used to land on your website.
UTM tracking examples
Sometimes it is easier to just show than explain. Here are some examples of UTM codes used on my own website.
External Website (Fastlane Forum)
I defined these parameters to track a link I have within my signature on The Fastlane Forum website.
At the top of every email I send out, I brand with my name logo. That logo is linked to the home page of my website. I want to know which email the reader clicked on when visiting my homepage. In this case, utm_content and utm_campaign change with each email sent out.
An example of a Tweet which linked to an article on my website. I wanted to know the traffic source came from Twitter.
There’s an old computer term that applies to effective UTM tracking and website analytics — GIGO (Garbage In Garbage Out).
For any link you control, you should be passing a UTM parameter. That way it’s assured you know the source of your traffic. Obviously, when a third party links to your site organically you should welcome this. In most cases you cannot control the usage of UTM parameters. Just be thankful you have a link that can help with your SEO game.
There’s no set standard with UTM tracking. You could technically use UTM parameters any way you please. If you aren’t organized, you may not be using them effectively.
The use of UTM parameters is often misunderstood. It’s not uncommon to see UTM parameters used but in the wrong way.
Here are my recommended guidelines when creating UTM parameters.
- Consistent naming convention – Use the same naming convention for utm_source, utm_medium, and utm_campaign parameters. This is why I recommend tracking the codes used (see my free tool). Using ‘facebook’ for one utm_source and ‘facebook.com’ for another will show up in your analytics as different sources. If working with a group, agree to the naming convention and more importantly stick to it!
- Parameters are all lowercase — If you use mixed case typically your analytics tool will show them as different sources. Some tools, like Google Analytics, can clean your UTM data but requires additional configuration to set this up.
- No spaces – While any URL builder will correctly convert your options into a neatly formatted URL format, it just makes it easier to read. Replace spaces with a dash instead.
- Use dashes, not underscore – Underscores are often confused for as a space, so do not use them.
- Never use within your site – UTM parameters are for tracking the source of traffic external to your web site. Do not use UTM codes within your site to say track a button click, menu link, or between subdomains. UTM codes should be used only when linking from external sources.
- Never for organic search – Search is the only source in which you should not setup UTM parameters.
Recommended ‘utm_source’ Options
While not comprehensive, here’s a list of recommended utm_source options. It’s pretty much using an all lowercase version of the brand — minus the domain name extension. Note no spaces, dashes or underscores.
- Delicious – delicious
- Digg – digg
- Facebook – facebook
- Foursquare – foursquare
- LinkedIn – linkedin
- Pinterest – pinterest
- Quora – quora
- Reddit – reddit
- StumbleUpon – stumbleupon
- Tumblr – tumblr
- Twitter – twitter
- Google – google
- Bing – bing
- DuckDuckGo – duckduckgo
- Pushcrew – pushcrew
Recommended ‘utm_medium’ Options
Same as utm_source this list isn’t comprehensive. You should stick to at least using these utm_medium options. Tools like Google Analytics expect to see these as your typical utm_medium options.
- social – for any organic social media traffic (meaning not paid for)
- push – Notification via web browser push
- referral – A link from another website or service
- cpc – A paid ad that was Cost Per Click
- email – Any link clicked from an email
- organic – for anything that’s organic search (meaning not paid for). Google Analytics will add this automatically.
How To Create UTM Parameters
Fortunately, you don’t have to know the tech behind creating a correctly formatted URL. There are tools to do this for you, some of them free!
Some services like [affiliate_link merchant=’activecampaign’ child=’utm’]ActiveCampaign[/affiliate_link] will automatically create the UTM parameters. In their case, you just enable the option before sending out an email campaign.
Unfortunately, not all services support the use of UTM parameters. You’ll have to create the links manually.
Fortunately, Google has a free tool called Campaign URL Builder.
You enter the URL, and your desired utm_source, utm_medium, and utm_campaign options. Then optionally you can use utm_term and utm_content.
The result then spits out your URL which you can copy and paste to wherever its needed.
How To Track UTM Codes
It doesn’t do you any good to create all of these links but aren’t tracking them. Plus it’s not uncommon to have multiple individuals working on your website.
The easiest way to track UTM codes is to create a Google spreadsheet. With Google Sheets you can easily input and share UTM codes entered. I have created a free template which you can reuse. The spreadsheet also follows my recommended formatting guidelines.
Signup below to get your free copy.
Not only can you manage all your links, but I’ve also included a campaign URL builder as well.
How to Shorten UTM Parameters
A long URL can appear messy and confusing to a reader. Most individuals have no idea what all of this gobbledygook means. So when sharing URLs via email, social media, and other platforms, you are best to use a link shortener.
Bit.ly, of course, is very popular and what most think of when discussing link shorteners. The problem is the domain isn’t your own. You are required to use the bit.ly extension for all links.
In addition, for the free version, Bit.ly uses the same namespace for all customers. So if link http://bit.ly/demolink is already taken (it is), you cannot use it for your purposes. Bit.ly does offer commercial packages above the free service, but they are very costly and lack a lot of features.
At my previous website, Investor Junkie I used the domain ij.cm for all shortened links. It looked nicer, it was identifiable and better matched my brand. You want this for any shortened link you use.
Fortunately there’s a better alternative to Bit.ly called [affiliate_link merchant=’pixelme’ child=’utm’]PixelMe[/affiliate_link]. PixelMe has all the features you want in a link shortener service.
- Your own custom domain name
- UTM builder built-in to the service
- Track conversions with the analytic reports
- Cheaper than the paid versions of Bit.ly
[affiliate_button merchant=’pixelme’ child=’utm’ text=’Try PixelMe for 7 Days FREE’]
How to Hide UTM Parameters
To the average website visitor, UTM codes can be unsightly. Plus it’s common for people to share links that already have UTM codes embedded from another source. So it’s possible to share a link that originated from Twitter on Facebook. Twitter would be wrongly attributed as the source of that click. Which is obviously wrong.
One way around this is to remove the UTM parameters once you have gathered their information.
Automatically create Google Ads with UTM parameters
Of course Google being the creator of UTM parameters, they’ve incorporated this functionality into Google Ads since the beginning. Though if you stay within Google’s ecosystem, the need for UTM parameters is much less.
Google Ads has the ability to auto-tag the ads you create, which is great if you are only using Google Analytics. It automatically appends a parameter called gclid when a user clicks on an ad. This gclid tag is an auto-generated random number to identify a visitor’s session. At a minimum, you should have this option enabled.
If you are like me and using third-party analytic tools, you also need UTM parameters as well.
You can set this option so every ad you create automatically appends the correct UTM parameters. No chance of mistakes or errors and is what I recommend every Google Ad user does.
To make this change, it is somewhat hidden in your Google Ads account. Perform the following steps to enable this option:
- In the left side menu in Google Ads for All campaigns, select Settings menu option.
- Then at the top, select the Account Settings tab.
- Next, select the Tracking – Use URL tracking option
- Enter your tracking URL in the Tracking template field. For what to enter see below for what I recommend.
- Once finished, press the SAVE button.
Here’s is the tracking template I recommend inserting.
Using this template will then automatically generate the correct parameters for your ads.
You can read more about the ValueTrack parameters, because there are many other options you can use and outside the scope of this article.
Create Facebook URL Parameters for your Ads
Like Google, Facebook wants to keep you within their ecosystem. Also like Google they have their own equivalent of a gclid tag. Oddly enough, it’s named fbclid. This auto-tags any click to your website. Great only if you use Facebook’s analytic tools.
Facebook recently got on the bandwagon of using UTM parameters for your ads. Only until recently, you were stuck using Facebook’s Pixel. While their pixel tracking is great, you are stuck within Facebook’s ecosystem. You could not use your own analytics software.
To use this, edit any ad and go to the Tracking section. Below is what I use:
Unfortunately, unlike Google Ads, you’ll need to paste this into each ad you create.
NOTE: At the time of writing, Facebook’s own documentation for site_source_name is incorrect. They list the variable as, site.source.name which isn’t correct. The correct usage is site_source_name.
You can use this setting for every Facebook ad you create. It will automatically append your Facebook Campaign Name and Ad ID. There’s no need to manually create this information. Cut-n-paste and go!
For more information, read Facebook’s guide on URL parameters.
Facebook decided to use their own naming convention for the site_source_name variable, so here’s what you’ll see in your analytics as the utm_source:
- fb – Facebook
- ig – Instagram
- msg – Facebook Messenger
- an – Audience Network (ads off of Facebook)
It is possible in Google Analytics to rename the sources ‘fb’ and ‘ig’ to represent the full source name to match your other data, but that’s beyond the scope of this article.
Using Google Analytics
After doing all of this work, you want a way to track this information. Fortunately, Google Analytics is a free tool that allows you to track this information.
I’m assuming you are already using Google Analytics right? If not, then get on it ASAP!
The area you are going to care about in Google’s Analytics is under the Acquisition > All Traffic > Source/Medium section.
From this area, you can get the source and medium of all traffic to your website. It’s possible to also glean the campaign information by selecting a secondary dimension in the report. Just type “Campaign” in the drop-down list above the report (see screenshot below).
There are other sections of Google Analytics you can use this information as well, but I’m not going to them cover in this article. Just be aware this information is now captured by Google Analytics.
Automatically Append UTM Parameters on an Order Form
I created the FREE WordPress plugin UTM Tracker for this exact purpose. The plugin does two things:
- Stores the UTM codes upon website entry. They then follows the user as they surf your website.
- Automatically appends the UTM codes (among other optional items) to any web form on your site. This can be any order form, contact form, mailing list form, etc.
You can then track these conversions in your mailing list, e-commerce system, or contact form. My plugin works with all of the major WordPress web forms.
Believe it or not, I just scratched the surface of all of the functionality you can do with UTM parameters. Use them effectively and become a marketing ninja. Know the source of your conversions and improve visitor tracking.