Free Tool
UTM Builder
A free UTM link builder that generates clean, consistent campaign URLs for GA4. Use the presets, copy the link, and keep your reports tidy. Or read the guide below first.
Jump to the builderWhat UTM parameters actually mean
UTM parameters are small tags you append to a URL so your analytics tool knows exactly where a click came from. When someone lands on yoursite.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale, GA4 reads those three values and credits the session to your spring sale email instead of lumping it into Direct or Unassigned. The name comes from Urchin Tracking Module, the product Google bought and turned into Google Analytics, and the convention has survived every analytics generation since. Any campaign URL builder, including this UTM generator, produces the same five standard parameters.
utm_source answers "where did the click come from" at the platform level: google, facebook, newsletter, partner-site. utm_medium answers "what kind of channel was it": cpc for paid search, email for newsletters, paid-social for sponsored posts, offline for QR codes and print. utm_campaign names the specific push, so spring-sale-2026 or product-launch-q3. These three are the backbone, and a link missing any of them will report incompletely in GA4.
The last two are optional but useful. utm_term traditionally carries the paid keyword (running-shoes) and works just as well for audience segments. utm_content distinguishes two links that otherwise look identical, like hero-banner versus footer-cta in the same email. If you ever wonder which of three ad variations drove the sale, utm_content is the parameter that tells you.
Naming conventions that keep GA4 reports clean
GA4 treats UTM values as literal, case sensitive strings. Facebook, facebook, and FaceBook show up as three separate sources, and your traffic splits across all of them. The single highest-leverage habit is to write everything in lowercase, every time, with no exceptions. The second is to use hyphens instead of spaces. A space becomes %20 in the URL and looks broken in reports, while spring-sale-2026 stays readable everywhere.
Beyond casing, agree on a taxonomy before anyone tags a link. Decide the canonical spelling for each source (is it x or twitter, newsletter or email-newsletter), pick a fixed pattern for campaign names like theme-audience-date (black-friday-prospects-2026), and write it down somewhere the whole team can find. A shared spreadsheet of approved values takes ten minutes to create and saves hours of report cleanup later. The history table in this google url builder alternative helps here too: you can see the exact values you used last time and stay consistent.
Finally, keep values meaningful but short. utm_campaign=c123 tells nobody anything six months later, while a 90-character campaign name wraps awkwardly in every report. Aim for values a colleague could interpret without asking you.
How GA4 maps source and medium to channels
GA4 does not show raw UTM values in most default reports. It groups sessions into default channels (Paid Search, Paid Social, Email, Organic Social, Referral, and so on) based on rules that read your source and medium. The medium does most of the work. A medium of cpc, ppc, or paid lands in a paid channel; email or e-mail lands in Email; and a recognized social source with a paid medium lands in Paid Social. Get the medium wrong and the session falls into Unassigned, the channel where attribution goes to die.
This is why the presets in the builder use combinations GA4 recognizes: google/cpc maps to Paid Search, facebook/paid-social maps to Paid Social, and newsletter/email maps to Email. If you invent a creative medium like "social-boost" or "eblast", GA4 has no rule for it and your carefully tagged traffic ends up Unassigned. Stick to the standard vocabulary for utm_medium and save your creativity for utm_campaign and utm_content, where free-form values are exactly what you want.
Common UTM mistakes
The most damaging mistake is tagging internal links. If a visitor arrives from Google organic and then clicks a banner on your own homepage that carries utm_source=homepage, GA4 starts a new session and the original organic attribution is overwritten. UTM parameters belong on links that point at your site from somewhere else: emails, ads, social posts, QR codes, partner pages. Never on navigation within your own domain. Use event tracking for internal promotion measurement instead.
Inconsistent casing is the quiet killer. One teammate tags Email, another tags email, and from that day forward every report needs manual stitching before the numbers make sense. The builder above warns you when it spots uppercase characters for exactly this reason.
Third, tagging links you share organically with paid-style values. Pasting a utm_medium=cpc link into an organic LinkedIn post tells GA4 the click was paid search, which it was not, and your channel reports drift away from reality. Match the medium to how the link actually travels.
And finally, double tagging. If a URL already carries UTM parameters (common when someone copies a link from an old email), adding a second set creates duplicate parameters and unpredictable attribution. The builder flags this so you can strip the old tags before adding new ones.
Frequently asked questions
Do UTM parameters affect SEO?
Not when used correctly. Google treats URLs with different query strings as different URLs, so in theory tagged links could create duplicate content. In practice, a canonical tag pointing at the clean URL (which most platforms set automatically) resolves it. The real risk is putting UTM parameters on internal links or in places search engines crawl heavily, which wastes crawl budget and muddies your analytics. Keep them on external campaign links and you are fine.
Which UTM parameters are required?
For a link to report cleanly in GA4 you want utm_source, utm_medium, and utm_campaign as a minimum. Technically GA4 will accept a link with only utm_source, but without a medium the session usually falls into Unassigned, and without a campaign name you cannot compare pushes against each other. utm_term and utm_content are optional refinements.
Should UTM values be lowercase?
Yes, always. GA4 is case sensitive, so Newsletter and newsletter count as two different sources and split your data. There is no benefit to mixed case in a tracking parameter, and an all-lowercase rule is the easiest convention for a team to follow without thinking.
Where is my link history stored?
In your browser's localStorage, on your device only. Nothing you type into this UTM builder is sent to our server or anyone else's. The history keeps your last ten copied links so you can reuse consistent values, and the clear all button removes them instantly.
Free Tool
UTM Builder
Build campaign URLs with properly encoded UTM parameters, quick-fill presets for common channels, and a history of your last ten links.
Campaign Details
Enter your landing page and UTM values
Quick-fill presets
Generated URL
Your campaign URL updates as you type. Each UTM parameter is highlighted in its own color.
Enter a website URL to start building your link...
Want a second pair of eyes on your tracking setup? Request a free SEO review.
Recent Links
Your last 10 copied links, saved in this browser only
No links yet. Copy a complete campaign URL above and it will show up here.