UTM Builder – Generate UTM Codes to Track Campaigns in Google Analytics

Create UTM tracking link in seconds, for free! Fill in your campaign information in the fields below, click the Build URL button and copy the generated URL for use in your campaign.

Fill out the required fields marked with an asterisk. To get even more detailed tracking, fill out the optional fields, too. Click the ‘Build URL’ button and your link with UTM parameters will be automatically generated. Click the ‘Copy URL’ button and you’re ready to use the link in your campaigns so Google Analytics (GA) and all other analytics tech can track it.

Your Generated URL:

UTM tracking code copied to clipboard


The UTM builder makes it quick and easy for you to build your URLs with UTM codes. Fill out the empty fields, and it will automatically generate a link with UTMs that you can use for campaign tracking.

Not sure what to add to each empty field? Here’s a detailed guide on correctly filling out the UTM generator to ensure GA tracking and reporting is reliable, relevant, and accurate.


To generate your UTM codes, all you need to do is follow these easy steps in the UTM builder:

  1. Add your website, blog post, or landing page URL in the first field.
  2. Fill out the rest of the fields with the values you’ve specified for the campaign source, medium, name, term, and content.
  3. Click the “Build URL” button to generate your UTM code.
  4. Click the ‘Copy URL’ button to copy the generated URL, and you can start using it in your marketing campaigns.

The newly generated URL with UTM codes will look like this:

link exampleEverything that follows after the “/” of the main URL indicates the beginning of the added UTM parameters. UTM codes always start with the “?” symbol followed by the first UTM parameter. Each parameter is made up of a UTM tag and a property value. The parameters are separated by the “&” symbol.

Once the builder generates the URL with your unique parameters, you can then use it wherever you link: on social media, emails, ads, and more.

You can manually build these links. But it’s easy to make mistakes when typing long query strings like this. And when it comes to UTMs — which are the building blocks of marketing attribution, campaign tracking, and campaign reports — mistakes can be very costly. A simple typo will ruin the accuracy of the data you get in Google Analytics.

Using this UTM generator minimizes the possibility of this happening.

You can assign any name to a UTM parameter. It’s not so much the name of the UTM tag. What actually matters is the consistency and the recognizability.

For example, if you use ‘utm_medium=paid-social” for one campaign, being consistent is sticking to that for all campaigns thereafter. Don’t use this parameter without the dash — ‘?utm_medium=paidsocial‘ — or with capitalized letters — ‘?utm_medium=Paid-Social‘ — for other campaign links.

Recognizability, means having clear and identifiable parameters. So when another teammate sees this parameter three years later, they’ll be able to easily recognize what it means.

We’re doing this for good data practice. If you’re inconsistent with data naming conventions, your reports will not show the true picture of your campaign performance. This undermines the whole point of tracking campaign URLs in the first place.

Five UTM Parameters of Google Analytics (+ UTM Naming Recommendations)

Google Analytics has five default UTM parameters. Three are required: utm_source, utm_medium, and utm_campaign, while utm_term and utm_content are optional.

The table below shows these five parameters and what each parameter means.




UTM Campaign Source


Identifies the platform or website referrer.


UTM Campaign Medium


Identifies the traffic type.


UTM Campaign Name


The name your team designates for a specific marketing promotion. You use the same name across all channels..

This means if you’re running a summer sales campaign, all links you build for that campaign will have the same utm_campaign parameters. 

You can also use this for product descriptions or advanced naming conventions.


UTM Campaign Term


Identifies the keywords used for paid ads.


UTM Campaign Content


Used to differentiate links on the same ad or page. It’s often used for A/B testing the copy or ad placement. If you want to track different ads that point to one URL, use the content parameter.



Once you understand the meaning of the five default parameters, you’re likely asking yourself: how do I name these UTMs?

To help answer that question, here are some examples to inspire the names of UTM parameters in your next campaign.

  • Campaign Source:
    • Use the name of the third-party website or platform where the link will be added. For email tracking, use the platform’s name as your campaign source name. 
    • Example: utm_source=facebook, utm_source=sendgrid
  • Campaign Medium:
    • Use a name that will help you easily distinguish the type of traffic. Is it from an ad? Email? Paid social? Organic social?
    • Example: utm_medium=paid-social, utm_medium=email
  • Campaign Name:
    • Use a name that will allow you to easily connect the campaign across multiple channels. So if you’re running a summer sales campaign, the campaign name parameter will be the same for any external link you’ll be using for that campaign whether that’s on Facebook, in newsletter emails, or on organic social posts. You can also use this to name the type of campaign you’re running
    • Example: utm_campaign=summer-sale-june-2022, utm_campaign=retargeting-2023
  • Campaign Term:
    • Originally created for Google Ads to show which paid search keywords triggered the ad. You can also use it to indicate the ad headlines on other platforms, email subject lines, and more.
    • Example: utm_term=best-hiking-shoes, utm_term=air-jordan-1
  • Campaign Content:
    • Use this to differentiate between ads or posts on the same platform. It can be very useful for A/B testing different ad formats or ad copy. You can also use it to track link placements. Even though this UTM parameter is optional, it doesn’t mean it’s not important. This UTM parameter is the perfect opportunity to add small but important details to your Google Analytics campaign reports.
    • Example: utm_content=ad-version-2b

Following all the examples above, here’s what the final URL with parameters will look like if it’s added to the web.utm.io.

link example

How to Format UTM Tags for Reliable Google Analytics Reporting

As you name UTM tags, there are some best practices to follow to ensure the accuracy and reliability of your data. Here are some of them:

  1. Establish a UTM naming convention so that everyone in your team follows the same rules every time they’re building a UTM parameter. Use this free UTM builder spreadsheet to name and organize UTMs.
  2. UTM parameters are case-sensitive. Minor typos or capitalization inconsistencies (Social vs. social) can mess up reports in your analytics tools. We recommend sticking to lowercase when naming UTMs. This will make everyone’s life much easier (and your data will thank you for it).
  3. Don’t use punctuation or special characters in your UTM parameters.
  4. Always use dashes instead of spaces. Use underscore when you want to keep two words together.
  5. Use UTM tagging on external content only. Using UTM tags on internal links on your website leads to inaccurate reporting as Google Analytics will interpret these clicks as new sessions.
  6. Get specific with your UTM parameters to better organize and streamline your data. It will make campaign reporting easier.

The table below shows these five parameters and what each parameter means.


The table below shows these five parameters and what each parameter means.




Use lowercase letters.

Facebook, MailChimp, convertKit

facebook, mailchimp,


Get specific.



Don’t leave spaces.

paid social

paid_social, paid-social

Keep it simple and readable.




Avoid redundancy.









The Limitations of Free UTM URL Builders

As your marketing campaigns get bigger, it becomes more challenging to track the UTMs you build. When more people are building the UTMs, the mistakes will be more frequent and serious. A free builder like the one on this page, or the free UTM builder on our main site, won’t suffice anymore. 

This can massively affect what you see in your Google Analytics campaign reports.. This could lead to you making business decisions based on inaccurate data.

To prevent this, establish a UTM campaign naming convention as early as possible. You can do this in a spreadsheet. You can use our free template for that. This helps ensure that the data you see in your reports is correct and reliable.

Why Are UTM Parameters So Valuable?

The tracking tags are valuable because UTMs make Google Analytics reports better. For example, without UTMs, there’s no way of knowing whether a click from LinkedIn is from an organic post or a paid ad. But with UTM parameters, you’ll have that information available in all your analytics tools. You can even get more granular data like from which ad variation the traffic came from.

When you can track the smallest details in your campaigns, it becomes easier for you to see which campaigns you can double down on, which ads to allocate more money to, or which copy is not resonating with your customers.

More impactful use of UTMs is that it’s the attribution language of all analytics tools and most marketing platforms.

So you may be building a URL with UTM parameters for Google Analytics. But at the same time, you’re also feeding data to all your other software.

If you’re using a CRM, a multi-touch attribution tool, or a customer data platform, you’re also feeding detailed data into these tools.

UTM parameters help you:

  • Align data across the board
  • Track the customer journey easier
  • Identify which campaign get the best ROI
  • Be better at data management

If you want to have a clear view of the performance of your marketing campaigns, UTM parameters will help you do that. They’ll provide you with accurate insights to fuel your marketing and business decisions and strategies. 

[simple_cta url=”https://web.utm.io/” btn_text=”Sign up With Google”] Take utm.io for a spin. [/simple_cta]