Free UTM Link Builder
Build Google Analytics campaign tracking URLs in seconds. Fill in the fields and get a ready-to-use UTM link instantly.
What Are UTM Parameters?
UTM parameters โ short for Urchin Tracking Module โ are small snippets of text added to the end of a URL that tell Google Analytics exactly where a visitor came from, how they got to your site, and what campaign brought them there. Originally developed by Urchin Software (acquired by Google in 2005), UTM parameters became the universal standard for campaign tracking in web analytics. Today they work with Google Analytics 4 (GA4), Adobe Analytics, Mixpanel, Plausible, and virtually every other analytics platform.
A UTM URL looks like this: https://example.com/landing-page/?utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale. The part after the question mark is a query string containing three UTM parameters that tell GA4 the visitor came from a newsletter, delivered via email, as part of the spring_sale campaign. When that visitor lands on your site and the analytics tag fires, it reads those parameters and attributes the session accordingly in your reports.
The Five UTM Parameters Explained
There are five standard UTM parameters, three of which are required for tracking to work correctly in GA4:
- utm_source (required): The origin of your traffic. Examples: google, newsletter, facebook, linkedin. This answers the question "where did this traffic come from?"
- utm_medium (required): The marketing channel or mechanism. Examples: cpc (cost per click), email, social, banner, organic. This answers "how did they get here?"
- utm_campaign (required): The specific campaign name, promotion, or product. Examples: spring_sale_2025, product_launch, retargeting_q1. This answers "which campaign drove this traffic?"
- utm_term (optional): Used primarily for paid search campaigns to identify the keyword that triggered the ad. Example: free+invoice+generator.
- utm_content (optional): Used for A/B testing or to differentiate between multiple links within the same campaign. Example: hero_cta_button vs sidebar_link.
How GA4 Tracks Campaigns
When a user clicks a UTM-tagged link and lands on your site, Google Analytics 4 reads the UTM parameters from the URL and creates a session attributed to that campaign. You can view this data in GA4 under Reports โ Acquisition โ Traffic Acquisition or Campaigns. The data appears in near real-time and is stored for at least 14 months by default.
GA4 uses a different attribution model to Universal Analytics. By default, GA4 applies a data-driven attribution model that distributes credit across multiple touchpoints in the customer journey, rather than giving 100% credit to the last click. This means UTM tracking becomes even more important as it provides the raw campaign data that the attribution model works with.
If you run paid Google Ads campaigns, GA4 can auto-tag clicks using gclid parameters โ but for all other paid and organic channels (email, social, affiliate, influencer), UTM parameters are the only way to pass campaign data to GA4. Without them, GA4 will attribute that traffic to "direct" or "(not set)", making your reports misleading.
UTM Best Practices
Inconsistent UTM parameters are one of the most common causes of dirty analytics data. Follow these best practices to keep your reports clean and actionable:
- Use lowercase consistently. GA4 is case-sensitive:
utm_source=Facebookandutm_source=facebookare treated as two different sources and will appear as separate rows in your reports. Always use lowercase for all parameter values. - Use underscores or hyphens instead of spaces. Spaces in URL parameters get encoded as
%20or+, which can cause inconsistency. Use spring_sale not spring sale. - Standardise medium values. Pick a fixed vocabulary for utm_medium and stick to it across all teams and campaigns. Common standards: email, social, cpc, organic, referral, affiliate, display.
- Never use UTM parameters on internal links. If you tag links between your own pages, GA4 will misattribute sessions. UTM parameters are for external traffic โ ads, emails, social posts, partner sites โ not for navigation within your own site.
- Document your naming conventions. Create a shared spreadsheet that lists all approved values for source, medium, and campaign name. Every person on the marketing team should use the same sheet before creating any UTM links.
- Test your links before sending. After generating a UTM URL, visit it yourself and confirm it appears correctly under Realtime in GA4 before sending it to thousands of email subscribers.
UTM Parameters for Email Marketing
Email is one of the highest-ROI marketing channels, but without UTM parameters, GA4 misattributes email clicks as direct traffic โ because email clients don't pass referrer headers the way browsers do when navigating between websites. The standard convention for email campaigns is: utm_source=newsletter (or the name of your email tool, e.g. mailchimp) and utm_medium=email. Use utm_campaign to name the specific email, such as may_2025_promo or abandoned_cart_followup. For newsletters with multiple links โ multiple articles, several CTAs โ use utm_content to differentiate them: article_1_cta, footer_link, main_banner.
UTM Parameters for Social Media
Social media platforms vary in how well they pass referrer data to analytics tools. Facebook and Instagram are particularly bad at passing referrer information when users click links in mobile apps. Without UTM parameters, a significant portion of your social traffic will appear as direct in GA4. The standard for organic social posts is utm_medium=social and utm_source set to the platform name (facebook, instagram, twitter, linkedin, tiktok, pinterest). For paid social ads, use utm_medium=paid-social or utm_medium=cpc to distinguish paid from organic social traffic in your reports.
Frequently Asked Questions
<link rel="canonical"> tag on landing pages pointing to the clean URL, which is typically already present on well-built sites. UTM parameters in email links and social posts never reach Google's crawler.Related Free Tools
Need a custom tool built for your business?
Get a Free Quote