Which links need UTM tags? 4 in 10 would have been direct

By Dan ·

Short answer

Tag every link you place where the source gets lost, such as email, newsletters, bios, DMs, PDFs and ads, and leave internal links alone. On two sites using our tracking, 39% of tagged visits arrived with no referrer, so without the tag they would have counted as direct.

  • A tag names the source when the browser passes none. Without one, that visit lands in direct.
  • Where you place the link decides whether you need the tag. Newsletter clicks had no referrer 100% of the time, Instagram ad clicks 69%, Facebook ad clicks 0%.
  • Never tag links between your own pages, and leave Google Ads auto-tagging on.
  • One app showed up under three source names on one site. A shared naming sheet fixes that before it starts.
  • AI assistants write their own links. On one site, ChatGPT's own tag was the only source on two in three of its visits.

What does a UTM tag do?

A UTM tag is a label at the end of a link that tells your analytics where the click came from. It looks like this: ?utm_source=newsletter&utm_medium=email&utm_campaign=weekly. Google says to always use utm_source, utm_medium and utm_campaign in its 2026 help pages.

Your analytics has two ways to learn where a visit came from. The first is the referrer: the address of the page the click came from, which the browser passes along. The second is the tag, which travels inside the link itself. When the browser passes a referrer, the visit gets a source even without a tag. When it passes none and the link has no tag, the visit has no source and lands in direct.

So a tag matters most in the places where the referrer gets lost. In our data, newsletter clicks never carried a referrer and most Instagram ad clicks did not, while clicks from Google results, Product Hunt and LinkedIn did. Private apps such as WhatsApp and Slack lose it too, as the 2023 test in our guide to high direct traffic shows.

Tag a link when you place it somewhere that does not pass a referrer, or when you need to tell two campaigns in the same place apart. Use this table for each place you put links.

Where the link goes Passes a source on its own? Tag it?
Newsletter or email Rarely. On one site, 0 of 50 newsletter clicks had a referrer Yes, every link
Social bio or link-in-bio page Depends on the app and browser Yes
DMs, WhatsApp, Slack, SMS Often not, per the app test in our direct traffic guide Yes
PDFs, slide decks, documents Usually not; test it in step 2 below Yes
Ads on social platforms Depends on the app. On one site, 69% of Instagram ad clicks had no referrer, Facebook ad clicks 0% Yes, so every ad click is named
Google Ads with auto-tagging on Yes, through its own click ID No, leave auto-tagging on
Public posts on the web, guest articles, directories Usually Optional. Tag if you want the campaign or post name
Answers in ChatGPT and other AI assistants Sometimes. On one site, 10 of 31 ChatGPT visits had a referrer You can't. The AI writes the link, so read the tag it adds
Links between your own pages Not needed Never

Never tag a link that goes from one page of your site to another. The tag replaces the real source of the visit with your own label, so the newsletter or search visit that brought the person in disappears. Loves Data lists "never use UTMs on internal links" as a best practice in its 2025 guide, because it splits one visit into several sources.

Leave Google Ads to its own tagging too. Auto-tagging adds a click ID called GCLID to each ad click, and Google turns it on by default for new accounts. The same 2026 help page says Google Analytics 4 gives auto-tagging priority over manual tags, so your own tags on those ads get overridden.

Run these five steps once. They tell you which places need tags and which already work.

  1. List every place you put a link. Newsletter, email signature, each social bio, pinned posts, ads per platform, PDFs, partner pages. One row per place in a sheet.
  2. Click each link yourself, on a phone and on a laptop. Open it from inside the app, the way a reader would. Then find your own visit in your analytics.
  3. Read the referrer of that visit. If your tool shows a referrer such as l.instagram.com, that place passes a source on its own. If it shows none, that place sends direct traffic unless you tag it.
  4. If you already tag some links, measure the gap. Filter visits that carry a campaign tag and count how many have no referrer, if your tool shows the referrer next to the campaign. A high share means the tag is the only thing naming those visits.
  5. List every source value you see. Sort them alphabetically. Two spellings of the same place, such as Newsletter and newsletter, mean your reports are already split.

How many tagged visits would have been direct?

The tag was the only thing naming 365 of 936 tagged visits. Without it, those visits would have landed in direct. How we counted: the first page of every visit from 27 August to 3 November 2026, 2,537 visits in all. A visit counts as tagged when its link carried a source or campaign tag.

Where the tagged link was placed Tagged visits Share with no referrer
Newsletter (site B) 50 100%
ChatGPT answers, tag added by ChatGPT (site A) 21 100%
Instagram ads (site A) 417 69%
Threads posts (site A) 42 12%
Facebook ads (site A) 400 0%
Instagram, not an ad (site A) 6 0%
All tagged visits 936 39%

Two sites, 27 August to 3 November 2026. Where the link was placed decided whether the referrer survived.

The Instagram and Facebook ads ran under the same campaign ID on the same site, and nearly all clicks came from phones. Facebook passed a referrer every time. Instagram passed none on 7 in 10 clicks. Without the tag, most Instagram ad clicks would have joined direct, and the ad would have looked weaker than it was.

Tags covered only part of the gap. Across both sites, 1,374 visits arrived with no referrer, and a tag named 27% of them. The other 73% had no tag and no referrer, so they landed in direct with nothing to explain them.

Our own site is the untagged contrast. In the same window it had 195 visits, none tagged, and 76% of them arrived with no source at all.

Why does one app show up under three names?

One app shows up under several names when its visits get their source from different places: the referrer on some visits, and different tags on others. On site A, Threads sent 192 visits in our window under three source names.

Source name recorded Where the name came from Visits
l.threads.com The referrer, no tag 150
threads A tag on the link 37
ig_text_post_permalink A tag on the link 5

A report sorted by source shows three rows, and the biggest says l.threads.com, a name nobody on the team chose. Google's 2026 default channel rules ignore case when they sort visits into channels, but its tagging guide says the values themselves are case sensitive, so one place typed two ways still shows as two sources. One naming sheet, used by everyone who shares links, prevents both problems.

How do I track visits from ChatGPT and other AI assistants?

You cannot tag these links, because the AI writes them, so read the tag it adds and the referrer together. ChatGPT normally adds utm_source=chatgpt.com to the links it cites, according to LLM Pulse's 2026 tracking.

On site A, ChatGPT sent 31 visits in our window. 21 of them arrived with no referrer, so ChatGPT's own tag was the only thing that named them. Without it, two in three ChatGPT visits would have counted as direct. Gemini sent one visit, and it carried a referrer. We saw no visits from Perplexity, Claude or Copilot on either site, so we cannot say yet how they pass a source.

That makes AI answers the one place where your numbers depend on a tag someone else controls. In October 2026 ChatGPT's tag briefly disappeared and those visits counted as direct; the person who first reported it later wrote that it was a bug. Seer Interactive notes in its 2026 update that when both the tag and the referrer are missing, the visit will likely appear as direct.

Three habits keep this visible as it grows:

  1. Count it monthly. Filter source and referrer for chatgpt, perplexity, gemini, claude and copilot, and keep the count in a sheet. Small numbers today are your baseline for later.
  2. Keep each tool's own name. Never merge them into one label such as ai. You want to see which assistant sends people.
  3. Watch for a sudden drop. If ChatGPT visits fall and direct rises in the same week, check whether the tag stopped before you change anything else.

What naming sheet should my team use?

Use one sheet with fixed values for source and medium, and a fixed format for the campaign. Copy this one and change the rows to your own places.

Place utm_source utm_medium utm_campaign
Newsletter newsletter email issue name, for example 2026-11-weekly
LinkedIn post or bio linkedin social post or bio
X post or bio x social post or bio
Instagram bio instagram social bio
Instagram or Facebook ad instagram or facebook paid_social campaign name
PDF or slide deck pdf document file name, for example pricing-guide
Partner or guest article the partner's domain referral article name

Six rules keep it clean:

  1. Lowercase only. Google's 2026 guide recommends it because values are case sensitive.
  2. Use mediums the channel rules know. Google Analytics files a visit as Email when the medium is email, as Organic Social when it is social, and as Paid Social when the source is a social site and the medium starts with paid or contains cp. For places with no matching channel, such as PDFs, pick one medium and keep it.
  3. One name per place, forever. Pick linkedin once. Never LinkedIn, li or linkedin.com later.
  4. The campaign says what, the source says where. Never put the place in the campaign or the date in the source.
  5. No spaces. Use hyphens.
  6. One owner. One person adds new rows; everyone else copies from the sheet.

What did tagging change on one real site?

On site A, tags named 315 visits that had no referrer. Here is the method run on that site with its real numbers from 27 August to 3 November 2026.

  1. Places with links. Instagram ads, Facebook ads, Threads posts, and answers from ChatGPT that mention the site.
  2. What each place passes. Facebook ad clicks: a referrer on 400 of 400. Instagram ad clicks: no referrer on 289 of 417. Threads: a referrer on 187 of 192 visits. ChatGPT: no referrer on 21 of 31 visits.
  3. What the tags saved. All 417 Instagram ad clicks carried the site's tag, so the 289 with no referrer were still named. The 21 ChatGPT visits with no referrer were named by the tag ChatGPT adds to its own links. That is 310 visits that would otherwise have been direct, plus 5 tagged Threads visits.
  4. What still leaks. Threads posts carried a tag on only 42 of 192 visits, under two names. The site's Threads links kept their referrer, so few visits were lost, but the source is split three ways.
  5. What to change. Keep the ad tags as they are. Add utm_source=threads&utm_medium=social to every Threads link the team posts, so all visits sit under one name. Leave the Facebook tags in place even though the referrer survives, because the tag carries the campaign ID.

The other 816 visits on site A had no tag and no referrer. Tagging cannot reach those until someone finds the links behind them, which is what step 1 is for.

When is tagging the wrong fix?

Tags fix one problem, links that lose their source, and they fall short in six situations.

  • People forward the link. A tagged newsletter link pasted into a team chat still says newsletter, so the forward gets credited to the email.
  • The tag gets stripped. Some redirects and link shorteners drop everything after the ?. Click your own shortened link once and check the landing address.
  • Someone else writes the link. AI assistants add their own tags, so you cannot fix a missing one. The section on AI assistants above covers what to watch instead.
  • Google Ads. Manual tags on Google Ads with auto-tagging on add nothing, as covered above.
  • The source was never passed at all. Typed visits and bookmarks have no link to tag. Our direct traffic guide covers how to read what is left.
  • Two sites are not a benchmark. Our shares come from two sites and one window. The 69% for Instagram ads describes those ads on those phones. Run step 2 on your own places before you trust any share, ours included.

What should I do this week?

Start with your newsletter or the email you send most. On site B every newsletter click arrived with no referrer, so if your email links have no tags, all of those visits are already in direct.

Then copy the naming sheet, add one row per place from step 1, and tag every link in the places that failed step 3. After 30 days, filter for visits with no referrer and see what share your tags now name.

Questions

Do UTM tags hurt SEO?

They can create extra addresses for the same page if tagged links get crawled. Set a canonical URL on each page that points to the address without the tag, and never tag internal links.

Should I tag links in my social posts?

Tag them when the app drops the referrer or when you want to know which post worked. On site A, Threads passed a referrer on 187 of 192 visits, so the tag there mainly fixes naming. Instagram ads lost the referrer on 69% of clicks, so there the tag decides whether the visit gets counted at all.

Are UTM tags case sensitive?

Yes. Google's 2026 guide says utm_source=google and utm_source=Google are different values. Use lowercase everywhere.

Can I fix links I already sent without tags?

Not for clicks that already happened: those visits stay in direct. Update the links you control, such as bios, email templates, pinned posts and PDFs, so future clicks are named.

Which AI assistants add their own tag?

ChatGPT does, with utm_source=chatgpt.com, according to LLM Pulse's 2026 tracking. In our data, Gemini's one visit carried a referrer, and Perplexity, Claude and Copilot sent no visits, so we cannot say yet. Check your own sources for each name once a month.

What is utm_id?

It is a campaign ID. Google describes it as a field "used to identify a specific campaign or promotion", and asks you to use the same IDs you use when you upload campaign data. If you do not upload campaign data, source, medium and campaign are enough.

Keep reading