Campaign link is missing UTM tags

Missing or empty UTM tags make campaign visits show as direct, referral or (not set). See which three UTM parameters every link needs and how to add them.

SymptomCampaign traffic shows up as direct or referral, or reports show (not set) for source, medium or campaign.
Likely causeThe link has no UTM tags, one of the three main tags is missing, or a tag is present but empty.
FixAdd utm_source, utm_medium and utm_campaign with real values to every campaign link.

Short answer: Google says you should always use utm_source, utm_medium and utm_campaign. If one is missing or empty, Google Analytics shows "(not set)" for it. If all are missing, the visit is usually filed as direct or referral, and your campaign gets no credit.

What counts as a missing UTM parameter?

Missing UTM parameter: a campaign link that leaves out one of the main tracking tags, or includes the tag with no value, such as utm_campaign=.

Google does not make any tag strictly required. Its wording is that you "should always use" source, medium and campaign. It also recommends setting all relevant tags once you set one, including utm_id and utm_source_platform where they apply.

  • utm_source: where the visit came from, such as instagram or newsletter.
  • utm_medium: the kind of channel, such as paid_social, cpc or email.
  • utm_campaign: the campaign name, such as diwali_sale.
  • utm_content and utm_term: optional, for comparing creatives and keywords.

What happens when a UTM tag is missing?

Google's help page says missing UTM parameters "will result in (not set) values" in reports. A missing medium is the most damaging, because channel grouping depends on it.

  • No tags at all: the visit is credited to whatever the browser reports, usually the referring site or direct.
  • No medium: the visit can't be placed in a paid or email channel and may land in Unassigned.
  • No campaign: visits from different campaigns blur into one row.
  • Empty value: utm_campaign= is no better than leaving the tag out.

Direct traffic is a useful warning sign. Google files a visit as Direct only when the source is (direct) and the medium is (not set) or (none). A spike in direct traffic during a campaign often means untagged links.

Example

A link with no campaign name and an empty medium:

https://example.com/offer?utm_source=newsletter&utm_medium=

The fixed link:

https://example.com/offer?utm_source=newsletter&utm_medium=email&utm_campaign=october_offer

How to fix it

  1. Paste the link into the link checker. It lists which of the three main tags are missing or empty.
  2. Add the missing tags with real values. Build them in the UTM builder, which marks source, medium and campaign as required.
  3. Pick a medium Google recognises. See utm_medium and channels.
  4. If the tags are in the link but disappear on arrival, the cause is somewhere else: a redirect, a # in the wrong place or a second ?. See parameters after the #.
  5. For ad platforms with auto-tagging, such as Google Ads, you may not need manual source and medium. Google Ads auto-tagging takes priority over manual tags in Google Analytics.
FAQ

Common questions

Which UTM parameters do I need?

Use `utm_source`, `utm_medium` and `utm_campaign` on every campaign link, as Google recommends. Add `utm_content` or `utm_term` when you want to compare creatives or keywords.

What does (not set) mean in Google Analytics?

It means the visit arrived without a value for that field. Google says missing UTM parameters produce "(not set)" values in reports.

Why is my campaign traffic showing as direct?

Usually because the links weren't tagged, or the tags were lost before the page loaded. Check the final address in the browser to see whether the tags survived.

Do I need UTM tags on Google Ads links?

Not if auto-tagging is on. Google says auto-tagging is prioritised over manual tagging, so source, medium and campaign come from Google Ads either way.

What are UTM parameters?

UTM parameters are tags added to the end of a link, such as utm_source and utm_campaign, that tell analytics tools where a visit came from. They let you see which campaign, channel and ad brought each visitor.

Which UTM parameters are required?

Use utm_source, utm_medium and utm_campaign on every campaign link. utm_term and utm_content are optional and help you compare keywords or ad variants.