Skip to content
Analytics

UTM parameters: Complete guide to campaign tracking in GA4

Learn how to use UTM parameters correctly to track campaign traffic in GA4, avoid common mistakes, and build a naming system that gives your entire team consistent data.

UTM parameters are the simplest and most effective way to understand which campaigns, channels, and messages actually drive traffic and conversions. Yet it is surprising how many businesses either do not use UTMs at all, or use them inconsistently — resulting in unusable data in GA4. This guide gives you a complete walkthrough of UTM parameters, from basic concepts to advanced governance for teams.

What UTM parameters are and how they work with GA4

UTM parameters (Urchin Tracking Module) are text strings you add to the end of a URL to tell analytics tools where the traffic comes from and which campaign it belongs to. When a user clicks on a URL with UTM parameters, GA4 reads the parameters and uses them to classify the visit in acquisition reports. Without UTM parameters, much traffic gets classified as direct or unassigned — making it impossible to know what is actually working.

A typical UTM URL looks like this: https://example.com/offer?utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_campaign_2026. When the user lands on this URL, GA4 picks up the three parameters and associates them with the entire session. You can then filter and segment reports based on source, medium, and campaign.

UTM parameters work independently of platform — they work for email links, social media, QR codes, display ads, PDFs, and even offline materials with printed URLs. It is this universal compatibility that makes them indispensable for campaign tracking.

The five UTM parameters: When to use each one

utm_source identifies the traffic source — the platform or website the user comes from. Examples: google, facebook, linkedin, newsletter, partner_blog. utm_medium describes the channel or type of traffic. Examples: cpc (paid click), paid_social, email, organic_social, referral, display, affiliate. Use values that match GA4's default channel groups for automatic correct classification.

utm_campaign is the campaign name and should describe the specific campaign or offer. Examples: black_friday_2026, product_launch_q2, newsletter_april. utm_term is traditionally used for paid keywords but can also be used for audience segments in social media. utm_content is used to differentiate between different ad variants, links, or creatives within the same campaign — for example cta_button_top vs. cta_button_bottom.

At minimum, you should always use source, medium, and campaign. Term and content are optional but provide valuable extra information for A/B testing ads and understanding which specific elements drive results.

  • utm_source: Where the traffic comes from (facebook, google, newsletter)
  • utm_medium: Channel type (cpc, paid_social, email, organic_social)
  • utm_campaign: Campaign name (black_friday_2026, product_launch_q2)
  • utm_term: Keyword or audience segment (optional)
  • utm_content: Ad variant or link placement (optional)

Naming conventions: Consistency is everything

The most important rule for UTM parameters is consistency. GA4 treats Facebook, facebook, and FACEBOOK as three different sources. cpc, CPC, and Cpc become three different mediums. This type of inconsistency destroys reports and makes it impossible to see the full picture of a channel.

Establish a standard and document it: Use only lowercase. Use underscores instead of spaces or hyphens (paid_social, not paid-social). Use standardized values that match GA4's default channel grouping (cpc for paid click, paid_social for paid social, email for email). Avoid special characters and accented letters — stick to plain ASCII.

For campaign names, we recommend a format that includes context: [type]_[description]_[date/quarter], for example sale_summer_2026_q3 or webinar_analytics_april. Some teams also add region or audience where relevant. The most important thing is that everyone on the team uses exactly the same format — one person who deviates ruins the reports for everyone.

UTM tools: Campaign URL Builder and alternatives

Google Campaign URL Builder (ga-dev-tools.google/ga4/campaign-url-builder) is the official free tool for generating UTM URLs. You fill in the URL, source, medium, campaign, and any additional parameters, and the tool generates the complete URL. Simple, but it does not prevent inconsistency if different team members type the parameters differently.

For teams, we recommend using a spreadsheet (Google Sheets or Notion) with predefined dropdowns for source, medium, and campaign. We have seen many teams at LeapJet create a simple template where sources and mediums are locked values, while the campaign name follows a fixed formula. This eliminates inconsistency at the root.

UTM.io is a dedicated tool that offers team features: pre-approved parameter values, automatic URL shortening, and reporting directly in the tool. For larger organizations, it may be worth the investment. Regardless of tool, the most important thing is that everyone uses the same source to generate UTM URLs — never let people type parameters manually in the browser address bar.

UTM for different channels: Email, social media, paid, and offline

For email campaigns, you should tag all links with utm_source=newsletter (or the sender name), utm_medium=email, and utm_campaign=[campaign_name]. For emails with multiple links, use utm_content to differentiate: header_link, cta_button, footer_link. This gives you insight into which placements in the email actually drive clicks.

For social media: organic posts are tagged with utm_medium=organic_social, paid ads with utm_medium=paid_social. Source is the platform: facebook, instagram, linkedin, tiktok. For paid ads in Meta and LinkedIn, you can use dynamic parameters that automatically fill in campaign name and ad ID — for example {{campaign.name}} in Meta.

For offline marketing (print ads, business cards, posters), use UTM-tagged URLs shortened with a custom short link or QR code. Example: yourdomain.com/offer with a redirect to the full UTM URL. QR codes are especially effective because they make the transition from offline to digital trackable. For details on tracking setup, see our conversion tracking guide.

Common UTM mistakes and how to avoid them

The most common mistake is tagging internal links with UTM parameters. When you use UTMs on links within your own website, GA4 starts a new session — which means the original traffic source is overwritten. The result is that your campaigns appear to generate less traffic than they actually do, while internal or the site's own domain appears as a source.

Other common mistakes: inconsistent naming (Facebook vs. facebook), missing parameters (only source without medium and campaign), using UTMs on Google Ads links (which already use gclid auto-tagging), and UTM parameters containing personally identifiable information (for example email addresses in the campaign parameter — a direct GDPR violation).

To catch errors early, check the GA4 report under Acquisition > Traffic acquisition regularly. Filter by source and look for variants that should be the same source (Facebook, facebook, fb). Create a monthly UTM hygiene checkpoint in the team's routines where you review reports and correct inconsistencies in the central UTM template.

  • Never use UTM parameters on internal links
  • Always use lowercase and underscores
  • Do not add UTMs to Google Ads URLs (gclid handles this)
  • Never include personal information in UTM parameters
  • Check GA4 reports monthly for inconsistent values

UTM and auto-tagging: When do you need both

Google Ads uses its own tracking mechanism called auto-tagging, which adds a gclid parameter to the URL. This parameter sends detailed data directly to GA4 (campaign, ad group, keyword, etc.) without you needing UTMs. Auto-tagging provides more detailed data than UTMs, so for Google Ads you should always have auto-tagging enabled and avoid manual UTMs.

Meta uses fbclid in a similar way, but fbclid does not automatically integrate with GA4 the way gclid does. Therefore, you need UTM parameters in addition to fbclid for Meta ads. LinkedIn and TikTok have similar systems, but none of them have direct integration with GA4 — UTMs are required for correct attribution in GA4.

The rule of thumb is: For Google Ads, use auto-tagging without UTMs. For all other channels, use UTMs. Never combine gclid and UTM parameters on the same URL — GA4 will prioritize gclid, but it can create confusion in reports. For more on attribution and how different platforms assign conversions, see our attribution models guide.

Reading UTM data in GA4: Reports and custom dimensions

In GA4, you find UTM data primarily in the Acquisition reports. The Traffic Acquisition report shows Sessions grouped by Session source/medium — this is where your UTM data manifests. The User Acquisition report shows First user source/medium, meaning the source of the user's very first visit. Both are important, but for campaign attribution, Traffic Acquisition is usually most relevant.

You can use secondary dimensions and filters to drill down into the data. Add Session campaign as a secondary dimension to see your campaign names. Use filters to isolate a specific source or campaign. For deeper analysis, use Explorations in free-form format where you can combine UTM dimensions with conversion events and user segments.

For advanced use, you can create custom dimensions in GA4 for utm_term and utm_content, which are not standard dimensions in the GA4 interface. Go to Admin > Custom definitions > Create custom dimension, select Event scope, and map to the parameter. Remember that custom dimensions have a quota (50 for event-scoped in the free version), so use them judiciously. For more on GA4 setup, see our GA4 setup guide.

UTM governance for teams: Documentation and approval process

For teams with more than two people creating campaign links, governance is not optional — it is necessary. Start with a central UTM document (Google Sheet recommended) that contains: approved source values, approved medium values, format for campaign naming, and a log of all created UTM URLs.

The central document should have locked columns for source and medium with dropdown menus that only allow approved values. The campaign column should have a formula that automatically formats the name to the correct format. The document should also have a Created by column and a date column for traceability.

In larger organizations, we recommend an approval process where new sources or mediums must be approved by an analytics lead before they are added as allowed values. This prevents the namespace from growing uncontrolled. Run a quarterly review of all active UTM values and clean up values that are no longer in use. For reporting on social media with UTM data, see our social media reporting guide.

Advanced: UTM with server-side tracking and first-party data

In a world where third-party cookies are being phased out and ad blockers are becoming increasingly common, UTM parameters can lose data along the way. Browsers like Safari limit the lifetime of cookies set via JavaScript to 7 days (ITP 2.3), which means UTM data can disappear if the user does not convert within a week. Server-side tracking solves this by setting cookies from the server with longer lifetimes.

With server-side GTM, you can read UTM parameters on the server and set first-party cookies that last longer than 7 days. This provides more complete attribution data, especially for businesses with longer purchase cycles. Combined with a consent management platform (CMP) like Cookiebot or CookieYes, you ensure this happens in compliance with GDPR.

Another advanced technique is storing UTM data in your own database (for example in the CRM system) linked to the user's email address or customer ID at conversion. This gives you a first-party data source that is not dependent on cookies at all. At LeapJet, we implement this type of setup for clients who want robust campaign tracking regardless of browser limitations. For more on server-side tracking, see our dedicated guide. Also see our glossary for definitions of UTM parameters, campaign tracking, and attribution.

New articles, by email

Our latest practical articles on search, ads and analytics, gathered once a month. No sales sequences.

One email a month, no spam. Unsubscribe any time.