// blog/seo & marketing/
Back to Blog
SEO & Marketing · June 26, 2026 · 8 min read · Updated May 22, 2026

UTM Parameters Guide: Track Campaigns in Google Analytics

UTM Parameters Guide: Track Campaigns in Google Analytics

You spend money on marketing, but when someone lands on your site from a social post, newsletter, or paid ad, Google Analytics often dumps the visit into "direct" or "referral." The newsletter drove traffic, but analytics cannot confirm it because the link was never tagged.

UTM parameters fix this. They add tracking information to the URL itself. When someone clicks a UTM-tagged link, Google Analytics reads the parameters and attributes the visit to the campaign, source, and medium you defined. No guessing about which marketing effort drove the result.

* * *

The Five UTM Parameters You Need to Know

UTM stands for Urchin Tracking Module (Urchin was the analytics software Google acquired and turned into Google Analytics). There are five parameters, three of which are required.

utm_source (required): identifies the platform or site that sent the traffic. Examples: newsletter, twitter, facebook, linkedin, partner-blog.

utm_medium (required): identifies the marketing channel. Examples: email, social, cpc (cost per click), display, affiliate, referral.

utm_campaign (required): identifies the specific campaign. Examples: spring-sale-2026, product-launch-june, weekly-newsletter-26.

utm_term (optional): identifies the keyword for paid search campaigns. Google Ads fills this automatically, but you can use it for other paid platforms.

utm_content (optional): differentiates between multiple links in the same campaign. Examples: header-button, footer-link, sidebar-banner. Use this for A/B testing different link placements.

A fully tagged URL looks like this: ` https://yoursite.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=june-promo&utm_content=cta-button `

The URL Encoder is useful when your parameter values contain special characters or spaces. Spaces in URLs should be encoded as %20 or + to prevent broken links.

Marketing analytics dashboard with campaign data
Marketing analytics dashboard with campaign data
* * *

Naming Conventions That Prevent Data Chaos

UTM parameters are case-sensitive. utm_source=Twitter, utm_source=twitter, and utm_source=TWITTER create three separate entries in Google Analytics. Six months into your marketing, you will have dozens of duplicate sources that need manual cleanup.

Establish conventions before you start tagging:

Use lowercase for everything. No exceptions. twitter not Twitter.

Use dashes instead of spaces. spring-sale not spring sale (which becomes spring%20sale in URLs).

Be specific but concise. email not e-mail or electronic-mail. twitter not x-formerly-twitter.

Use consistent terminology across campaigns. If your first campaign uses utm_medium=social, do not switch to social-media or organic-social in later campaigns. Pick one term and stick with it.

Document your conventions. A simple spreadsheet with three columns (parameter, value, definition) prevents team members from inventing their own naming schemes.

The Slug Generator creates URL-friendly strings from natural language. It converts spaces to dashes, removes special characters, and forces lowercase. Useful for turning campaign names like "Summer Product Launch 2026" into the clean UTM value summer-product-launch-2026.

Key takeaway

UTM parameters are case-sensitive.

* * *

Where to Use UTM Parameters (and Where Not To)

Use UTM tags on: - Email newsletter links - Social media post links (organic and paid) - Paid advertising links (beyond Google Ads, which has its own tracking) - Partner and affiliate links - QR codes on printed materials - Links in guest blog posts - Links in PDF documents or presentations

Do not use UTM tags on: - Internal links within your own website. UTM parameters override the original source attribution. If a visitor from Google clicks an internal link tagged with utm_source=nav-menu, Google Analytics records a new session from "nav-menu" instead of Google. This breaks your acquisition data. - Google Ads (use auto-tagging instead, which passes richer data) - Links where the URL is visible and the tags look spammy (use a link shortener or redirect)

For printed materials like flyers, business cards, and posters, pair your UTM-tagged URL with a QR code. The QR Code Generator creates scannable codes from any URL. Tag the URL with UTMs that identify the printed piece (e.g., utm_source=flyer&utm_medium=print&utm_campaign=summer-event), then generate a QR code from that tagged URL.

* * *

Reading UTM Data in Google Analytics

In Google Analytics 4, UTM data appears in several reports.

Traffic acquisition report (Reports > Acquisition > Traffic acquisition) shows sessions grouped by source, medium, and campaign. This is your primary view for understanding which campaigns drive traffic.

User acquisition report groups by the first source that brought each user. This tells you which campaigns bring new users, regardless of how they return later.

Custom explorations let you build reports combining UTM parameters with conversion data. For example, you can see which utm_content variant (header vs footer link) drives more sign-ups.

To filter by campaign, use the "Session campaign" dimension. To compare sources, use "Session source / medium." The data is only as good as your tagging consistency. If half your newsletter links are tagged and half are not, the untagged half appears as "direct" traffic.

One practical tip: create a saved comparison in GA4 for your top campaigns. This lets you quickly check performance without rebuilding filters each time. Set the date range to the campaign duration and compare against the previous period for context.

Marketer planning campaign tracking on a whiteboard
Marketer planning campaign tracking on a whiteboard
* * *

Common Mistakes That Corrupt Your Analytics

Inconsistent capitalization. As mentioned, Facebook and facebook are different sources. Use lowercase everywhere.

Tagging internal links. This is the single most destructive UTM mistake. It creates false "new sessions" in the middle of a user's visit, inflating session counts and breaking attribution. Never put UTM parameters on links that stay within your own domain.

Using UTMs on Google Ads links. Google Ads auto-tagging (gclid parameter) passes richer data than UTM parameters, including keyword, match type, ad group, and creative. Manual UTMs conflict with auto-tagging and can cause data loss.

Forgetting to tag all links in a campaign. If your email has three links and only two are tagged, the third link's clicks appear as "direct" traffic. Tag every link, using utm_content to differentiate them.

Overly generic campaign names. utm_campaign=sale tells you nothing six months later. Was it the spring sale? The flash sale? The end-of-year sale? Use dates or specific descriptors: spring-sale-mar-2026.

Not shortening ugly URLs. A URL with five UTM parameters is long and ugly. In social media posts or printed materials, use a link shortener or custom redirect. yoursite.com/go/summer-sale is cleaner than a 200-character tagged URL and still carries all the tracking data if the redirect preserves the parameters.

* * *

Building a UTM Tracking Spreadsheet

A tracking spreadsheet prevents inconsistencies and gives you a record of every tagged link you have created.

Create a spreadsheet with these columns:

  • Date created
  • Campaign name (maps to utm_campaign)
  • Source (maps to utm_source)
  • Medium (maps to utm_medium)
  • Content (maps to utm_content, if applicable)
  • Full tagged URL
  • Shortened URL (if using a shortener)
  • Notes (where it was used, expected traffic volume)

Before creating a new tagged URL, check the spreadsheet first. If a campaign already has a naming convention established, follow it. If it is a new campaign, add the convention to the spreadsheet for future reference.

Sharing this spreadsheet with your team ensures everyone uses the same parameters. Marketing, sales, and content teams all creating their own UTM conventions is how you end up with 47 variations of "facebook" in your analytics.

Key takeaway

A tracking spreadsheet prevents inconsistencies and gives you a record of every tagged link you have created.

* * *

FAQ

Do UTM parameters affect SEO?

No. Google ignores UTM parameters when crawling and indexing pages. A URL with UTM tags leads to the same page as the URL without them. However, it is good practice to use the canonical tag on your pages to ensure Google treats the clean URL as the canonical version.

Can I use UTM parameters with any analytics platform?

Most analytics platforms recognize UTM parameters, not just Google Analytics. Mixpanel, Amplitude, Plausible, Fathom, and others all parse UTM parameters from URLs. The naming convention is universal.

How long do UTM-tagged URLs work?

Indefinitely. UTM parameters are just query strings appended to a URL. They work as long as the base URL works. However, the tracking data is only recorded when someone clicks the link. If you recycle a campaign name months later, the old and new data will be merged under the same campaign in analytics.

Should I use utm_term for non-paid campaigns?

You can, but it is not standard practice. utm_term was designed for paid search keywords. For non-paid campaigns, utm_content is the better parameter for differentiating link variants. Using utm_term for non-keyword purposes can confuse team members who expect it to contain search terms.