WHAT IS A UTM PARAMETER?
UTM parameters are small bits of code, added to the end of your URL that allow you to track what sent a particular click on that link.
- UTM’s were developed specifically for use in Google Analytics. (In 2005, Google bought Urchin, who originally coined the term “UTM”. (UTM stand for: Urchin Tracking Module)
- You can use UTM parameters on non-Google marketing efforts to tell Google Analytics more information about where the click came from.
- Google products, like Google Ads, have specific ways they communicate across Google-owned products, so it is important to not overwrite these parameters with values that differ from Google’s defaults. (see Google Ads section 1below for more information)
A “UTM” tracking parameter is a snippet of code that is appended to a URL.
A question mark symbol denotes the start of the tracking parameter and following thereafter are three required parameter fields, separated by “&”: ‘utm_source’, ‘utm_medium’ and ‘utm_campaign’. Defining these three parameters enables GA4 to understand how a website visitor reached any page on your site that has the GA4 code (including subdomains). There are also 2 optional fields: ‘utm_term’ and ‘utm_content’ that can be used to provide additional information about your marketing efforts.
Understanding the example UTM Tracking Parameter
- Where does the URL go? https://www.yoursite.com/page/
- From what marketing channel was the link clicked? utm_medium=socialads
- From what site/property was the link clicked? utm_source=facebook
- What campaign is associated with the click? utm_campaign=test_run
- What groups/audiences is this ad displayed to? utm_term=audience_1
- What version of the ad was clicked? utm_content=cta-a
WHAT DOES A UTM DO?
A “UTM” tracking parameter enables GA4 (and even other marketing tools like HubSpot, Marketo, and CRM systems) to answer these common questions:
Questions | Example Answers |
What marketing channel did the visitor use? | |
What campaign did the visitor engage with? | b2b_new_products |
How did the visitor get to our site? | google / cpc (Google Ads) |
What happens after the visitor engages with the campaign? | Revenue, Form Completions, Key Events, Etc. |
GENERAL BEST PRACTICES
- Consistency is CRITICAL to UTM tagging
- Without consistency, you will have difficulty tracking across platforms.
- Develop a consistent, standardized naming convention for UTM tagging across different platforms.
- Without a standardized naming convention, you will have difficulty pulling information from Google Analytics.
- Every UTM Campaign should be unique, otherwise, you won’t be able to easily filter data from one campaign vs another.
- Create a campaign tagging conventions document and share with necessary parties.
- For example: the agency managing your ads, the team responsible for reporting, your internal marketing teams, etc.
- Use lowercase for parameter tagging
- Upper-Case and lower-case values are viewed as different values for Google Analytics.
- Since GA4 Google Analytics uses lower-case by default for their parameters, this will add consistency.
- Use underscores for spaces
- Some systems cannot handle spaces, so use underscores instead.
- GA4 uses “snake case” which is all lowercase, with underscores for spaces by default.
- Some systems cannot handle underscores, so in that case, “camel case” may also be a good option for utm_campaign, utm_term, and utm_content parameters.
- Example: MyCampaignJune
- Be sure to understand the limitations of any internal systems to determine if snake_case or CamelCase is right for you.
- Do not place UTM parameters on links within your domains or subdomains.
- A UTM tracking parameter should never be placed on a link within your pages or it will overwrite the original campaign information. A UTM tracking parameter should only be created for URLs linking TO the website or subdomain page from outside the website.
- If you need to have additional tracking for your website information, you can create unique, non-UTM parameters instead.
- If you are passing data through forms to a CRM, or other system, you will need to establish rules to pass the parameter values through to that system when forms or other conversions are completed.
- At a minimum, you’ll want to pass the utm_source, utm_medium and utm_campaign values.
- Note: for Google Ads, UTM parameters are NOT present by default.
- Options for dealing with Google Ads and UTM’s:
- In your form, you can establish a rule to recognize Google Ad’s GCLID parameter and assign utm_source=google and utm_medium=cpc. For the campaign, you would need to append the utm_campaign parameter with the value of the Google Ads Campaign Name.
- Use Google Ad’s tracking templates at the campaign level to append the utm_source, utm_medium, and utm_campaign values. (see below for more information).
GOOGLE ADS
- Enable Auto-tagging in Google Ads
- This allows you to see additional information within GA4 that is specific to Google Ads.
- Append UTM Parameter Fallbacks to Google Ads to capture information when the GCLID parameter is stripped, so it does not display as “(not set)” in GA4 or can be used with other analytics programs (like Adobe) that cannot decipher GLID.
- With the recent increase of Ad blockers and iOS/Safari Private Browsing settings, GCLIDs are being stripped off URLs and when that happens, you need UTM parameters to attribute correctly in GA4.
- If using GA4 and other web tracking platforms (such as Adobe/Matomo), this is mandatory as those platforms cannot decipher a GCLID.
IMPORTANT: If using auto-tagging, do not add UTM parameters for Google-specific UTM values that are different from what Google Analytics auto-assigns for Google Ads values.
If you need to send campaign information to a CRM or other 3rd party, append a parameter to final URL’s that is UNIQUE to that 3rd party or a parameter that the CRM/3rd Party Tool has been instructed to collect from the URL, for example: ab_campaigncode or crm_detail.
Default UTM values (for GA4) below:
- utm_source=google
- utm_medium=cpc
- utm_campaign=campaign name from Google Ads Interface
Example: GA4 for linked accounts that are set up with auto-tagging will assign “google” for Google Ads campaigns when GCLID is present. If you change use utm_source of “Google Ads” for example, it will be difficult to correctly attribute user actions in GA4. This is because GA4 will default to using the values assigned by the GCLID for GA4, but if a user has an ad blocker, or GCLID is stripped, then GA4 may only see the UTM parameters that were manually assigned. This will make filtering in GA4 reports more difficult.
How do you add UTM parameters in Google Ads?
- Note: check for other third party tracking parameters which may also need to be considered (ex. Salesforce or CRM info, etc.) If yes, then you will need to add those parameters as well.
- Add a custom value for the Campaign Name at the Campaign Level. (campaign name is not available by default at the Account Level)
- Campaigns > Campaign Settings > Additional Settings > Campaign URL Options > Custom Parameters
- {_campaignname=Name-Of-Campaign} where the Italic is the same as the campaign name you used in Google Ads.
- Note: this parameter will default to lowercase.
- You will need to do this for each campaign.
- Note: if you change the campaign name in the future, you will also have to change it here.
- If you set any other parameters at a lower level, they will override higher level parameters.
- Add the following to the Tracking Template at the account level: {lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={_campaignname}&utm_id={campaignid}
- Admin > Account Settings > Tracking > Tracking Template
- Note: Any UTM Source or Medium that is added at the campaign-level will overwrite these. Best practice is to add at the Account-Level Only.
- Create consistency in Google Ads Campaign Naming Conventions
- Because Google Ads will add new campaign types (recent example is “DemandGen”) and does not always update their API to address these, you are not always able to use the campaign type to sort within GA4.
- When auto-tagging is on, GA4 will default to the values passed by the GCLID.
- Do NOT use agency names in Google Ads Campaign Names, as this can lead to confusion in reporting and does not add value to GA4 or analytics tracking.
- Create a consistent naming convention for Campaign Names
- Use underscores or hyphens, NOT spaces in URL’s
- Caps vs non-Caps matters
- Always include the campaign type
General Non-Google Ads Information
- Use UTM parameters for tagging
- This is where you are basically trying to fit other ad platform data into the Google framework used by Google products like GA4
- Develop a consistent naming convention across the following UTM parameters
- utm_source
- This is the ad platform being used. For example, if doing Facebook/Instagram Ads, you could use “meta” (or “facebook” and “instagram”) if you need to split them out. For Pinterest Ads, you could use “pinterest”
- utm_medium
- This should be the type of traffic it is. For example: email, cpc (this is the Google default for paid search), organic, socialads, etc.
- utm_campaign
- Try to keep consistency with what you used to name campaigns in Google Ads.
- For example, {{Overarching Campaign}}{{Campaign Type}}{{Other Identifiers 1}}_{{Other Identifiers 2}}
- utm_source
- Examples for Meta and Pinterest
- utm_source=meta&utm_medium=paidsocial&utm_campaign=tradeshow_remarketing (alternatively, can use utm_source=facebook)
- utm_source=pinterest&utm_medium=paidsocial&utm_campaign=tradeshow_remarketing
- If you need to add an overarching campaign for your CRM, use the unique value you determined in #7.
- Example: ab_campaigncode=tradeshow_remarketing
MICROSOFT (BING) ADS
How do you add UTM parameters in Bing Ads?
- Enable Auto-Tagging in Microsoft Ads (Recommended)
- All campaigns > Settings > Account level options, then under Auto-tagging of UTM, select the checkbox for “Add UTM tags to my destination URLs”.
- Microsoft also allows to turn on auto-tagging of Click ID. This is recommended to enhance conversion tracking within Microsoft Ads but please note that it does not pass any information to GA4 since GA4 cannot decipher MSCLKIDs.
- Microsoft will then add UTM parameters to landing page URL’s automatically, which eliminates human error associated with manually tagging. Google Analytics can then use these parameters to attribute traffic to Microsoft Ads.
- utm_source=bing
- utm_medium=cpc
- utm_campaign={name of campaign in MS Ads interface}
- utm_content={name of ad group in MS Ads interface}
- utm_term={keyword from MS Ads interface}
- Create a consistent naming convention for Campaign Names
- Use underscores or hyphens, NOT spaces in URL’s
- Caps vs non-Caps matters
- Include the type of campaign to allow for easier sorting
- All campaigns > Settings > Account level options, then under Auto-tagging of UTM, select the checkbox for “Add UTM tags to my destination URLs”.
- Alternatively, you can manually add UTM Tracking Parameters for each landing page URL.
- This is not recommended, as it introduces human error that can be avoided with auto-tagging.
- Add other URL parameters that are needed for CRM systems, etc.
- Just like with Google Ads, if you need to send campaign information to a CRM or other 3rd party, append a parameter to final URL’s that is UNIQUE to that 3rd party or a parameter that the CRM/3rd Party Tool has been instructed to collect from the URL.
Example Links with UTM parameters added:
- UTM Tracking Parameters must be created for hyperlinks in email campaigns, or they will show as direct traffic in Google Analytics.
- Example: Imagine an email has 4 hyperlinks that need to be tracked separately. 4 unique UTM Tracking Parameters would need to be created for the email.
In the above examples:
- utm_term and utm_content parameters are used to identify the link location and link text in the email.
- utm_campaign, utm_medium and utm_source should be the same for each link, as they are all in the same email campaign.
How do you add UTM parameters in an Email Campaign?
- This will depend on your email platform. Some have automated tagging (after initial setup), and others will need to have the UTM parameters added manually to each link.
LINKEDIN ADS
UTM parameters should be used on URLs in LinkedIn Ads / Sponsored Content to identify these clicks and sessions in Google Analytics.
In the above examples:
- utm_campaign is used to identify the LinkedIn Campaign Name.
- utm_term is used to identify the audience to which the ad is shown.
- utm_content is used to identify the version of the ad.
- utm_medium “socialads” (in this example – your naming conventions could be different) and utm_source “linkedin” should be the same for each link, as they are all coming from LinkedIn Ads.
- crm_id is used to demonstrate adding a parameter that is required for CRM system.
How do you add UTM parameters in a LinkedIn Ad / Sponsored Content Campaign?
- Option #1 – preferred: LinkedIn allows you to add UTM parameters at the account and campaign levels, so you don’t have to add them manually to every ad. They also added dynamic parameters (just like Google Ads’) that will automatically populate data without you having to manually enter it. Below you will find a practical example of what we recommend setting up:
- Account Settings > URL tracking parameters
- Enter“utm_source=linkedin&utm_medium=paidsocial&utm_campaign={{CAMPAIGN_NAME}}&utm_content={{CREATIVE_ID}}”
- Option #2: Append it manually to the Destination URL when creating the ad.
META (FACEBOOK/INSTAGRAM) ADS
UTM parameters should be used on URL’s in paid ads from Meta (Facebook/Instagram) to identify these clicks and sessions in Google Analytics.
In the above examples:
- utm_campaign is used to identify the Meta Campaign Name
- utm_term is used to identify the audience to which the ad is shown
- utm_content is used to identify the version of the ad
- utm_source may be either “facebook”, “instagram” or “meta”, as they are all coming from Meta Ads – this will depend on your particular organization’s naming conventions.
- utm_medium may be “paidsocial” or a variation of this or may be “cpc” – this will depend on your particular organization’s naming conventions.
- crm_id is used to demonstrate adding a parameter that is required for CRM system
How do you add UTM parameters in a Meta Campaign?
- Option 1 – preferred: Meta allows you to add a URL parameter at the ad-level which then automatically adds tracking to all URLs within your ad. When creating your ad, under the Tracking section, click “Build a URL Parameter” and then enter your source, medium, campaign and content names.
- Option 2: Append it to the Destination URL when creating the ad.
PINTEREST ADS
UTM parameters should be used on URLs in paid ads from Pinterest Ads to identify these clicks and sessions in Google Analytics.
In the above examples:
- utm_campaign is used to identify the Pinterest Campaign Name.
- utm_term is used to identify the audience to which the ad is shown.
- utm_content is used to identify the version of the ad.
- utm_medium (socialads) and utm_source (pinterest) should be the same, as they are all coming from Pinterest Ads.
- crm_id is used to demonstrate adding a parameter that is required for CRM system.
How do you add UTM parameters in a Pinterest Campaign?
- Append it to the Destination URL when creating the ads.