Beginners Guide To Campaign Tracking Tags – Taking the ummmm out of UTM Tags

Don’t let your campaign tracking be an afterthought. Making it a priority will ensure you have the data you need to make clear decisions at speed.


Tracking how users are coming to your website is EXTREMELY useful. It’s also super important when it comes to making decisions based on data! Yet when setting up digital marketing campaigns, all too often tracking is overlooked and becomes an afterthought.

Each platform you use to drive traffic has its own reporting dashboard (email, TikTok, Facebook, Google Ads, Taboola and so on). There are some clear benefits of using each platform’s own tracking pixels – such as real time optimisation and post-view conversion tracking. We would also recommend collating performance information under one roof within Google Analytics.

If you’re feeling really smart and want to get insights on lifetime value then you should also consider feeding through the channel, targeting and creative data to your database to understand which channel, campaign and even ad copy people converted on.

Let’s say, you’re about to launch a Christmas appeal to drive online donations and you’re going to launch an email campaign, a facebook campaign and a Google Ad campaign to help drive those donations. You want to be able to identify which of these campaigns obtained the most traffic to the appeal page and achieved the highest conversion rate, donation value, and provided the best return on your investment (ROI). 

Whilst, the big picture ROI is useful (the overall success of the appeal), you also probably want to identify which variation of the ads or emails were the best performing. The way to do this is by using UTM tags (also referred to as UTM codes).

What does UTM mean?

UTM stands for “Urchin Tracking Module” – which despite sounding like one of those spiky things you might find stuck to a rock on the bottom of the sea bed – is basically a bunch of parameters that you append to the end of your landing page URL to tell Google Analytics how someone came to your landing page. 

What’s a URL parameter?

UTM tags are a type of URL parameter. URL parameters (also known as “query strings”) are a way to structure additional information for a given URL. Parameters are added to the end of a URL after a ‘?’ symbol, and multiple parameters can be included when separated by the ‘&’ symbol. You can send data like the name of the channel, the type of creative and even the keyword that was clicked by using a UTM tag.

Some websites use URL parameters to power certain functionality on the actual website e.g. checkout behaviour or how certain content is displayed, for example we have one on the Digital Ninjas homepage that triggers more “business focused” information to be displayed in the charity/business tab, you can test it out here.

Sometimes URL parameters are used to pull in additional information that might be sucked up by your database when somebody completes a transaction on your website.

UTM parameters are added to the end of a url so that when someone clicks on the landing page you wish to monitor. Each parameter passes snippets of data back to Google Analytics about how a user came to your website (which channel) and other key information, such as the content that they viewed or engaged with.  

There are 5 key Google Analytics dimensions that can tracked via utm tags, each dimension is collected using a separate parameter as outlined below: 

  • Source (the origin of where the traffic came from) – e.g. Titok, YouTube, Facebook.
  • Medium  (the category of the source) – e.g. organic, cost per click, referral, affiliate.
  • Campaign – the name of the campaign – e.g. christmas_appeal
  • Term – they keyword used used to bring in traffic (relevant for search ads) – if the traffic source isn’t search then you can use term to collect other useful data about the referring traffic source
  • Content – description of the content – such as the ad variation, email subject line/reference, or landing page variation

To be able to review and identify the information passed from the UTM tags as easily as possible, it’s best to create a naming convention that you stick to consistently. This can be trickier than it sounds if you’re working in a team and there are multiple people responsible for creating and executing certain campaigns both inside and outside the organisation (agencies etc.). 

It’s worth taking the following points into consideration when planning on how best to use the tags;

  1. UTM parameters are visible to the users in their address bar. So be careful how you describe your audience segments and don’t use any naming conventions you wouldn’t be comfortable with your customers seeing.
  2. Be consistent – by being consistent you’ll be able to make comparisons across campaigns and channels much more easily and have more information readily available at your fingertips.  This is especially important over time as you start to run year on year comparisons.
  3. Use lower case – utm tags are case sensitive, so to keep it simple and consistent, use lower case. If you use a combination of uppercase for utm tags and lower case for others, data from the same campaign will show as different campaigns
  4. Use dashes or underscores to join words (not spaces) – for example, you may want to tag your campaign name as ‘christmas appeal 2021’ the  utm campaign name tag should therefore be written as ‘christmas-appeal-2021’ or ‘christmas_appeal_2021’. If you use spaces between words, the space would be converted to a percentage sign in the URL, which can make deciphering the data in the backend of Google Analytics or your database more difficult than it needs to be. 
  5. Keep it simple and be descriptive where possible! Remember you’ve got to look back over and interpret the data.

Creating a UTM tag

So now we know what a UTM tag is, how it works, and best practice for set-up, let’s create one!

Here’s an example of a UTM tag for a Facebook campaign:

Whilst this may look confusing, each component of the UTM tag can be easily broken down; 

  1. utm_source=facebook – the source of the campaign is Facebook 
  2. utm_medium=cpc – the medium is cost per click, identified as’cpc’
  3. utm_campaign=appeal-x – the campaign name is ‘appeal x’
  4. utm_content=adcreativea – here we’re identifying the specific facebook ad creative that was clicked

The utm tag starts after a question mark appended to the url. For each dimension passed into Google Analytics  via a UTM tag the parameter is simply written out as  ‘utm_’ followed by the dimension name, followed by an equals sign and then the relevant information for that particular dimension is added to the end. 

Each parameter is joined together by the ‘&’ symbol. If it still sounds a little confusing, you’ll be pleased to know that there’s a range of free tools to help you easily build UTM codes, such as the UTM code generator for Facebook campaigns and Google’s own campaign URL builder. Some tools and platforms will even generate UTM tags for your campaigns automatically, for example Bing Ads does this as does Mailchimp and some instances of Salesforce Marketing Cloud.

Still ummming and ahhing about tracking? Get in touch with a Ninja today.

The Ninjas are ready and waiting to help you with your tracking questions and challenges – just hit the button to send out a distress flare.

    Jon Dawson, CEO of Digital Ninjas
    Jonathan will get back to you soon

    Dynamic UTM tags

    If you want to be able to track each variable of a Facebook campaign within a utm tag it can be quite laborious having to create lots of different UTM tags that will capture the campaign name, the ad copy variation, the image variation, the ad set and so forth. But do not fear! 

    A quicker way to track all the elements of a campaign you need is to create dynamic UTM tags. 

    Using dynamic UTM codes can save a lot of time – automatically pulling campaign details and adding them dynamically to the end of the landing page URL that you specify – ‘what a relief’ we hear you cry! 

    Below are 6 components that you’ll most likely want to track from within your Facebook ads. As you can see, instead of manually assigning each parameter name, a code contained in double braces – {{code}} – which will automatically pull in each variable directly from an ad. 

    • ad_id={{}}
    • adset_id={{}}
    • campaign_id={{}}
    • ad_name={{}}
    • adset_name={{}}
    • campaign_name={{}}

    More information about dynamic utm parameters for Facebook can be found here. Here’s an example of how a dynamic UTM tag looks when applied to your campaigns (this field is visible at ad creative level in Facebook Ad Manager):

    If you need help creating a UTM tag, feel free to reach out to Digital Ninjas and we’ll give you a helping hand.