UTM tags in GA4: how to know where your leads come from
UTM tags tell Google Analytics 4 which campaign, ad or link brought each visit. How to build them well and the mistakes that leave your data as '(not set)'.
You close the month, open Analytics and see that 300 people reached your website through “direct traffic”. Did they come from the Instagram ad, the link you sent on WhatsApp or the newsletter? Nobody knows, and tomorrow you will go back to investing blindly.
UTM tags are the simplest way to stop guessing. Once you understand them, every link you publish becomes measurable.
What are UTM tags?
They are parameters you add to the end of a link's address so Google Analytics knows where each visit comes from. According to the official Google Analytics help, they are built with a question mark before the first parameter and joined with the & symbol (the order does not matter). A tagged link looks like this:
tuweb.com/servicios/?utm_source=instagram&utm_medium=social&utm_campaign=lanzamiento_octubre
The person sees the same page. The difference is in your reports: now that visit is tied to a specific source, medium and campaign.
What does each parameter mean?
Each parameter answers a different question about where the visit came from. These are the ones Google documents:
| Parameter | What it means | Example |
|---|---|---|
| utm_source | Where the traffic comes from | instagram, newsletter |
| utm_medium | The type of medium | cpc, email, social |
| utm_campaign | The campaign or promotion | october_launch |
| utm_id | The campaign identifier | The same ID from your ad platform |
| utm_term | The paid keyword | digital_agency |
| utm_content | Tells creatives or links apart | top_button, footer_button |
Google says you should always use utm_source, utm_medium and utm_campaign, and also recommends filling in utm_id when it applies.

Why do my reports show “(not set)”?
Because those visits were missing a parameter. Google puts it this way: omitted parameters show up as “(not set)” in reports. If you tag only the source and forget the campaign, you won't be able to tell one ad from another.
Common mistake: typing values by hand and mixing upper and lower case. Values are case sensitive, so
utm_source=googleandutm_source=Googleare counted separately. Google recommends lowercase as the standard: make it a team rule from day one.
Should I also tag my Google Ads ads?
Not manually: in Google Ads, keep auto-tagging turned on. The Google Ads help explains that this feature adds a click identifier (gclid) to the ad address, and that it is used to measure conversions, import key events and share campaign and cost data with Analytics. It also says it is on by default in new accounts.
That same page points out that, in GA4, auto-tagging takes priority over manual tagging because there is no option to override it. In practice: UTM tags are for everything else you publish, not for overriding the Google Ads tag.
Where should I use UTM tags?
On any link you control that leads to your website. For example:
- Meta or TikTok ads, with one campaign per objective.
- Email newsletters, with
utm_contentto tell the top button from the bottom one. - Your Instagram bio and organic posts.
- Links and QR codes you share in messages or printed materials.
If your goal is for people to message you, also measure the click on the WhatsApp button as a key event, as we explain in key events in GA4. And to know whether each channel pays off, cross the origin with ROAS and cost per lead.

How do I keep my tags organized?
With a written convention and a shared spreadsheet. Define the allowed names (for example, always instagram and never ig or Insta), use underscores instead of spaces and log every link you create. Google offers a campaign URL builder to put them together without mistakes, as its help mentions.
One last detail: according to Google, UTM parameters do not appear in the “Landing page + query string” or “Page path + query string” dimensions; that information is in “Page location”. If you can't find your tags, look there.
So the data does not stay stuck in Analytics, connect the origin to your funnel. When the CRM knows which campaign each contact came from, you can tie the ad to the sale, as in the Meta Conversions API connected to your CRM.
In short
The 300 “direct” visitors from the start almost always have an origin: they were just missing a tag. Use utm_source, utm_medium and utm_campaign on every link you control, write in lowercase, keep auto-tagging on in Google Ads and review your reports every month. If you want us to set it up and connect it to your CRM, we do it in our Meta and Google Ads service.
Frequently asked questions
Which UTM parameters should I use at a minimum?
According to the Google Analytics help center, you should always use utm_source, utm_medium and utm_campaign. The others, such as utm_content or utm_term, help you fine-tune.
Does it matter if I write the values in upper or lower case?
Yes. Values are case sensitive: utm_source=google and utm_source=Google are treated as different sources. Google recommends lowercase as the standard.
Can I use UTM tags on Google Ads ads?
You can, but in GA4 auto-tagging (gclid) takes priority over manual tagging and there is no option to override it. For Google Ads, keep auto-tagging turned on.
What does '(not set)' mean in my reports?
That the visit was missing a parameter. Google states that omitted parameters show up as '(not set)' in reports.
Where do I use UTM tags besides ads?
On any link you control: newsletters, social posts, your Instagram bio, WhatsApp messages or QR codes that lead to your website.
Do not stop at the theory: apply it to your business
We implement Meta and Google Ads end to end, with your real operation. The first conversation is free.




