Campaign Builder · Measure
UTM Builder
A UTM is a tag on a link. Google Analytics (GA4) reads utm_source, utm_medium and utm_campaign and credits the visit to that campaign. Build the tags before you paste the URL into ads, email or a partner post.
The tool
Try it here
Use this when you are about to paste a URL into Google Ads, Meta, LinkedIn, an email, or a partner post. Do it before spend starts. Late tags do not fill in last week.
Why it helps
Why you need an UTM Builder
GA4 does not guess where a click came from. It reads the tags on the URL. If they are missing, paid visits often land in Direct or a generic referral.
Source is the platform: google, meta, linkedin, newsletter. Medium is how they arrived: cpc, email, social, organic. Campaign is the offer name - the same string you used in the ads UI.
Spaces, mixed case and extra punctuation become extra rows. facebook, Facebook and FB are three sources. You then add them by hand every Monday.
When
When to use it
- Before you launch a paid campaign on Google, Meta, LinkedIn or Microsoft.
- Before you send an email that should sit in the same campaign as the ads.
- When a partner, affiliate or guest post needs a link you can report on.
- When last month’s export has five spellings of the same source. Clean the next batch.
How
How to use it
- 1Paste the landing page URL. Use HTTPS. Use the page the ad promised, not the homepage “just in case.”
- 2Pick source (google, meta, linkedin, newsletter) and medium (cpc, email, social, organic). Use the chips. Do not invent facebook-ads as a source if the rest of the team uses meta.
- 3Paste the campaign name you already generated. Lowercase, hyphens. The builder strips spaces and mixed case so you do not ship Brand Exact by accident.
- 4Term is optional: the keyword or audience. Content is optional: the ad variant (video-a, rsa-1). Skip both if you do not need them.
- 5Copy the URL. Paste it into the ads UI. If Google Ads says google-in-demo-exact-2026q3 and the URL says something else, stop and fix it.
Example
Example: a demo campaign in India
Acme is running Google Search for a product demo. Landing page: https://acme.com/demo. Campaign name already locked: google-in-demo-exact-2026q3.
You put in
- URL
- https://acme.com/demo
- Source
- Medium
- cpc
- Campaign
- google-in-demo-exact-2026q3
- Term
- product-demo
- Content
- rsa-1
You get
https://acme.com/demo?utm_source=google&utm_medium=cpc&utm_campaign=google-in-demo-exact-2026q3&utm_term=product-demo&utm_content=rsa-1
GA4 will show source/medium google / cpc and campaign google-in-demo-exact-2026q3. If the Meta retargeting ads use the same campaign string with utm_source=meta and utm_medium=cpc, you can compare channels without renaming anything in a sheet.
Result
What this changes for you
The same campaign name shows up in the ads account and in GA4. Your weekly report is one row, not three spellings of the same source.
Common mistakes
- Putting the brand name in utm_source (acme instead of google). Source is who sent the click, not who you are.
- Using the headline as utm_campaign. Headlines change. The offer name should not.
- Personal data in a UTM: email, name, phone. That is a policy problem and a reporting problem.
- Tagging internal links. UTMs on your own nav reset attribution. Do not do that.
FAQ
UTM Builder FAQ
What is a UTM parameter?
A UTM parameter is a tag on a link. The five standard ones are utm_source, utm_medium, utm_campaign, utm_term and utm_content. Analytics reads them and credits the session. If they are missing, you cannot see which campaign sent the visit.
utm_source vs utm_medium - which is which?
Source is the platform: google, meta, linkedin, newsletter. Medium is how they arrived: cpc, email, social, organic, referral. google / cpc is paid search. newsletter / email is the list. Do not swap them.
Should UTM values be lowercase?
Yes. GA4 treats Google and google as different sources. This builder lowercases values and turns spaces into hyphens so the team cannot ship a mixed-case accident.
Do I need utm_term and utm_content?
No. Term is useful for keywords or audience names. Content is useful when two ads share a campaign and you need to see which variant got the click. Empty is cleaner than a placeholder.
Can I use this UTM builder with GA4?
Yes. GA4 still reads the utm_ query parameters. The names have not changed. What you need is one campaign string in the ads UI and in the URL.