UTM builder: assemble a tagged link for your ads
Pick a platform and paste the page address. Tags couple onto the link like train cars, and the sorting station below shows which Google Analytics 4 channel the visits will land in.
Your link
1Where the link goes
2
3Tags
The template is filled in. Adjust the names for your campaign.
Where GA4 files the visits
- Paid Search
- Paid Social
- Display
- Paid Other
- Organic Social
- Referral
- Unassigned
- Other channel
Recent links
What UTM tags are
UTM tags are five parameters at the end of a link that tell Google Analytics where a visitor came from. Without them, a click from an Instagram ad and a click from a blogger’s story look the same in your report, and you can’t tell which spend brought the lead.
https://example.com/landing?utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_sale&utm_term=lookalike&utm_content=video_a
- utm_source
- Where the visitor came from: facebook, google, tiktok, newsletter. Required.
- utm_medium
- Type of traffic: cpc, paid_social, email, social. Required: GA4 picks the channel from it.
- utm_campaign
- Campaign or promotion name: spring_sale, black_friday. Required.
- utm_term
- Keyword or audience. Optional.
- utm_content
- Which ad, banner or button. Optional, useful for comparing creatives.
How to create a UTM link
- Pick a platform and the builder fills in a template with its dynamic parameters.
- Paste the address of the page your ad leads to and adjust the campaign name.
- Already have a tagged link? Paste it into the address field: the builder lays its tags out as cars so you can fix them.
- Copy the whole link, or only the parameters for the “URL parameters” field in the ad account.
UTM tags for Facebook and Instagram (Meta Ads)
In Meta you don’t add tags to the site address. Open the ad, go to “Tracking” → “URL parameters” and paste only the parameters. Meta fills in the campaign, ad set and ad names on every click, and replaces {{site_source_name}} with fb, ig, msg or an.
utm_source={{site_source_name}}&utm_medium=paid_social&utm_campaign={{campaign.name}}&utm_term={{adset.name}}&utm_content={{ad.name}}UTM tags for Google Ads
First turn on auto-tagging in the account settings: GA4 gets its data from it (the gclid parameter), and manual tags don’t get in its way. UTM tags in Google Ads are useful when a CRM or another analytics tool reads the data too. Paste the parameters into the campaign’s or account’s “Final URL suffix”: {campaignid}, {keyword} and {creative} are ValueTrack parameters that Google replaces with the campaign ID, keyword and ad ID.
utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_term={keyword}&utm_content={creative}UTM tags for TikTok Ads
In TikTok Ads, parameters are added at the ad level, in the URL parameters field. TikTok replaces the macros __CAMPAIGN_NAME__, __AID_NAME__ and __CID_NAME__ with the campaign, ad group and ad names. Before launch, click “Preview” and check that the macros turned into names.
utm_source=tiktok&utm_medium=paid_social&utm_campaign=__CAMPAIGN_NAME__&utm_term=__AID_NAME__&utm_content=__CID_NAME__Which utm_medium to choose
utm_medium decides which channel GA4 puts the visit in. If Google Analytics doesn’t recognise the value, the visits land in “Unassigned” and disappear from channel reports.
| utm_medium | When to use it | GA4 channel |
|---|---|---|
cpc | Search ads, pay per click | Paid Search (with source google, bing) |
paid_social | Ads on Meta, TikTok, LinkedIn | Paid Social |
display | Banner ads | Display |
email | Newsletters | |
social | Posts, bio link, Telegram channel | Organic Social |
referral | Links from other sites | Referral |
affiliate | Partners and creators on commission | Affiliates |
sms | Text messages | SMS |
Where to see UTM tags in Google Analytics 4
Open Reports → Acquisition → Traffic acquisition and choose “Session source / medium” or “Session campaign”. Right after launch, check the Realtime report: click your own link and the tags appear there within a minute.
Why UTM tags go missing
Sometimes ads are running and GA4 shows no visits with your tags. Usually the tags get lost on the way, before Google Analytics reads them:
- A redirect cuts them off. If the page redirects from an old address to a new one, from http to https or from www to non-www without passing on the part after the “?”, the tags disappear. Open the link and check that the tags are still in the address bar.
- The tags sit after “#”. In an address like
/#/catalog?utm_source=facebook, GA4 doesn’t read anything after the hash as campaign tags. Tags must come before the “#”, which is how the builder assembles the link. - The tags appear twice. If the site address in Meta already has tags and the same tags are in “URL parameters”, the link ends up with two utm_source values and the report becomes unpredictable. Keep them in one place.
- The visitor declined cookies. After a refusal in the EU, GA4 either doesn’t see the visit at all or, with Consent Mode in advanced setup, gets it without cookies and models part of the data. So GA4 usually shows fewer tagged visits than the ad account shows clicks.
A naming scheme that still works next month
Tags don’t break on day one. They break when there are twenty campaigns and everyone names them their own way. A practical scheme for utm_campaign goes from general to specific, parts joined with underscores and words inside a part with hyphens:
goal_product_geo_month → leads_kitchen-sets_kyiv_2026-11
- Latin letters and lower case only.
- Dates as 2026-11, so campaigns sort in order.
- The same words everywhere: if one campaign says “kyiv”, no other says “kiev”.
- The scheme lives in a shared document, and everyone who makes links takes it from there.
Common UTM mistakes
- Mixed case. GA4 treats “Facebook” and “facebook” as two rows. Use lower case.
- Spaces and non-Latin letters. In a link they turn into %20 and %D0%B0, which makes reports hard to read.
- UTM on internal links. A tag on a link inside your own site overwrites the source, and your ads lose their leads.
- An unpaid utm_medium on ads. With medium=social, ad traffic counts as unpaid social.
- A new scheme every time. spring_sale and Spring-Sale are two different campaigns. Agree on names once.
FAQ
Do I need UTM tags if I have the Meta Pixel and the Google Ads tag?
Yes. The pixel and the tag send data to the ad platforms; UTM tags send it to Google Analytics and your CRM. With tags you see how many leads each campaign brought, next to organic, email and social.
Where do I put the tags in Meta Ads and TikTok Ads?
In Meta they go in the ad’s “URL parameters” field under “Tracking”, without the site address, only the part after the “?”. In TikTok it is the URL parameters field when you create the ad. The “Copy parameters only” button gives exactly that part.
What are dynamic parameters?
Placeholders like {{campaign.name}} in Meta or __CAMPAIGN_NAME__ in TikTok. The platform fills in the campaign and ad names on click, so one tagging scheme works for every ad.
Do UTM tags affect SEO?
No, as long as you use them only in ads and emails. Search engines don’t treat such links as separate pages when the site has a canonical tag. Don’t add tags to internal links or to the sitemap.
Want all your analytics counted correctly?
I’ll set up GA4, pixels and a UTM scheme for your campaigns so you can see which ads bring leads and sales.