UTM Parameter Generator – Free Interactive Builder + GA4 Guide (2025)

Generate UTM parameters instantly with our free interactive builder. Learn UTM best practices, naming conventions, GA4 setup, and how to shorten ugly UTM URLs.

Free Tool + Guide — 2025

Free UTM Parameter Generator
+ Complete GA4 Guide

Build perfectly formatted UTM URLs in seconds. Includes naming conventions, GA4 setup, and the most common mistakes to avoid.

⚙️ UTM Parameter Generator

Fill in the fields below — your tagged URL updates live.

The full URL of the page you want to track.
Where your traffic comes from.
The marketing channel or medium.
The specific campaign name. Use underscores, not spaces.
Paid search keywords (Google Ads).
Distinguish links in the same ad or email.
Your UTM-Tagged URL
Fill in the fields above to generate your URL…
✂️ Shorten with Tiny Tracker
✅ Copied to clipboard!

What Are UTM Parameters?

UTM parameters (Urchin Tracking Module — inherited from Google's 2005 acquisition of Urchin) are small pieces of text added to URLs that tell analytics tools exactly where a visitor came from.

Without UTM parameters, Google Analytics and GA4 lump traffic into buckets like "Direct" or "Referral" and you lose granular campaign data. With UTM parameters, every click tells a story: which campaign drove it, on which channel, from which piece of content.

A UTM URL looks like this:

https://example.com/sale?utm_source=newsletter
&utm_medium=email
&utm_campaign=spring_sale_2025
&utm_content=hero_button

GA4 reads these parameters the moment a user lands on the page and attributes the session accordingly. No extra code required — UTM data flows through automatically via standard URL parsing.

The 5 UTM Parameters Explained

ParameterRequired?What It TracksExamples
utm_source ✅ Yes Where traffic originates google, newsletter, facebook, linkedin, twitter
utm_medium ✅ Yes The marketing channel cpc, email, social, organic, referral, banner, qr
utm_campaign ✅ Yes Specific campaign name spring_sale, black_friday_2025, product_launch_v2
utm_term Optional Paid keyword (search ads) best+crm+software, project+management+tool
utm_content Optional Distinguish ad variants / links hero_cta, sidebar_banner, blue_button, text_link

utm_source — The Origin

utm_source identifies who sent the traffic. Think of it as the publisher or platform. If you're sending an email newsletter, the source is your newsletter platform or brand. If you're running Google ads, the source is google.

utm_medium — The Channel

utm_medium describes how the traffic arrived — the marketing mechanism. Standard values align with GA4's default channel groupings: cpc, email, social, organic, referral. Using standard medium values means GA4 will automatically group them into the right channel buckets.

utm_campaign — Your Campaign

utm_campaign is the name you give to a specific initiative. This is the dimension you'll filter most often in GA4. Be consistent: decide on a naming convention and stick to it across the entire team.

utm_term — Paid Keyword

Primarily for paid search campaigns. When you auto-tag Google Ads, GA4 receives keyword data directly — but if you're doing manual tagging, utm_term lets you capture which keyword triggered the ad. For non-search campaigns, you can creatively use this field to track audience segments.

utm_content — A/B and Creative Tracking

utm_content differentiates links within the same campaign. Sending the same campaign to two audience segments? Use different utm_content values to compare performance. Running multiple CTAs in one email? Tag each button differently.

Naming Conventions & Best Practices

UTM parameters are case-sensitive. utm_source=Facebook and utm_source=facebook appear as two separate sources in GA4. Establishing consistent naming from the start prevents data fragmentation that's impossible to fix retroactively.

The Golden Rules

  • Always lowercase: Use facebook, not Facebook or FACEBOOK.
  • Underscores over spaces: Use spring_sale not spring sale (spaces become ugly %20 in URLs).
  • Use hyphens for multi-word descriptions: Some teams prefer hyphens (spring-sale) — pick one and stick with it.
  • Never use UTMs on internal links: UTMs on same-site links will overwrite the original session source, destroying attribution data.
  • Document everything: Keep a shared spreadsheet of all UTM values your team uses.

Recommended Standard Values

Channelutm_sourceutm_medium
Email newslettermailchimp / klaviyo / sendgridemail
Google Search Adsgooglecpc
Google Display Adsgoogledisplay
Facebook / Instagramfacebook / instagramsocial
LinkedIn Organiclinkedinsocial
LinkedIn Adslinkedincpc
Twitter / Xtwittersocial
QR Codeprint / flyer / posterqr
YouTubeyoutubevideo
Partner / Referralpartner-namereferral

Setting Up UTM Tracking in GA4

The good news: GA4 reads UTM parameters automatically. No extra configuration required. But there are a few things to know to get the most out of your data:

Step 1: Verify Traffic Sources in GA4

Go to GA4 → Reports → Acquisition → Traffic Acquisition. Change the primary dimension to "Session source / medium." After clicking UTM-tagged links, you should see your values appear within a few minutes (use DebugView for real-time testing).

Step 2: Check Channel Groupings

GA4's default channel groupings assign sessions to categories like "Paid Search," "Organic Social," and "Email" based on your utm_medium values. If you use non-standard medium values (like newsletter instead of email), GA4 may bucket them into "Unassigned." Stick to standard values or create custom channel groups in Admin → Data Settings → Channel Groups.

Step 3: Build Campaign Reports

In Explore → Free Form, create a report with Dimensions: Campaign, Source, Medium, Content. Use metrics like Sessions, Engaged Sessions, Conversions, and Revenue. This becomes your campaign attribution dashboard.

Step 4: Set Up Conversion Events

UTM attribution only becomes valuable when tied to conversions. Make sure your key actions (purchases, form submissions, sign-ups) are marked as Conversion events in GA4 → Admin → Events. Then you can see which campaigns actually drive revenue, not just clicks.

💡 GA4 Auto-Tagging vs UTM Tagging Google Ads has an "auto-tagging" feature that appends a gclid parameter automatically. If you're using Google Ads, you don't need manual UTM tags for those campaigns — but you should still tag all other traffic sources manually.

Common UTM Mistakes to Avoid

❌ Mistake 1: Tagging Internal Links

The most damaging UTM mistake. If you add UTM parameters to links within your own site (yoursite.com/page → yoursite.com/other-page?utm_source=internal), GA4 will treat each click as a new session with a new source, destroying the original attribution. Never UTM-tag internal navigation.

❌ Mistake 2: Inconsistent Capitalization

In GA4, Email, email, and EMAIL are three different medium values. Even one team member using capital letters creates fragmented reports. Enforce lowercase-only in your style guide.

❌ Mistake 3: Forgetting the Campaign Parameter

Using only utm_source and utm_medium without a campaign name means all your traffic from that source blends together. You won't be able to differentiate between campaigns. Always include utm_campaign.

❌ Mistake 4: Sharing Bare UTM URLs on Social

UTM URLs are long and ugly. Pasting yoursite.com/page?utm_source=twitter&utm_medium=social&utm_campaign=spring_sale directly into a tweet looks unprofessional and may get truncated. Shorten it first (see below).

❌ Mistake 5: Using UTMs for Email Within the Same Domain

If your emails link to your own site, UTMs are appropriate. But linking from one microsite to another and back again with UTMs creates attribution loops. Keep your tracking architecture clean.

🚫 Never Do This Adding UTM parameters to your homepage's navigation menu. Some sites accidentally add UTM parameters to logo links or nav items, restarting sessions for every internal click.

Why You Should Shorten UTM URLs

A fully tagged UTM URL can easily reach 300–400 characters. This creates real problems:

  • Links break in some email clients when lines wrap
  • Social platforms truncate long URLs, making them unclickable
  • SMS has strict character limits — UTM URLs burn most of them
  • Printed materials can't contain long URLs (use QR codes instead)
  • Users see the raw tracking parameters, which looks unprofessional

✂️ Shorten Your UTM URLs Automatically

Tiny Tracker shortens UTM URLs into clean branded links — while passing all UTM parameters through to GA4 intact. Your tracking still works perfectly. Your links look professional.

Shorten UTM URLs Free →

When you shorten a UTM URL with Tiny Tracker, the short link automatically passes all UTM parameters to the destination on click. GA4 receives the full attribution data — you just share a clean 20-character link instead of a 300-character monster.

Frequently Asked Questions

Do UTM parameters affect SEO?

UTM parameters don't directly affect SEO, but they should be handled correctly. Use the rel="canonical" tag on your pages pointing to the clean URL (without UTM params) to ensure search engines don't index UTM variants. Properly configured, UTMs are invisible to Google Search.

Can I use UTM parameters on any URL?

Yes — any URL that accepts query parameters (which is almost all of them). The exception is some single-page apps that use hash-based routing; test your UTMs before running campaigns to ensure they're being read correctly by GA4.

What's the difference between utm_source and utm_medium?

utm_source is who sent the traffic (e.g., "mailchimp", "google"). utm_medium is how they sent it — the channel type (e.g., "email", "cpc"). Think of source as the publisher and medium as the ad format or channel type.

How long does it take for UTM data to appear in GA4?

Real-time reports in GA4 show UTM data within seconds. Standard reports update within 24–48 hours. Use DebugView (Admin → DebugView) with ?debug_mode=1 appended to your URL for instant testing.

Can I use UTM parameters with shortened links?

Yes — and you should. Tiny Tracker preserves all UTM parameters through the redirect, so your GA4 attribution is fully intact even through a short link. Just make sure your shortener uses a 301 redirect (not 302).