Without SourceLoop
UntaggedKayden Floyd
- SourceUnknown
- MediumUnknown
- CampaignUnknown
- Landing pageUnknown
Free tool
Build clean, consistent UTM links in seconds. Add source, medium, campaign, term, and content to any URL, then copy and ship. No signup, no email gate.
Start with a preset
How it works
Build it, ship it, read the report. No analytics setup needed.
example.com/pricing ?utm_source=google &utm_medium=cpc &utm_campaign=spring_launch
Fill in the form above with source, medium, and campaign. Add optional fields if you need them, then copy. Ten seconds, no signup.
Paste the tagged URL into your ad platform, email tool, social scheduler, or partner placement. Same link wherever you want the visit credited.
Acquisition report
On click, GA4, SourceLoop, HubSpot, and friends read the parameters and tag the session. Future conversions roll up to the right source, medium, and campaign.
UTM parameters
Six standard fields. Three are required for clean attribution, three are optional. Stick to lowercase and a small fixed vocabulary.
utm_source
The platform or site sending the traffic. Always lowercase, no spaces.
utm_medium
The marketing channel. Stick to a small, consistent vocabulary.
utm_campaign
The specific campaign name. Use a naming convention your team agrees on.
utm_term
Paid search keyword for the click. Optional.
utm_content
Differentiate ads or links pointing to the same URL. Optional.
utm_id
A campaign identifier from your ad platform (e.g., GA4 paid imports). Optional.
Best practices
Lowercase, always
utm_source=Google and utm_source=google are different sources to GA4. Pick lowercase and stick to it.
Underscores, not spaces
Use spring_launch, not "spring launch". Spaces get URL-encoded into ugly %20s and break naming consistency.
Fixed vocabulary for utm_medium
Pick 6-8 mediums (cpc, email, social, paid_social, referral, organic, display, affiliate) and never invent new ones.
Never UTM internal links
Internal UTMs reset the original source on every click. Tag external campaigns only.
Document the convention
Pin a sheet to your team Slack with the agreed-on naming convention. Audit it monthly.
Built by the team behind SourceLoop
Guide
UTM stands for Urchin Tracking Module, named after the analytics company Google bought back in 2005. It is a small label you attach to a URL so analytics tools can tell where a visit came from. Without UTMs, a click from a paid Facebook ad and a click from an organic LinkedIn post can both end up in the same "social referral" bucket, which makes attribution useless.
The structure is straightforward. You start with your landing
page URL, add a ?, then string together
key=value pairs separated by &.
For example:
https://example.com/pricing?utm_source=google&utm_medium=cpc&utm_campaign=spring_launch The page itself does not change. The browser sends the visitor to the same destination. The query string just sits there for the analytics script to read on arrival.
Most platforms detect UTM parameters automatically: Google Analytics, SourceLoop, HubSpot, Mixpanel, Amplitude, Heap, Matomo, Adobe Analytics. The script on your landing page reads the URL, writes the values to the session, and credits any future conversion back to that source, medium, and campaign. You do not need to configure anything on the analytics side. The parameter names are a long-standing convention every tool recognizes.
You only need UTMs for traffic an analytics tool cannot identify on its own. Organic search, direct visits, and most referring sites are detected through the HTTP referrer header. Tag the channels where the referrer is missing, generic, or unhelpful:
Skip UTMs on internal links inside your own site. They overwrite the original source on every click and quietly break multi-touch attribution.
Say you launch a Google Ads campaign with three headline
variants, all pointing at the same pricing page. Without UTMs,
GA4 sees three identical visits from
google / cpc and you cannot tell which headline
drove the signups. Tag each ad with a different
utm_content value (headline_a,
headline_b, headline_c) and the
variants split cleanly in your conversion report. You can
pause the loser within a week instead of guessing for a month.
That is the whole job of UTM tagging: forcing reportable structure onto traffic that would otherwise collapse into a single bucket.
FAQ
A UTM parameter is a small tag added to a URL (e.g., ?utm_source=google&utm_medium=cpc) that tells your analytics tool where a visit came from. Google Analytics, SourceLoop, HubSpot, and most marketing tools recognize the standard utm_source, utm_medium, utm_campaign, utm_term, utm_content, and utm_id fields automatically.
Only utm_source is technically required by GA4. We strongly recommend always adding utm_source, utm_medium, and utm_campaign, since most attribution tools use these three together. utm_term, utm_content, and utm_id are optional and used for paid search keywords, ad creative variants, and platform-level IDs.
Always lowercase. utm_source=Google and utm_source=google are treated as separate sources by GA4 and most tools, which fragments your reports. Pick lowercase, hyphens or underscores instead of spaces, and stick to a small fixed vocabulary for utm_medium (e.g., cpc, email, social, referral, organic).
No, you should not put UTMs on internal links. Internal UTMs reset the original source on every click, which destroys multi-touch attribution. Only tag links coming from external campaigns (ads, emails, social posts, partner sites).
Same standard parameters, but with built-in best-practice hints, copyable common-presets, and a clean URL preview. Built by the team behind SourceLoop, a multi-touch attribution platform.
Yes. The UTM Builder is completely free, no signup, no email gate. We host it because clean UTMs make every attribution tool (including ours) work better.
Capture and send full attribution data from every signup, lead, booking, and sale to your CRM and ad platforms, so you know exactly what's driving revenue.
Without SourceLoop
UntaggedKayden Floyd
With SourceLoop
Auto-taggedKayden Floyd