Best Practices for Using UTMs to Create Business Value

Part one in a series of articles about how to successfully create and leverage UTM parameters in your landing page URLs and build a scalable naming structure for actionable cross-channel and MTA reporting.

Most, or all, of you have heard of the importance of adding Google Analytics UTM tracking parameters to your campaign URLs, but may be struggling to either implement consistently across your organization, or missing out on some added benefits that are available.

First, a quick definition: what exactly are UTMs and what do they do?

In digital marketing, UTM stands for Urchin Tracking Module. Urchin was the name of Google Analytics before Google bought it. In practice UTMs are parameters that you add to the end of all possible links that send traffic to your website or app. They look like the bolded parts this example tracking URL:

While there are numerous answers to what they do, a helpful way to put it is, that by using consistent and scalable UTMs across all available sources of incoming traffic, you’ll accomplish the following:

  • Clean reporting in Google Analytics (and Amplitude, Mixpanel,, Woopra among other tools) for dimensions like Medium, Source and Campaign, and possibly others, depending on how deeply you create your UTM taxonomy
  • Actionable cross-channel reporting and analytics in Google Analytics, including with some offline marketing and/or sales reporting
  • Actionable marketing attribution reporting, including both single- and multitouch-attribution models, both in Google Analytics and some MTA platforms

There are, however, myriad challenges for organizations to overcome to get the full benefit of consistent and scalable UTM tracking, such as:

  • Less than 100% compliance across teams or individuals creating inbound URLs. Compliance includes both “are they’re being implemented at all?”, as well as “are they being done consistently both within and across marketing channels?”
    •  Even small inconsistencies such as capitalization (Email vs. email) can wreak havoc on clean, actionable reporting.
  • Lack of a centralized process and/or tool(s): As you might guess, having a well-documented and accessible Standard Operating Procedure, as well as a shared tool to both create and save tracking URLs will go a long way towards solving the previously mentioned challenge! We’ll go over some of the best practices for such a tool below.
  • Tagging internal promotion links (setup Enhanced Ecommerce instead)
  • Over-engineered UTM naming taxonomy: In some cases there’s a desire, usually coming from analytics, to get really granular with the naming convention, including requiring all standard + custom UTMs, and multiple parts within UTMs such as utm_campaign and utm_contn. The problem with this approach is two-fold:
    • There may not be enough data at these more granular levels to allow for statistically significant cross-channel findings.
    • The added complexity of such a process may lead to lack of compliance. While compliance can be improved through oversight, it’s always worth asking if the juice is worth the squeeze!
  • Switching  the values for medium and source. This is one of the most common mistakes we see when helping clients. Simple examples are using ‘facebook’ or ‘twitter’ as the medium value, and ‘social’ as the source. It should be the other way around, with medium being more closely aligned with channel, and source being the actual name of the referring… source of traffic!

In this section we’ll look at some best practices which will help you overcome some of the common obstacles to business value from UTMs.

  • Use a shared online tool to create and store tracking URLs, primarily for traffic sources other than paid media such as Google Ads or Facebook
    • Google Sheets can be a great platform, mainly for it’s relative ubiquity for online collaboration, and similarity to MS Excel in terms of ease of use. A few features to consider building into your tracking URL generator: 
      • Make sure to use drop down lists for medium values and any other where you want to enforce naming standardization.
      • Require that utm_medium, utm_source, and utm_campaign are filled in at a minimum
      • Include error checking and/or coding to handle space characters. For example if someone enters ‘spring sale’ as part of a parameter, the tracking URL should insert either a hyphen (spring-sale) or the URL encoding character which is ‘%20’ for a space (spring%20sale).
      • Use or another URL shortener. There are multiple solutions posted online on how to call the API from a spreadsheet, or use a Google Tools add-on such as the one mentioned in the documentation.
      • Make a separate version (tab) for distinct channels. This can be helpful if, for example, different teams create far more links than others, to make it easier to manage and reference links for a particular channel. 
    • Document your taxonomy and the SOP. You’ll want to assign ownership of UTM / tracking URL compliance to an individual. Additionally you should run frequent reports out of Google Analytics including all the incoming UTM values by segmenting in only New users. While it’s virtually impossible to achieve 100% clean reporting for UTM values, by getting all parties bought into the process and managing with clear ownership, you can get the main elements needed for insightful and actionable insights!
    • Make sure to update Google Analytics default or custom channel definitions as needed once you have reached agreement on a shared taxonomy and accompanying processes.  (mostly when using new medium values)
    • Create a scalable taxonomy that supports actionable insights, both for media optimization as well as cross- or omni-channel campaigns.  While this can be a complex undertaking and will be the sole subject of a subsequent post, here are a few tips:
      •  Use existing naming / Internal campaign codes: If, for example, you already use a campaign naming taxonomy that contains internal codes and structured placeholders for internal reporting, why not use that in Google Analytics as well to make it that much easier to blend GA with internal/financial reporting? For example you might have an internal campaign naming structure as follows:

 utm_campaign=Event ID-BudgetOwner-MarketName-Date

  • Such a naming convention brings up an interesting issue often encountered in this process: utm_campaign values that differ significantly from actual campaign names in Google Ads or other digital paid media platforms. While this will be the subject of a subsequent post in this series, the short answer is to create your base tracking URLs in a separate system, including the UTM values based on the taxonomy, and then use tracking URL templates or macros in the respective ad servers to append actual names of Campaigns, Ad Groups, Placements, etc.
  • Another UTM value that can be used effectively for cross-channel and/or multi-touch attribution analysis is the utm_content parameter, typically used to name or describe the creative associated with a click.
    • An example cross-channel use case is to measure the impact of a promotion (e.g. a sale) that’s going out via multiple paid channels. Use this in the utm_content field, and hopefully with a structure that’s consistent across channels, for example:


Creating and implementing a naming taxonomy and tools/processes to use Google Analytics UTM parameters is a vital step towards realizing business value from attribution. The best practices in this article have helped many of our clients achieve measurable success and we hope you’ll realize the same! If not, send us a quick note to let us know how we can help:

Did this interest you? Reach out to learn
how we can help you.

Contact Us

When you reach out to Empirical Path, you get in touch directly with our fully qualified and experienced consultants.   Whether you need an analytics audit, training, support, or a custom quote on Google Analytics 360 licensing, let’s talk today.