Skip to main content
Sprout SEO

UTM Builder Guide and Tool: Track Your Marketing Campaigns Like a Pro

Learn how to use our free UTM builder to create tracking URLs for your marketing campaigns. Master UTM parameters, avoid common mistakes, and measure campaign performance in Google Analytics.

Track all your campaigns following these steps

Save time on your campaigns with our easy-to-use UTM Builder tool!

  1. Enter the website URL that you want your visitors to land on.
  2. Fill out all fields marked with an asterisk (*), and the campaign URL parameters will be generated for you.
  3. Copy and use your campaign URL with UTM parameters.

The full website URL (e.g. https://www.yourawesomewebsite.com).

The ads campaign id. (e.g. remarketing-2023).

The referrer (e.g. google, facebook, newsletter).

Marketing medium (e.g. cpc, social, email, partnership).

Product, promo code, or slogan (e.g. summer_sale) One of campaign name or campaign id are required.

Identify the paid keywords (e.g. running shoes).

Use to differentiate ads (e.g. sidebar-ad).

Fill out required fields above and a URL will be generated for you here.

More information and examples for each parameter

Not sure what these different UTM terms mean exactly? The following table gives a detailed explanation and example of each of the campaign parameters:

Parameter Required Example Description

Campaign ID

utm_id
No remarketing-2023

A unique identifier for the specific marketing campaign you are running. This helps to differentiate between various campaigns and track their performance individually. Use utm_id to identify a specific ads campaign.

Campaign Source

utm_source
Yes google facebook newsletter

The referrer of the traffic, such as a search engine (e.g., Google), a social media platform (e.g., Facebook), or a specific website (e.g., somewebsite.com). This parameter helps you identify where your traffic is coming from. Use utm_source to identify a search engine, newsletter name, or other source.

Campaign Medium

utm_medium
Yes cpc social email partnership

The marketing medium used to promote your campaign, such as email, social media, or paid search. This parameter helps you understand which channels are driving traffic to your website or content. Use utm_medium to identify a medium such as email or cost-per-click.

Campaign Name

utm_campaign
No summer_sale

The name of your marketing campaign, often used to differentiate between various promotional efforts for the same product or service or for keyword analysis. This parameter helps you track the performance of specific campaigns, making it easier to compare and analyze their success. Use utm_campaign to identify a specific product promotion or strategic campaign.

Campaign Term

utm_term
No running+shoes

Typically used for paid search campaigns, this parameter is used to track specific keywords that users searched for before clicking on your ad. This can help you understand which keywords are driving traffic to your website and optimize your keyword targeting. Use utm_term to note the keywords for this ad.

Campaign Content

utm_content
No sidebar-ad

This parameter is used to differentiate between different types of content or variations within a single campaign. It can be particularly useful for A/B testing, allowing you to track the performance of different ad creatives, email subject lines, or calls-to-action. Use utm_content to differentiate ads or links that point to the same URL.

Remember that not all UTM parameters are required for every campaign, and you should choose the ones that best fit your tracking needs (we marked the required ones in the table above).

These parameters can be added to any URL. Let's say you have a URL:

https://www.yourawesomewebsite.com

After adding UTM parameters to this URL, it will look something like this:

https://www.yourawesomewebsite.com?utm_source=google&utm_medium=cpc&utm_campaign=sale&utm_content=signup

You can then share these UTM tracked (tagged) URLs on various channels. These channels can include:

  • Social networks like Facebook, Twitter, LinkedIn
  • Email campaigns like newsletter, drip, purchases, cold email, etc.
  • Ad campaigns including search, display, retargeting
  • Print media like flyers, billboards, visiting cards, promotional material, etc.

You’re spending thousands on marketing campaigns, but you have no idea which ones are actually working.

Your Facebook ads, email newsletters, and influencer partnerships all send traffic to your website—but when you check Google Analytics, half of it shows up as “direct” or gets lumped into vague categories like “social.” You can’t tell which specific post drove those conversions, which email subject line resonated, or which ad creative flopped.

This isn’t just frustrating. It’s expensive. Without accurate tracking, you’re essentially throwing money at campaigns and hoping something sticks. You can’t optimize what you can’t measure, and you can’t prove ROI without data.

The solution is simpler than you think: UTM parameters. These tiny tracking codes transform your analytics from guesswork into actionable insights. And with our free UTM builder above, you can create properly formatted tracking links in seconds.

This guide will show you exactly how to use UTM parameters to track every marketing campaign, avoid the mistakes that ruin your data, and finally know which efforts are worth your budget.

TL;DR

UTM parameters are tracking codes you add to URLs to measure marketing campaign performance in Google Analytics. Our free UTM builder above helps you create properly formatted tracking links in seconds. Use utm_source to identify where traffic comes from, utm_medium for the channel type, and utm_campaign for the specific promotion. Always use lowercase, never tag internal links, and maintain consistent naming conventions across your team for accurate reporting.

Marketing campaigns are expensive. Whether you’re running Facebook ads, sending email newsletters, or partnering with influencers, you need to know what’s working and what’s wasting your budget.

That’s where UTM parameters come in.

What Are UTM Parameters?

UTM stands for “Urchin Tracking Module,” named after Urchin Software Corporation, which Google acquired in 2005 to form the foundation of Google Analytics.

A UTM parameter is a snippet of text you append to the end of a URL. When someone clicks that link, the parameters are sent to your analytics tool, giving you detailed information about that click.

Here’s what a URL with UTM parameters looks like:

https://www.example.com/?utm_source=facebook&utm_medium=social&utm_campaign=spring_sale

Everything after the ? is tracking data. Each parameter follows the format utm_parameter=value, and multiple parameters are separated by &.

Why UTM Parameters Matter

Without UTM tracking, much of your traffic gets lumped into vague categories like “Direct” or “Social.” You might see that 500 people visited from Facebook, but you won’t know:

  • Which specific post drove those visits
  • Whether they came from an ad or organic post
  • Which campaign they were part of
  • What creative or message they responded to

UTM parameters solve this problem by capturing granular data about every click. This allows you to:

  • Compare campaign performance across platforms and channels
  • Prove ROI by connecting marketing activities to conversions
  • Make data-driven decisions about where to invest your budget
  • Optimize your creative by testing different messages and formats
  • Track partner and influencer campaigns with precision

The Five UTM Parameters (Quick Reference)

There are five standard UTM parameters—three required and two optional. The table below the tool above shows detailed examples, but here’s a quick overview:

Parameter Required? What It Tracks Example
utm_source Yes Where traffic comes from facebook, google, newsletter
utm_medium Yes Type of marketing channel social, email, cpc, display
utm_campaign Yes Specific campaign name spring_sale_2025, product_launch
utm_term No Paid search keywords running_shoes, best_laptop
utm_content No Creative variation or link header_cta, image_ad, video_banner

See the detailed parameter table in the tool above for complete descriptions and more examples.

Where to Use UTM Parameters

You can add UTM parameters to any link you share online. They’re especially valuable for:

  • Social media posts (organic and paid)
  • Email marketing campaigns and newsletters
  • Digital advertising (Google Ads, display, retargeting)
  • Influencer and partner campaigns
  • QR codes on print materials
  • Affiliate programs and referral links

Without UTM tracking, traffic from these sources often appears as “direct” or gets misattributed, making it impossible to measure campaign performance accurately.

Why Most Marketers Get UTM Tracking Wrong

Before we dive into best practices, let’s address the elephant in the room: most companies have messy UTM data. You’ve probably seen it in your own Google Analytics—campaigns with slightly different names appearing as separate entries, traffic from the same source showing up under multiple labels, or worse, valuable traffic showing up as “direct” because nobody bothered to tag the links.

This isn’t because UTM parameters are complicated. It’s because without clear guidelines, every team member creates tags differently. One person uses Facebook, another uses facebook, and someone else uses fb. By the end of the quarter, your campaign reports are unusable.

The solution? Follow these proven best practices from the start.

Best Practices for Creating UTM Parameters

Following these best practices ensures clean, consistent data in your analytics reports.

1. Always Use Lowercase

UTM parameters are case-sensitive. That means utm_source=Facebook and utm_source=facebook will appear as separate sources in your reports, fragmenting your data.

Rule: Always use lowercase for all parameter values.

Good: utm_source=facebook&utm_medium=social

Bad: utm_source=Facebook&utm_medium=Social

2. Use Hyphens or Underscores, Never Spaces

Spaces in URLs get encoded as %20, making your links ugly and hard to read in reports.

Rule: Replace spaces with hyphens (-) or underscores (_). Use + for spaces if you want them to display as spaces in Google Analytics.

Good: utm_campaign=spring-sale-2025

Also good: utm_campaign=spring_sale_2025

Bad: utm_campaign=spring sale 2025 (displays as spring%20sale%202025)

3. Keep a Master Spreadsheet

As your campaigns grow, it’s easy to create inconsistent tags. Maintain a spreadsheet of all your UTM links including:

  • Full URL with parameters
  • Short link (if using a URL shortener)
  • Campaign name
  • Source and medium
  • Creation date
  • Creator name
  • Campaign notes

This prevents duplicate tags and maintains consistency across your team.

This is critical: Never add UTM parameters to links between pages on your own website.

Here’s why: When someone clicks from Facebook to your blog post, Google Analytics starts a session and attributes it to Facebook. If that blog post has a button to your homepage with utm_source=blog, Google Analytics starts a new session and attributes it to your blog—losing the original Facebook attribution.

Rule: UTM parameters are for external traffic only.

5. Establish Naming Conventions

Before your team creates hundreds of tracking links, agree on naming standards:

  • Format: How will you structure campaign names? (e.g., {goal}-{product}-{date})
  • Separators: Hyphens or underscores?
  • Date format: YYYY-MM-DD or MMDDYYYY?
  • Capitalization: All lowercase (recommended)
  • Abbreviations: What shortcuts are acceptable?

Document these rules and share them with everyone who creates tracking links.

6. Be Consistent Across Channels

If you’re running the same campaign on Facebook, Twitter, and LinkedIn, use the same utm_campaign value for all three. Only the utm_source should change.

This allows you to see total campaign performance across all channels in a single view.

Channel-Specific UTM Strategies

Different marketing channels require different approaches to UTM tracking.

Email Marketing

Recommended structure:

  • utm_source: How the person joined the list (newsletter, download, webinar)
  • utm_medium: email
  • utm_campaign: Campaign identifier (weekly-2025-01-10, product-launch)
  • utm_content: Link location or CTA (header-cta, footer-link)

Example:

utm_source=newsletter
&utm_medium=email
&utm_campaign=weekly-2025-01-10
&utm_content=hero-cta

Why this works: It tells you not just that traffic came from email, but which list it came from and which specific campaign. You can compare the performance of different email lists and identify your most valuable subscribers.

Social Media (Organic)

Recommended structure:

  • utm_source: Platform name (facebook, linkedin, twitter)
  • utm_medium: social
  • utm_campaign: What you’re promoting
  • utm_content: Post type or variation (video, carousel, story)

Example:

utm_source=linkedin
&utm_medium=social
&utm_campaign=case-study-launch
&utm_content=carousel-post

Pro tip: For platforms like Instagram where you can’t add clickable links to posts, use UTM parameters in your bio link and Stories.

Social Media Ads

Recommended structure:

  • utm_source: Platform name (facebook, linkedin, twitter)
  • utm_medium: paid-social or social-cpc
  • utm_campaign: Campaign name
  • utm_content: Ad variation or creative (image-a, video-b)
  • utm_term: Audience segment (optional)

Example:

utm_source=facebook
&utm_medium=paid-social
&utm_campaign=spring-sale
&utm_content=video-ad-v2
&utm_term=interest-runners

Important: Don’t use utm_medium=cpc for social ads. Google Analytics defaults to categorizing cpc as paid search, which will make your social ads appear under “Paid Search” instead of “Paid Social.”

Recommended approach: Use auto-tagging, not manual UTM parameters.

Google Ads has a built-in auto-tagging feature that appends a gclid parameter to your URLs. This provides more detailed tracking than manual UTM parameters and automatically integrates with Google Analytics.

When to use manual UTMs: Only if your website doesn’t support gclid parameters or you need to track Google Ads data in non-Google analytics platforms.

If you must use manual UTM tags with Google Ads:

  • utm_source: google
  • utm_medium: cpc
  • utm_campaign: Campaign name
  • utm_term: {keyword} (use Google’s dynamic parameter)
  • utm_content: Ad variation

Display Advertising

Recommended structure:

  • utm_source: Ad platform or publisher (gdn, publisher-name)
  • utm_medium: display
  • utm_campaign: Campaign name
  • utm_content: Ad size or placement (300x250, sidebar)

Example:

utm_source=gdn
&utm_medium=display
&utm_campaign=retargeting-q1
&utm_content=728x90-banner

Partner and Affiliate Campaigns

Recommended structure:

  • utm_source: Partner name or domain
  • utm_medium: referral or affiliate
  • utm_campaign: Partnership name or offer
  • utm_content: Link placement (optional)

Example:

utm_source=partner-blog
&utm_medium=affiliate
&utm_campaign=review-post

Pro tip: Give each partner a unique source value so you can track performance individually.

Common UTM Mistakes to Avoid

Even experienced marketers make these mistakes. Here’s how to avoid them.

Mistake #1: Inconsistent Naming

Problem: Your team creates utm_campaign=sale, utm_campaign=Sale, and utm_campaign=SALE for the same campaign.

Result: Three separate campaigns in your reports, splitting your data.

Solution: Enforce lowercase conventions and maintain a master spreadsheet of approved values.

Mistake #2: Using the Same UTM Parameters Repeatedly

Problem: You use utm_campaign=newsletter for every email you send.

Result: All your emails blend together, making it impossible to compare performance.

Solution: Make campaigns unique by adding dates or version numbers: newsletter-2025-01-10

Mistake #3: Forgetting UTM Parameters in Redirects

Problem: You tag a link that redirects to another URL, and the redirect strips your UTM parameters.

Result: Traffic appears as “direct” instead of from your campaign.

Solution: Always use the final destination URL, not a URL that will redirect. If you must use redirects, configure your server to preserve query parameters.

Problem: You add utm_source=blog to links from your blog to your homepage.

Result: Blog traffic gets attributed as a separate source, overwriting the original referrer and inflating your session count.

Solution: Never use UTM parameters on internal links. Use Google Analytics events or destination tracking instead.

Mistake #5: Using Spaces or Special Characters

Problem: You create utm_campaign=My Campaign! with spaces and special characters.

Result: URLs break, or parameters display as My%20Campaign%21 in reports.

Solution: Use only lowercase letters, numbers, hyphens, underscores, and plus signs.

Mistake #6: Ignoring Mobile Apps

Problem: You share UTM links via mobile apps (WhatsApp, Telegram, Instagram DMs) that don’t preserve referrer information.

Result: Traffic appears as “direct” even though it came from your campaign.

Solution: Always use UTM parameters when sharing links on mobile apps or in contexts where referrer information might be lost.

Mistake #7: Not Testing Before Launch

Problem: You create 1,000 tagged links for a major campaign and discover after launch that the parameters don’t work.

Result: Lost data, wasted budget, no way to measure results.

Solution: Always test a tagged URL by clicking it yourself and verifying the parameters appear in Google Analytics Real-Time reports.

How to Track UTM Parameters in Google Analytics

Once you’ve created tagged links, here’s how to view the data in Google Analytics.

Google Analytics 4 (GA4)

  1. Navigate to Reports → Acquisition → Traffic acquisition
  2. Change the primary dimension to:
    • Session source/medium to see traffic by source and medium
    • Session campaign to see traffic by campaign
  3. Use the secondary dimension dropdown to add additional context:
    • Add Session source to see campaigns broken down by source
    • Add First user campaign to see the first campaign that brought users
  4. Click any row to drill down into specific campaign performance

Pro tip: Create a custom report or exploration to view all UTM parameters together:

  • Go to Explore → Free form
  • Add dimensions: Session source, Session medium, Session campaign, Manual ad content (utm_content), Manual term (utm_term)
  • Add metrics: Sessions, Users, Conversions, Revenue

Universal Analytics (Legacy)

  1. Navigate to Acquisition → Campaigns → All Campaigns
  2. Click a campaign name to see performance details
  3. Use the Secondary dimension dropdown to add:
    • Source/Medium to see where campaign traffic came from
    • Ad Content to view utm_content data
    • Keyword to view utm_term data

Filtering and Segments

Use filters to focus on specific campaigns:

  1. Click Advanced next to the search box
  2. Select Campaign from the dropdown
  3. Choose Contains and enter part of your campaign name
  4. Click Apply

This allows you to see only campaigns matching your criteria, like all campaigns containing “2025” or “black-friday.”

Real-Time Verification

To test if your UTM parameters are working:

  1. Go to Real-Time → Overview in Google Analytics
  2. Click your tagged link
  3. Look at the Traffic sources section
  4. Your UTM parameters should appear within 10-30 seconds

If you don’t see your parameters, check for redirects or server issues that might be stripping the query string.

Advanced UTM Strategies

Once you’ve mastered the basics, these advanced techniques can unlock even more insights.

UTM Naming Conventions

For large organizations with multiple teams creating tracking links, implement a structured naming convention.

Example format for utm_campaign:

{business-unit}-{product}-{goal}-{date}-{description}

Resulting campaign name:

saas-analytics-trial-2025-01-webinar

This structure allows you to filter campaigns by business unit, product line, marketing goal, or time period without manually tagging each dimension.

Benefits:

  • Consistent data across teams
  • Easy filtering in reports
  • Automated reporting based on naming patterns
  • Reduced training time for new team members

A/B Testing with utm_content

Use utm_content to test variations:

Test 1: Email CTA copy

  • Link A: utm_content=cta-learn-more
  • Link B: utm_content=cta-get-started

Test 2: Social media creative

  • Link A: utm_content=image-product
  • Link B: utm_content=video-demo

Compare performance in Google Analytics to see which variation drives more clicks, conversions, or revenue.

QR Codes with UTM Parameters

When creating QR codes for print materials, include UTM parameters:

utm_source=qr-code
&utm_medium=print
&utm_campaign=conference-2025
&utm_content=booth-banner

This lets you track offline marketing effectiveness. You can even create different QR codes for different locations or materials.

Long UTM URLs can look ugly in social media posts and emails. Use a URL shortener like Bitly, Ow.ly (Hootsuite), or create branded short links.

Benefits:

  • Cleaner appearance
  • Click tracking in the shortener’s dashboard
  • Easier to share on social media
  • Can update destination URL without changing the short link

Important: Make sure your shortener preserves UTM parameters. Most modern services do this automatically.

Custom Dashboards

Create a Google Analytics dashboard that displays:

  • Top campaigns by conversions
  • Source/medium performance comparison
  • Campaign revenue over time
  • Content variation performance

This gives you a single view of all campaign data without digging through individual reports.

UTM Parameters and SEO

Good news: UTM parameters don’t hurt your SEO.

Google’s crawlers ignore UTM parameters when indexing pages. They understand these are for tracking and don’t consider URLs with different UTM parameters as duplicate content.

However, follow these best practices:

  1. Use canonical tags: Add a canonical tag to your pages pointing to the clean URL without parameters:
    <link rel="canonical" href="https://example.com/page" />
    
  2. Configure Google Search Console: If UTM URLs do appear in search results, use the URL Parameters tool in Search Console to tell Google how to handle them.
  3. Don’t overuse: While UTM parameters don’t hurt SEO, extremely long URLs with dozens of parameters can look spammy. Keep it reasonable.

Frequently Asked Questions

Do I need all five UTM parameters?

No. Only utm_source is technically required for tracking to work, but using utm_source, utm_medium, and utm_campaign together gives you meaningful insights. The other two parameters (utm_term and utm_content) are optional and used for specific tracking needs.

Can I use UTM parameters with Google Ads?

While you can manually add UTM parameters to Google Ads, it’s better to use Google’s auto-tagging feature. Auto-tagging provides more detailed data and integrates seamlessly with Google Analytics. Only use manual UTM tags if your site can’t handle gclid parameters or you need the data in non-Google analytics tools.

How do I fix inconsistent UTM data?

If you already have messy data with inconsistent naming:

  1. Create a master list of approved UTM values
  2. Set up filters in Google Analytics to standardize future data (lowercase everything)
  3. Export historical data and clean it in spreadsheets for historical analysis
  4. Train your team on new conventions
  5. Use a UTM builder tool to enforce consistency

Will UTM parameters slow down my website?

No. UTM parameters are simply text appended to URLs. They don’t affect page load speed or website performance. The tracking happens in your analytics tool, not on your server.

Can I edit UTM parameters after publishing?

Yes and no. Once you share a link, you can’t change the UTM parameters in that specific URL—it’s already out there. However, you can:

  • Create new links with corrected parameters
  • Use 301 redirects to point old links to new URLs with proper UTMs
  • If using a URL shortener, update the destination URL (though this changes the tracking)

How long should campaign names be?

Keep campaign names under 50 characters if possible. Long names get truncated in some reports and are harder to read. Be descriptive but concise: spring-sale-2025 instead of spring-seasonal-promotional-sale-event-2025.

Do UTM parameters work with email?

Yes, and they’re essential for email marketing. Email clients don’t send referrer information, so without UTM parameters, email traffic appears as “direct” in analytics. Always tag email links with utm_medium=email and an appropriate source and campaign.

Can I see UTM data in platforms other than Google Analytics?

Yes. Most modern analytics platforms (Mixpanel, Amplitude, Matomo, Adobe Analytics) automatically detect and report UTM parameters. The data works the same way across platforms—the parameters are just text in the URL that each tool reads and reports on.

Should I use UTM parameters for organic search?

No. Search engines automatically send referrer information, and Google Analytics categorizes organic search traffic correctly without UTM parameters. Adding them to organic search results could actually confuse your data.

What’s the difference between utm_source and utm_medium?

  • utm_source identifies the specific origin (facebook, google, newsletter-A)
  • utm_medium identifies the channel type (social, cpc, email)

Think of medium as the category and source as the specific instance. Multiple sources can share the same medium (facebook, twitter, and linkedin all use medium=social).

Can I use UTM parameters on mobile apps?

Yes. When sharing links from mobile apps that don’t preserve referrer information (WhatsApp, Telegram, native email apps), UTM parameters become even more important. Without them, this traffic appears as “direct.”

How do I track QR codes with UTM parameters?

Create a unique URL with UTM parameters specifically for your QR code:

utm_source=qr-code
&utm_medium=print
&utm_campaign=event-name
&utm_content=location

Then generate the QR code from this full URL. When someone scans it, Google Analytics will track it as a print campaign.

Will redirects strip my UTM parameters?

It depends on how the redirect is configured. 301 and 302 redirects can preserve UTM parameters if the server is set up correctly. Always test your redirect to ensure parameters survive. If they don’t, ask your developer to configure the server to pass query parameters through redirects.

Can I track the same campaign across multiple channels?

Yes, and you should! Use the same utm_campaign value across all channels where you’re running the campaign. Only change utm_source and potentially utm_medium. This lets you see total campaign performance while still differentiating by channel.

How do I export UTM data from Google Analytics?

In GA4:

  1. Navigate to any report showing campaign data
  2. Click the Share icon (top right)
  3. Select Download file
  4. Choose format (PDF, CSV, Excel)

You can also use the Google Analytics API to automatically export campaign data to spreadsheets or dashboards.


UTM parameters are one of the simplest yet most powerful tools in digital marketing. They transform vague traffic sources into actionable insights, allowing you to measure what matters, optimize what works, and eliminate what doesn’t.

Start with the basics:

  • Use utm_source, utm_medium, and utm_campaign on every external link
  • Keep everything lowercase
  • Never tag internal links
  • Test before you launch

As you get comfortable, expand to advanced strategies like naming conventions, A/B testing with utm_content, and automated reporting.

The marketers who succeed aren’t the ones with the biggest budgets—they’re the ones with the best data. UTM parameters give you that data.

Ready to start tracking? Use our free UTM builder above to create your first tracking link in seconds. Your future self (and your CFO) will thank you.