UTM Campaign Builder
Generated URL
How to use this UTM builder
- Enter your website URL and required source/medium.
- Add campaign name, term, or content if needed.
- Copy the generated URL to use in your campaign links.
What are UTM parameters?
UTM parameters are tags added to a URL that let Google Analytics (and similar tools) identify exactly which campaign, source, and medium sent a visitor to your site.
What's the difference between source and medium?
Source is where the traffic comes from (like "newsletter" or "google"), while medium is the marketing channel type (like "email" or "cpc") — together they answer "where" and "how" a visitor arrived.
Should I use consistent naming across campaigns?
Yes — UTM values are case-sensitive in analytics tools, so "Newsletter" and "newsletter" would be tracked as two different sources. Stick to a consistent lowercase naming convention.
Building a naming convention before you need one
The most common mistake with UTM tagging isn't a wrong parameter — it's inconsistent capitalization and spelling across different links for what's meant to be the same source or medium. Because UTM values are case-sensitive in analytics platforms, "Newsletter", "newsletter", and "News letter" are tracked as three completely separate sources, silently fragmenting what should be one unified report into several smaller, harder-to-read ones. The fix is deciding on a naming convention before tagging your first link — always lowercase, always the same word for the same channel (settle on "email" or "newsletter", not both), and a consistent separator for multi-word values (underscores or hyphens, picked once and used everywhere) — and writing it down somewhere the whole team can reference, rather than relying on everyone remembering it correctly.
Why manually adding UTM tags can conflict with platform auto-tagging
Google Ads and several other ad platforms offer their own automatic tagging (Google Ads uses a gclid parameter), which is designed to work with analytics platforms without you adding UTM parameters manually at all. Adding both — auto-tagging from the ad platform and manually appended UTM parameters — on the same link can create genuinely conflicting attribution data, since the analytics platform may not consistently prioritize one signal over the other. As a general rule, UTM parameters are for links you control the destination and analytics integration for directly (email campaigns, social posts, partner links), while paid ad platforms with their own auto-tagging usually work better left to their native tracking rather than layering manual UTM tags on top.
GA4's channel grouping reads utm_medium more strictly than you might expect
Google Analytics 4 categorizes traffic into default channel groups (like "Organic Social," "Paid Search," "Email") based partly on recognizing specific utm_medium values it expects — "cpc", "email", "social", "organic" and similar are interpreted according to a defined mapping, while an unrecognized or inconsistent medium value can get bucketed into a generic "Unassigned" or "Other" channel instead of the specific one you intended. This is a good reason to stick to GA4's commonly recognized medium values when there's a reasonable match, rather than inventing a custom term that reads clearly to a human but doesn't map to any channel GA4 already knows how to categorize.
The resulting URL is long, and that has practical consequences
A fully tagged URL with several UTM parameters can easily run past 100 characters, which matters in contexts where a long, parameter-heavy link looks unprofessional or gets mangled — some older email clients and chat apps handle very long URLs poorly, and a visibly tracking-parameter-laden link can look untrustworthy to some recipients compared to a clean one. Running the finished UTM-tagged URL through a link shortener before sharing it externally (keeping the full tagged version for the actual ad platform or email tool) is a common practical step to keep the visible link short and clean while preserving the full tracking data underneath.
Limitations of this tool
This builder assembles a syntactically correct UTM-tagged URL from the values you enter, but it doesn't check whether your destination URL already has existing query parameters that could conflict with the added UTM tags, doesn't warn about auto-tagging conflicts with specific ad platforms, and doesn't enforce or remember a naming convention across the different links you build over time — that consistency is on you (or your team) to maintain. It also doesn't shorten the resulting URL; if you need a shorter link for sharing, run the output through a URL shortening tool afterward.