What is UTM (Urchin Tracking Module)? Why and How is it Used?

Unlock how UTM tags track ad performance across platforms and reveal which campaigns drive real user actions.

Ceyhun Enki Aksan
Ceyhun Enki Aksan Entrepreneur, Maker

In online marketing processes, it is essential that advertisements and/or content originating from different sources are properly tracked, and that user actions performed on websites or apps via these ads and content are monitored effectively. Additionally, the entire process, as well as its individual components, must be systematically tested at defined intervals.

In general, it becomes evident that advertising sources, campaign formats, media platforms, and even devices can introduce variations in the ad tracking process. For instance, fbclid defines a Facebook Ads campaign1, but this unique identifier has no meaning for advertising platforms other than Facebook. Similarly, gclsrc and gclid, used by Google, are meaningless for other platforms23.

Click-id is a parameter automatically appended by advertising platforms (such as Google Ads, Facebook Ads, Bing Ads, etc.) to the campaign’s target URL (final URL), serving to define the campaign and the click’s other attributes for measuring campaign performance. Google also uses the click-id for data exchange between Google Ads and Google Analytics4. This enables the parameter to be used alongside features such as offline conversion tracking.

What is UTM (Urchin Tracking Module)?

In the article titled Marketing Automation and Tracking, I discussed how dynamic URL parameters can be generated for Facebook ads and tracked using UTM (Urchin Tracking Module), enabling different tracking and analytics tools to monitor campaigns. As a reminder, Facebook, Google, Microsoft, and other supported advertising platforms allow both automatic (auto-tagging) click-id parameters and UTM parameters to be defined5.

Target URL: https://domain.com/?utm_source=google&utm_medium=cpc&utm_campaign=spring_sell&utm_term=upsell&utm_content=ads-alt-2

UTM Parameters

In online advertising campaigns or QR codes, email newsletters, content promotions, and other online trackable areas, UTM parameters can be included in the target URL to carry campaign-specific details, enabling us to gather insights about the overall performance of campaigns. For instance, let’s assume we launched a campaign titled Download Summer and distributed it across various sources (source). We would like to evaluate users coming from these sources during the campaign period, as well as after the campaign ends6.

UTM Parameters
UTM Parameters

Each advertising platform will provide us with various results through its own tracking definition. However, for a comprehensive analysis, we need a common structure. UTM provides us with this capability. This allows us to compare our ad spending across different sources, identify the most effective sources for our campaigns, and assess campaign performance over time. Additionally, UTM enables us to test ads or create different versions within the campaign context7.

The utm_ prefix is mandatory for all UTM parameter definitions. Within a destination URL, the following parameters can be added under the UTM framework:

utm_source
: Defines the advertising provider, website, social media platform, or similar entities (e.g., google, facebook, newsletter, etc.) that delivered the traffic to the analytics tool (e.g., Google Analytics). This parameter is required for UTM configuration.

utm_medium
: Contains information about the advertising or marketing channel (medium) (e.g., tbm, cpc, ppc, banner, email newsletter, etc.). This parameter is required for UTM configuration.

utm_campaign
: A campaign name, slogan, promotional code, or similar elements indicating a product or service. Required parameter for UTM tagging.

utm_term
: Defines paid/organic search keywords (query). If paid keyword campaigns are manually defined, the utm_term parameter must be used to specify the keyword. Optional parameter.

utm_content
: Used to differentiate similar content or links within the same advertisement. For example, if there are two call-to-action (CTA) links in the same email, different values (e.g., the section where the link appears) can be assigned to each using the utm_content parameter. This enables identification of which message or location is more effective.

Each parameter must be assigned a single value. That is, any UTM parameter can appear only once within a URL. For example, let’s define a parameter-value specification for the Download the Guide campaign.

utm_source=facebook
: Indicates a share made via Facebook for the Download the Guide campaign.

utm_medium=post
: Specifies that the relevant entry was added as a post, not as an ad.

utm_campaign=download-guide
: Links the relevant share to the download-guide campaign.

With these parameters defined, the URL we will share takes the following form:

https://www.domain.com/?utm_source=facebook&utm_medium=post&utm_campaign=download-guide

Whenever appending parameters to a URL, you must always use utm_source, utm_medium, and utm_campaign. The parameters utm_term and utm_content are optional. Special characters should be avoided in parameter values as much as possible, and ideally all characters should be lowercase. However, when dynamic values are retrieved, special characters, spaces, and even separators may be assigned to the parameters.

Google Analytics - Kampanya Filtre İşlemi
Google Analytics - Filter Operations

In such cases, filters available in Google Analytics and similar analytics tools can be utilized to ensure consistency in relevant searches and segmentations8.

Dynamic Usage

Most platforms that use dynamic content in campaign contexts—such as advertising platforms and email service providers—can dynamically assign values to parameters through placeholders they specify. This enables campaign target URLs to be automatically and error-free updated.

Advertising Platforms

Facebook9 allows you to use the URL Parameters (URL Parameters) field under the Tracking (Tracking) header by clicking the Edit (Edit) link in the Ad Management (Ad Management) dashboard10.

Facebook - URL Parametre işlemleri
Facebook - URL Parameters

By clicking the Build a URL Parameter (Build a URL Parameter) link found in this section, you can dynamically assign values to the relevant parameters through a form11.

Facebook - URL Parametre işlemleri
Facebook - URL Parameter Builder

The provided dynamic values:

// Ad ID
ad_id={{ad.id}}

// Ad set ID
adset_id={{adset.id}}

// Campaign ID  
campaign_id={{campaign.id}}

// Ad name  
ad_name={{ad.name}}

// Ad set name  
adset_name={{adset.name}}

// Campaign name  
campaign_name={{campaign.name}}

// Placement  
placement={{placement}}

// Source name  
site_source_name={{site_source_name}}

Let’s take an example for Facebook:

https://www.domain.com/?utm_campaign={{campaign.name}}&utm_content={{ad.name}}

Since the source and medium are already defined, there’s no need to add additional parameters. However, you can also modify existing predefined values by specifying them; for example, utm_source=facebook&utm_medium={{adset.name}}.

The rules mentioned above also apply to Google Ads12. Google Ads allows you to manage target URL definitions under the Ad section, specifically within the Ad URL options section13 14.

Facebook - URL Parameter Operations
Facebook - URL Parameter Builder

Google also supports more dynamic values15 16 17.

Other Services

As previously mentioned, the ability to use UTM parameters within URLs and dynamically assign values to them is not limited to advertising platforms. Email marketing services such as MailChimp, and form services such as Typeform, also include UTM parameters in their URL definitions and allow dynamic value assignment18 19 20. In fact, in a previous article titled Typeform - HubSpot Integration and Source Identification, I proposed a solution to the issue of source attribution that arose when integrating with Zapier for Typeform. For additional information on this topic, please refer to that article.

UTM_ID Definition and Campaign Code

If you have Google Analytics integration, you can manage campaign definitions for past or active campaigns through a single parameter.

Google Analytics - Campaign Report
Google Analytics - Campaign Report

We can retrieve other parameters such as campaign, source, and term through the utm_id parameter, which is different from standard UTM parameters, by using an ID value. This definition is expressed as a campaign code. Let me illustrate with an example21.

https://www.domain.com/?utm_id=abc123

For this operation to be carried out, the fields corresponding to the ID must also be defined. First, we need to access the Data Import section under the property level in your Google Analytics account.

Google Analytics - Data Import
Data Import

The data import field we will use is Campaign Data. After selecting and naming the field, and linking it to the appropriate views, we can begin creating the data set schema. The Campaign Code (Campaign Code) will be automatically placed in the key (key) field. The ID definition here, ga:campaignCode, corresponds to the utm_id parameter that will be included in the URL. For the fields where the data to be imported exists, we will define the corresponding field mappings. Typically, the most basic parameters used are source (source) and medium (medium)22.

Google Analytics - Data Import
Data Import

However, you can also select additional fields. What’s important is that values are provided for these fields in the CSV. In the end, our fields will look like this.

ga:campaignCode,ga:source,ga:medium

Now we can add our campaign ID value and the corresponding source and medium definitions.

ga:campaignCode,ga:source,ga:medium
abc123,twitter,cpc
def456,mailchimp,newsletter
ghi789,instagram,bio

Google Analytics provides us with Acquisition reports containing dimensions and metrics. Specifically, if you’re referring to a report directly related to campaigns, you can follow the Acquisition > Campaigns steps based on campaign-level data.

In campaign reports, you can view user, session, and goal-related information based on the relevant campaign headers. Additionally, if the Campaign Code is being used, it is appropriate to include the Campaign Code dimension as a secondary dimension in the Data table for verification purposes.

If different dimensions are required under a different report (or for report customizations), you can access UTM-related dimensions as follows.

Google Analytics - Campaign Dimensions
Google Analytics Campaign Dimensions

Of course, the Keyword can also be included in the table corresponding to the utm_term parameter, and Source and Medium can be combined into a single dimension.

Google Analytics Channel Groups

Google Analytics provides us with the ability to manage and create new channels at the view level.

Google Analytics - Channels
Google Analytics - Channels

This allows us to create new channels based on the parameter values defined in UTM, as well as expand the scope of existing channels.

UTM Mediums

It’s possible to easily generate a target URL containing UTM parameters by combining cell values in Excel or Google Sheets. However, numerous online services can also be considered as alternatives. These types of services can also contribute to the analysis process through additional features they provide (such as tracking, URL shortening, etc.).

Google Analytics Campaign Builder
: One of the most well-known basic tools23. It also includes a URL shortening feature linked with Bit.ly.

Facebook URL Parameters
: Facebook also provides a tool enabling direct parameterization within ads. This allows relevant settings to be quickly transferred to the form fields where actions are performed.

Terminus
: Terminus, a third-party solution that functions as both a UTM generator and a link management tool24. It offers features such as organizing and tracking UTM parameters, as well as grouping and monitoring links.

*[CTA]: Call-to-action

Google Ads Help

All-in-one UTM Builder and Link Management Platform](https://www.terminusapp.com/?target=_blank&rel=noopner,noreferrer)

Footnotes

  1. Customer Information Parameters. Facebook for Developers
  2. About click IDs. Google Search Ads 360 Help
  3. Auto-tagging of Microsoft Click ID. Tracking in Microsoft Advertising
  4. Google Click Identifier (GCLID): Definition. Google Ads Help
  5. How do I add UTM tags to my landing page URL? Tracking in Microsoft Advertising
  6. UTM parameters. Wikipedia
  7. Jacqueline Zote. (2019). UTM tracking & URL shortening for social media marketers
  8. Custom filter fields. Analytics Help
  9. Add URL Parameters to Your Ads. Facebook for Business
  10. How to use Dynamic Facebook URL Parameters to tag your campaigns. YouTube
  11. Specifications for URL Dynamic Parameters. Facebook for Business
  12. URL parametreleri hakkında. Google Ads Yardım
  13. Collect campaign data using custom URLs. Analytics Help
  14. Tracking Templates Explained - All Secrets Revealed. YouTube
  15. Gelişmiş izleme için özel parametreler oluşturma. Google Ads Yardım, Özel URL’lerle kampanya verisi toplama ile ilgili En İyi Uygulamalar. Analyics Yardım
  16. [Setting up tracking with ValueTrack parameters.
  17. How you can use ValueTrack. Google Ads Help
  18. Create Unique URLs for Subscribers
  19. What is UTM tracking? Typeform Help Center
  20. Puru Choudhary. (2020). I Bet You Haven’t Used UTM Parameters Like This
  21. Campaign data overview. Analytics Help
  22. Campaign data import example. Analytics Help
  23. Google Analytics Campaign Builder
  24. [Terminus.