UTM / Campaign Link Builder

Add campaign-tracking parameters to any URL so Google Analytics (or any analytics tool) can tell you exactly where a click came from — updates live, copy when it looks right.

Build a tracked link

Your tracked link

What each parameter does

These five utm_* parameters are a de facto standard (originating with Google Analytics, now recognized by essentially every analytics platform) for tagging where traffic came from. Source is the specific referrer (google, facebook, a newsletter platform's name). Medium is the marketing channel type (cpc, email, social, referral). Campaign is the specific initiative or promotion (spring_sale, product_launch). Term and content are optional refinements: term identifies a paid-search keyword, and content distinguishes between multiple links or ads that otherwise share the same source/medium/campaign (useful for A/B testing two versions of the same ad).

A consistent naming convention matters

UTM values are case-sensitive in most analytics tools, so "Newsletter" and "newsletter" can show up as two separate rows in a report. Pick a convention (all lowercase, underscores instead of spaces is a common one) and use it consistently across every link, or campaign reports get fragmented and harder to total up accurately.

Frequently asked questions

Are UTM parameters required for Google Analytics to work?

No — Google Analytics automatically detects a lot of traffic sources (like search engines and known referrers) without any tagging. UTM parameters matter specifically for traffic that wouldn't otherwise be identifiable, like links in an email newsletter, a PDF, a QR code, or a paid social ad, where there's no natural referrer information for analytics to pick up.

Will UTM parameters break my link or look untrustworthy?

They won't break the link — any web server ignores query parameters it doesn't recognize and still loads the page normally. They do make the URL longer and more cluttered-looking, which is why some people run tagged links through a URL shortener for sharing on social media or in print, while keeping the full tagged version for email and ads where the ugliness matters less.

Why is my campaign not showing up correctly in reports?

The most common cause is inconsistent capitalization or spelling across links meant to be the same campaign (since UTM values are typically case-sensitive), splitting what should be one row in a report into several. Double-check the exact source/medium/campaign values match across every link in the same campaign.

Do I need utm_term and utm_content?

Only source, medium, and campaign are generally considered required for a link to be trackable as a distinct campaign. Term and content are optional refinements — term is mainly useful for paid search keyword tracking, and content is mainly useful when running more than one version of an ad or link that would otherwise be indistinguishable in reports.