
July 17, 2025
A Guide to UTM Parameters in Google Analytics 4
Updated: July 17th, 2025
UTM parameters are additional information you can add to links to your site. Tracking these additional parameters in Google Analytics 4 allows a more detailed view of how users reach your site.
Have you previously run email marketing campaigns and been unable to determine how much traffic lands on your site from these campaigns? Adding UTM parameters to the links in your emails will allow you to see the users coming from these campaigns and the actions they take on your site!
The use of UTM parameters is not limited to just email campaigns either. Keep reading to learn how to use them in any of your campaigns!
Table of Contents
Here’s what you will learn in this article
- What are UTM parameters?
- The benefits
- Organizing your UTM parameters
- How to add UTM parameters to a URL
- Finding UTM parameter data in GA4
- UTM parameters and their dimensions
- Viewing UTM parameters in Explorations
- Common mistakes
- Final Words
Video Tutorial
Check out this video on the Analytics Mania YouTube channel if you prefer video content!
What are UTM parameters?
So, what exactly are UTM parameters? Simply, they are a set of customizable parameters added to a URL to provide more information on where a user came from before landing on your site.
For example, if you run a paid ad on Instagram for a Black Friday sale, you might have the following link in your ad:
The classic UTM parameters are utm_source, utm_medium, utm_campaign, utm_term, and utm_content. When adding UTM parameters to links, you should always include the utm_source, utm_medium and utm_campaign.
The table below outlines the purpose of each of the parameters.
- utm_source – Tracks the referrer. E.g., youtube.com or a specific newsletter
- utm_medium – Tracks the type of marketing medium. E.g., email or cpc
- utm_campaign – The specific campaign you are running. E.g., black-friday or boxing-day-sale
- utm_term – If you manually tag paid keyword campaigns, use this parameter to identify paid search keywords.
- utm_content – This parameter is helpful when the same campaign is run across multiple locations, leading to the same link to compare which does best. For example, if you have the same email campaign but use different photos in the email, you can use the utm_content parameter to distinguish between the two emails.
While utm_source, utm_medium, and utm_campaign are required, the optional utm_term and utm_content parameters allow you to answer more granular questions. For example, if you are A/B testing two different images in the same email campaign, you could use utm_content=blue-image and utm_content=red-image. This lets you see not just that the email worked, but which specific creative inside the email was more effective at driving clicks and conversions.
Check out this article to learn more about building URLs with UTM parameters.
The benefits of using UTM parameters
UTM parameters are customizable, so you can choose the naming convention that best suits your needs. You can add these parameters to any links across all campaigns, including email, affiliate, and social media.
Ideally, UTM parameter names should follow the documentation of Default channel group. If you come up with completely custom values, a lot of traffic will be displayed as Unassigned.
Don’t panic when you see traffic in the “Unassigned” channel group. This is simply GA4’s way of telling you that it received visitors from a campaign it could not automatically categorize based on its built-in rules. By using a secondary dimension like “Session source / medium,” you can investigate exactly what these campaigns are. Often, a quick correction to your naming convention is all it takes to make sure future traffic gets sorted into the right channel, like “Email” or “Paid Social”.
Or, alternatively, you can use custom channel groups.
Using UTM parameters, you can view metrics and conversions associated with marketing campaigns, like total revenue or session conversions. Reports in GA4 make it possible to partition users and compare their actions on your site based on the campaign that leads them there (see the final words for more on this).
This will show you what types of campaigns perform the best so you can learn where to focus your time and money. Running marketing campaigns costs time and money, so it is vital to see the impact these campaigns have on your business.
Organizing your UTM parameters
If you’re running many campaigns or have multiple people in your business creating campaigns (or both), it may get overwhelming quickly!
You should manage the UTM parameters you use in a single place or a specialized tool like utm.io to access all campaign information quickly and ensure consistent naming conventions.
Google Analytics 4 is case sensitive, so if the utm_campaign is black-friday that will not be the same as Black-Friday, displaying in two separate rows in a report. So, having some pre-defined naming conventions (E.g., always use lower-case) that everyone can view will be helpful.
A shared spreadsheet is often the easiest place to start for managing your UTMs. You can create columns for your link, source, medium, and campaign, and then a final column that automatically combines them into the final URL. This not only keeps a historical record of all your campaign links but also allows team members to copy and paste pre-approved links directly. This process can significantly reduce the typos and inconsistencies that lead to messy analytics data down the road.

How to add UTM parameters to a URL
Now that you understand what UTM parameters are and what their benefits are, let’s look at how to add them to your campaign links.
First, you will want to determine which page on your site the campaign will link to. Let’s say the page we want to link to is www.yourwebsite.com/new-product.
You will add a question mark (?) to the end of the link, which designates parameters in the URL. Following this, you will begin with your first UTM parameter. Each proceeding parameter will start with an ampersand (&).
Suppose the URL already has some parameters in it. In this case, place an ampersand (&) at the end of the existing parameters and then add the UTM parameters separated by ampersands.
Check out the Google campaign URL builder if you need help building URLs with UTM parameters.
After inputting your UTM parameters, the tool will output your completed page URL!
Finding UTM parameter data in GA4
Now that you have added UTM parameters to the links in your campaigns, you will want to access data for them in Google Analytics 4.
Go to Reports > Acquisition > Traffic Acquisition (or User Acquisition) in the interface. If you’re unsure which report best suits your needs, check out the blog post about User Acquisition vs Traffic Acquisition.
Since the sidebar of GA4 is customizable, your version may not look the same as the screenshot provided, so the report may be in a different location.
Here, you can choose the parameters that you are interested in. Add a primary dimension from the dropdown and a secondary dimension by clicking the plus sign (+).
The Session source/medium and Session campaign are a simple place to start since you must include these three parameters in the URL. You can see various metrics associated with these parameters, like users, sessions and total revenue.
Check out the guide to Acquisition reports in GA4 to learn more about how to use these reports!
UTM parameters and their dimensions
Depending on if you are using the Traffic Acquisition report or the User Acquisition report, there are different dimension names used in the report. See the list below for an overview.
- utm_medium: Session medium in Traffic Acquisition reports or First user medium in User acquisition reports.
- utm_source: Session source in Traffic Acquisition reports or First user source in User acquisition reports.
- utm_campaign: Session campaign in Traffic Acquisition reports or First user campaign in User acquisition reports.
- utm_term: Session manual term in Traffic Acquisition reports or First user manual term in User acquisition reports.
- utm_content: Session manual ad content in Traffic Acquisition reports or First user manual ad content in User acquisition reports.
- utm_id: Session campaign ID in Traffic Acquisition reports or First user campaign ID in User acquisition reports.
In general, “Session” dimensions are found in the Traffic Acquisition report & ”First user” dimensions in the User Acquisition report.
You can learn more about the traffic-source dimensions that Google Analytics 4 supports here. Note that utm_source_platform and utm_creative_format are not reported in GA4.
Viewing UTM parameters in Explorations
If the pre-defined Acquisition reports do not provide you with precisely what you want, then you can view your UTM parameters in an Exploration.
Go to Explore in the left-hand navigation and then click “Blank Report”.
You will find the relevant dimensions in the Traffic source section. Refer to the table in the previous section to determine which dimensions you need to get the information you want.
Select the appropriate metrics depending on what questions you want to answer about your campaigns. To get an overview of which campaigns are resulting in the most sessions with conversions, you can add in the Session conversion rate metric.
Drag the dimensions into the Row section and add the metrics into the Values section.
You can do plenty more with Exploration, which you can read about here!
Common mistakes
Even though UTMs are helpful for tracking marketing campaigns, tiny mistakes during the setup can lead to big headaches and messy data in your Google Analytics 4 reports.
In this chapter, I wanted to take a look into the most common pitfalls and how to avoid them:
#1. Inconsistent naming convention. Using inconsistent capitalization (e.g., Facebook vs. facebook vs. FaceBook), typos, or different terms for the same thing (e.g., email vs. e-mail vs. newsletter) are treated as separate entities in GA4. This means that aggregation in your reports will not work as well as you would expect. Because of this, a single campaign might be split into several rows in your reports. A solution? Use a consistent naming convention (e.g., all values are lowercase) and stick to it. Ideally, you should use a shared spreadsheet or a UTM management tool in your team.
#2. Tagging internal links. UTMs are meant for marketing campaigns (that drive traffic to your site) only. Internal links (e.g., on your menu links) should never be tagged with UTMs. Why? Because it can mess up your attribution. Here’s an example: a visitor lands on your site from google organic and then clicks a menu link with UTMs. The current session remains unaffected. However, if the next session is direct, the UTM value from the previous session will be inherited. This distorts accuracy in your reports.
#3. Forgetting to tag campaigns. This is an honest mistake but crucial to avoid. Untagged marketing traffic often gets lumped into inaccurate categories in GA4, commonly appearing as direct / none or potentially misattributed to Organic Social or Referral depending on the platform. A fairly simple way to avoid this is to create a campaign launch checklist (where one of the list items is tagging links with UTMs).
UTM Parameters in Google Analytics 4: Final Words
If you are running any marketing campaigns, using UTM parameters is a no-brainer to help you assess the impact of the campaigns on your business.
Using many custom UTM parameters means that Google Analytics 4 will put a considerable portion of your traffic into the unassigned default channel group. You can adapt the UTM naming conventions to follow the default channel group rules or create a custom channel group.
Perhaps if you are running multiple Boxing Day campaigns, you would want to look at the impact of these campaigns so you could make a custom channel group for these campaigns.
Whether or not you choose to create a custom channel group, you can use the pre-defined reports or Explorations in GA4 to continue seeing the impact of your campaigns!
4 COMMENTS
Hi Julius - is it possible to create custom campaign UTM parameters that can be tracked in GA4 and used in LookerStudio as a dimension?
For instance, I use a couple different agencies to execute paid search and paid social campaigns and would like to identify which agency is executing the campaigns using LookerStudio. I was thinking it would be great to create a custom campaign UTM parameter of 'utm_agency=' so I can have a dimension in Looker that captures that string.
I know entering it as part of the URL is absolutely possible, but how would I capture that parameter just like 'utm_medium=' or 'utm_source'?
You can't replicate exactly that because ga4 does not support session-scoped custom dimensions
Hi! Is there a way to do that now? Also, for instance, can I track what query sent user to the website to check what queries are the ones that convert the most?
We are facing an issue with tracking Facebook Ads transactions in Google Analytics. The transaction amount shown on the Facebook Ads dashboard is significantly higher compared to what we see in Google Analytics for the same day. We have already checked our tracking codes and they are correctly implemented, but we are still experiencing discrepancies between Facebook and Analytics data.
I am currently using utm_medium=Paid+Social. The traffic is being grouped under the "Paid Social" default channel in GA4, but the transactions from Facebook are not being tracked accurately in Analytics. For example, Facebook reports more transactions than what is recorded in GA4.
What is the correct utm_medium value I should use in GA4 to ensure that Facebook Ads transactions are tracked properly?