SEO and marketing

UTM tags in GA4: how to know where your leads come from

By Edgar Jaimes 4 min read

Laptop screen with charts of users, sessions and bounce rate

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:

ParameterWhat it meansExample
utm_sourceWhere the traffic comes frominstagram, newsletter
utm_mediumThe type of mediumcpc, email, social
utm_campaignThe campaign or promotionoctober_launch
utm_idThe campaign identifierThe same ID from your ad platform
utm_termThe paid keyworddigital_agency
utm_contentTells creatives or links aparttop_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.

Laptop on a table with a metrics dashboard and user charts
With tagged links, every visit reaches the dashboard with its origin. Photo: Unsplash

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=google and utm_source=Google are 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_content to 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.

Laptop with cohort reports, a user map and a device chart
Origin, campaign and device at a glance. Photo: Unsplash

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.

Keep reading