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.

Advertisement ยท 728ร—90
Campaign Parameters
Generated UTM URL
Fill in Website URL, Source, Medium and Campaign Name to generate your link.
Advertisement ยท 300ร—250

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=Facebook and utm_source=facebook are 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 %20 or +, 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

UTM parameters do not directly affect SEO rankings โ€” Google crawls the canonical URL, not UTM-tagged variants. However, if you share UTM-tagged URLs on public pages and Google indexes them, it may create duplicate content issues. Best practice is to add a <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.

Yes, but Google Ads uses auto-tagging (gclid) by default when linked to GA4, which is more accurate than manual UTM parameters for Google Ads traffic. If you use manual UTM tagging alongside auto-tagging, the manual UTM values may override auto-tagged data. For Google Ads, the best practice is to rely on auto-tagging for the source/medium attribution and use utm_campaign, utm_content, and utm_term for additional granularity if needed.

When you post a UTM-tagged URL on social media, each person who clicks it will be tracked in GA4 with the UTM parameters you set. The long URL with parameters may be visible to users, which some marketers prefer to shorten using a URL shortener like Bit.ly before sharing. URL shorteners work fine with UTM parameters โ€” the redirect passes the full UTM URL to the browser, and GA4 reads the parameters normally.

This usually happens for one of three reasons: (1) The link was opened in an in-app browser (e.g. Gmail app, LinkedIn app) that strips UTM parameters on redirect โ€” test by opening the link in a standard browser instead. (2) The destination page has a redirect that strips query parameters โ€” check with your developer that 301/302 redirects preserve query strings. (3) There is a JavaScript error on the landing page that prevents the GA4 tag from firing and reading the parameters before the URL is cleaned.

In GA4, UTM parameter data is stored and accessible in reports for the duration of your data retention setting โ€” a minimum of 2 months and a maximum of 14 months (on the free tier) or indefinitely (on GA4 360). Campaign attribution persists for the duration of a session, which by default times out after 30 minutes of inactivity or at midnight. If a user returns to your site via a UTM link later, a new session is created with the new attribution.

Yes. This builder automatically URL-encodes your parameter values, so special characters like spaces, ampersands, and slashes are safely encoded. If you build UTM URLs manually, use + or %20 for spaces, %26 for ampersands, and %2F for forward slashes. Failing to encode these characters can break the URL or cause GA4 to read the parameters incorrectly.

Related Free Tools

Need a custom tool built for your business?

Get a Free Quote