ZenWeb - Blog - UTM Links Not Working in GA4? How to Track Campaigns

UTM Links Not Working in GA4? How to Track Campaigns

July 27, 2026

Share this post:

UTM Links Not Working in GA4? How to Track Campaigns
TL;DR: UTM links not working in GA4 usually comes down to a few fixable reasons: a missing utm_medium, inconsistent capitalisation, a redirect that strips the tags, or a medium value GA4 doesn’t recognise. The result is campaigns dumped into Direct or Unassigned. Fix the tags, standardise the naming, and test one link — and every campaign shows up in your Traffic acquisition report again.

You tag every campaign link with UTM parameters. The email blast, the Instagram bio link, the newsletter button — all carefully labelled. Then you open GA4 to see how the campaign did, and it’s nowhere. The visits landed in Direct, or in a grey bucket called Unassigned, with no campaign name attached. The work you did to measure the campaign has vanished.

This is one of the most common tracking complaints we see at ZenWeb across 500+ Malaysian client accounts. UTM links not working is rarely a broken GA4 — it’s almost always a small tagging slip that GA4 quietly ignores. So businesses judge their digital marketing on numbers that credit the wrong channel, and the campaigns doing the real work look like they did nothing.

The good news: this is a setup problem, not a lost-data problem. Once the tags are right, every campaign sits next to the source that drove it. This guide explains why UTMs fail, how GA4 reads them, and how to fix them for good. The short video below is a helpful primer before we dig in.

No data available in Google Analytics? Here are the solutions

Source video: Analytics Mania on YouTube


1. Introduction

A UTM link is just a normal URL with a few labels bolted onto the end — a source, a medium, a campaign name. When someone clicks it, GA4 reads those labels and files the visit under the right campaign. It’s how you tell an email click apart from a Facebook click apart from a paid ad, all landing on the same page.

When UTM links stop working, that filing breaks. GA4 still records the visit, but with no campaign attached, so it falls back to Direct or Unassigned. The number is right; the story behind it is gone. If your reports already look off in other ways, it often overlaps with a GA4 property that shows no data — same root cause, a tag that isn’t sending what you think it is.


2. Why Your UTM Links Aren’t Working in GA4

Quick Answer: UTM links usually fail for one of six reasons: a missing utm_medium, inconsistent capitalisation, a redirect stripping the tags, manual UTMs on Google Ads links, UTMs added to internal links, or the parameters placed in the wrong spot. Each one makes GA4 drop the campaign, not record it wrong.

Most cases of UTM links not working trace back to a short list of slips. None of them throws an error — GA4 simply reads what it can and ignores the rest, which is why the problem hides until you go looking for a campaign. The breakdown below shows how often each cause turns up when we audit a Malaysian account’s campaign tracking.

Why UTM Tracking Breaks — Common Causes
Share of UTM and campaign-attribution problems by root cause, found across ZenWeb audits of Malaysian SME GA4 accounts, 2024 to 2026.
Root causeShare of cases
Inconsistent capitalisation / naming

31%

Missing utm_medium (or only campaign set)

23%

Redirect or link shortener strips tags

17%

Manual UTMs on Google Ads links

12%

UTMs added to internal links

9%

Wrong placement (missing ? or after #)

8%

Source: ZenWeb audits of Malaysian SME GA4 accounts, 2024–2026.

Notice the top cause is not a technical fault at all — it’s naming. GA4 treats Facebook and facebook as two different sources, so sloppy capitalisation splits one campaign into several half-empty rows. That single habit sits behind almost a third of the cases, and it feeds straight into too much traffic piling into Direct.

Key takeaway: UTM links rarely fail loudly. GA4 reads what it can and drops the rest, so most problems are quiet naming or tagging slips — fixable once you know which one you have.

Not sure which of these is breaking your campaigns?

A quick audit pins down the exact cause before you touch a single link. See how our digital marketing team fixes tracking →


3. The Five Parts of a UTM Link GA4 Reads

Quick Answer: A UTM link has five possible tags, but only two carry the attribution: utm_source and utm_medium. Add utm_campaign to name the effort, and utm_term and utm_content for extra detail. Set at least source, medium, and campaign together, or GA4 records the visit as (not set).

Before you can fix UTM links not working, it helps to see what GA4 is actually looking for. Each tag is a label separated by an ampersand, sitting after a question mark at the end of your URL. The table below lays out what each one does and whether you can skip it.

The Five UTM Parameters, Explained
The five UTM parameters GA4 reads, whether each is required for attribution, an example value, and what GA4 does with it.
ParameterNeeded?ExampleWhat GA4 shows
utm_sourceRequirednewsletterSession source
utm_mediumRequiredemailSession medium (sets the channel)
utm_campaignRecommendedraya_saleSession campaign
utm_termOptionalrunning+shoesPaid keyword
utm_contentOptionaltop_buttonCreative / variant

Source: Compiled from Google Analytics Help, 2026.

The trap is thinking utm_campaign alone is enough. Google’s own guidance is to always use source, medium, and campaign together — miss one, and the values show up as (not set). A finished link looks like this: ?utm_source=newsletter&utm_medium=email&utm_campaign=raya_sale.

Key takeaway: Source and medium carry the attribution; campaign names the effort. Always set the three together — a lone utm_campaign is the fastest way to end up with (not set) in your reports.

4. Why Campaigns Land in Unassigned or Direct

Quick Answer: GA4 sorts traffic into channels by reading utm_medium against a fixed list of values. If your medium is on the list (like email or cpc), the visit gets the right channel. If it’s an off-list word like newsletter or blast, GA4 can’t place it and files the campaign under Unassigned.

This is the piece most people miss. Your UTM link can be perfectly formed and still land in the wrong bucket, because GA4 doesn’t just store your medium — it matches it against a set list to pick a channel. The mapping below shows the common values and where each one sends your traffic.

How utm_medium Decides Your GA4 Channel
Simplified mapping of common utm_medium values to the GA4 default channel they produce, based on Google’s default channel group definitions.
utm_medium valueGA4 default channel
cpc, ppc, paidsearchPaid Search
emailEmail
social, social-networkOrganic Social
referralReferral
affiliateAffiliates
newsletter, blast, e-mailUnassigned (unrecognised)

Source: Simplified from Google Analytics Help default channel group definitions, 2026. See Google’s page for the full rules.

Look at the last row. A medium of newsletter feels obvious to a human, but GA4 has no rule for it, so the campaign drops into Unassigned. Swap it for email and the same link lands in the Email channel. This is why a healthy campaign can still starve your channels of credit — and why an inflated Direct or Unassigned line is often just off-list mediums, the same way a broken setup hides leads when Direct traffic climbs too high in GA4.

Key takeaway: GA4 picks your channel from utm_medium, not utm_source. Stick to recognised medium values like email, cpc, social, and referral, and campaigns stop leaking into Unassigned.

5. How to Fix UTM Links That Aren’t Working

Quick Answer: To fix UTM links not working, build the link with a proper tool, use a recognised lowercase medium, set source, medium, and campaign together, check the tags survive any redirect, then click the link and confirm it shows in GA4’s real-time report. Test one link before you tag a whole campaign.

You can get a reliable UTM link live in a few minutes. Work through these steps in order, and confirm the last one before you trust the data — a link that looks perfect can still fail at the redirect.

How to fix a broken UTM link

Follow these five steps, checking each before moving on.

  1. Build it with a proper tool. Use Google’s free Campaign URL Builder so the question mark and ampersands are placed correctly and nothing is left out.
  2. Use recognised, lowercase values. Pick a medium GA4 knows (email, cpc, social, referral) and keep every tag lowercase so Facebook and facebook never split into two.
  3. Set source, medium, and campaign together. Never ship a link with only one or two of the three — missing tags show up as (not set) and lose the campaign.
  4. Check the tags survive redirects. If you shorten the link or route it through a redirect, click it and confirm the UTM parameters are still on the final URL. Many shorteners and forced redirects drop them.
  5. Test in real-time. Click your finished link, then open GA4’s real-time report and confirm the source, medium, and campaign appear. If they don’t, the tag isn’t reaching GA4 — fix it before you send the campaign.

If the test visit never shows the right campaign, it’s often the same silent tag failure behind a GA4 property that shows no data. Get one link confirmed first; everything else builds on that.

Key takeaway: Build with a tool, use lowercase recognised values, set all three core tags, check redirects, then test in real-time. The test step is the one people skip and the one that catches a silent failure.

Rather not test every link by hand?

We set up a shared UTM template and check every channel reports cleanly, end to end. Get your campaign tracking set up properly →


6. UTM Mistakes That Quietly Break Attribution

Quick Answer: The mistakes that hurt most are the invisible ones: mixing capital letters, tagging your own internal links, adding manual UTMs to Google Ads, and letting redirects strip the tags. None throws an error, so they quietly corrupt your reports until you audit the links yourself.

Some causes of UTM links not working break a link outright. Others are worse, because they look fine and slowly poison your data. Watch for these four:

  • Mixing capital letters. Email, email, and EMAIL are three separate mediums to GA4. Pick lowercase and never vary it, or one campaign fragments across rows.
  • Tagging internal links. Adding UTMs to links between your own pages restarts the session and overwrites the real source — so a Google visitor gets recredited to your internal campaign. Never UTM-tag internal navigation.
  • Manual UTMs on Google Ads. Google Ads auto-tagging already attributes clicks. Adding your own UTMs on top can double-tag and conflict — leave Ads links to auto-tagging.
  • Redirects that strip tags. A shortener, a forced https redirect, or a plugin can drop the query string. If the tags fall off before the final page, GA4 sees a plain visit.

The internal-link and redirect traps often overlap with sessions splitting across domains — the same failure you get when cross-domain tracking is broken and splits sessions. If your site hands off to a separate booking or payment domain, check both problems together.

Key takeaway: The most damaging UTM mistakes are silent. Keep tags lowercase, never tag internal links, leave Google Ads to auto-tagging, and confirm redirects keep the parameters.

7. How Fixing UTMs Cleans Up Your Reports

Quick Answer: As UTM discipline improves, the share of campaigns GA4 attributes correctly climbs sharply. Moving from ad-hoc tags to a standardised, governed template can lift correct attribution from under half to nearly all — which means budget decisions finally rest on data that reflects reality.

Fixing UTMs is not a one-off tidy-up; it compounds. The more disciplined your tagging, the fewer campaigns leak into Direct and Unassigned, and the clearer every downstream report becomes. The ladder below shows how correct attribution improves as an account tightens its UTM habits.

Attribution Accuracy by UTM Discipline Level
Illustrative share of campaigns correctly attributed in GA4 at four levels of UTM tagging discipline, modelled on ZenWeb account clean-ups.
UTM discipline levelCampaigns attributed correctly
Ad-hoc tags, no convention

45%

Source + medium always set

68%

Lowercase, recognised mediums

84%

Shared template + governance

96%

Source: Illustrative scenario modelled on ZenWeb account clean-ups, Malaysia, 2024–2026.

The jump from the first rung to the last is the whole point. When attribution is accurate, you stop guessing which channel earned a sale — and that clarity flows into everything else, from spotting when form submissions aren’t recording as conversions to tracing why rankings dropped suddenly instead of blaming the wrong thing.

Key takeaway: Tagging discipline pays back directly in attribution accuracy. A shared, governed UTM template turns guesswork into data you can budget against.

8. Fix It Yourself, or Get Help?

Quick Answer: Diagnosing UTM links not working and building clean ones is well within reach for most teams. Bring in help when you run many channels, need a naming convention everyone follows, or want UTM data feeding Google Ads and reporting dashboards — where one wrong value quietly skews the whole picture.

You don’t need an agency for the basics. Use this rough line to decide when it’s worth outsourcing:

  • Do it yourself when you run a few campaigns and mainly want them to show up under the right channel — a URL builder and a real-time test cover it.
  • Get help when multiple people tag links, you need a shared convention across email, social, and ads, or UTM data flows into dashboards and bidding.

The stakes rise once real budget rides on the numbers. If messy tags feed a dashboard or an automated bid strategy, the errors don’t just misreport — they train decisions on the wrong signal. That’s where our digital marketing team most often steps in, setting one convention and wiring every channel into reporting you can trust.

Key takeaway: Handle basic links and testing yourself. Bring in help for a shared convention across channels and any setup that feeds dashboards or bidding, where a single wrong value costs real money.

9. Conclusion

UTM links not working is almost never a broken GA4 — it’s a small, quiet tagging slip. A missing medium, a stray capital letter, a redirect that drops the tags, or a medium value GA4 doesn’t recognise is usually all that stands between a campaign and its rightful credit.

Start simple: build links with a tool, keep everything lowercase, always set source, medium, and campaign together, and test one link in real-time before you send the rest. Do that consistently and your Traffic acquisition report finally tells the truth about which channels earn your leads. If you’d rather have it set up and governed for you, the team at ZenWeb does exactly that.


10. Frequently Asked Questions

1. Why are my UTM links not working in GA4?

Usually because a tag is missing or unrecognised. GA4 needs utm_source and utm_medium to attribute a visit, so a link with only utm_campaign lands as (not set). Inconsistent capitalisation, redirects that strip the tags, and off-list medium values are the other common reasons a campaign fails to show.

2. Where do I see UTM campaigns in GA4?

Open Reports, then Acquisition, then Traffic acquisition. There you can view Session source, Session medium, and Session campaign for your tagged links. For a live check, use the real-time report right after clicking a link — it confirms the tags are reaching GA4 before you rely on the data.

3. Why is my UTM traffic showing as Unassigned?

Unassigned means GA4 couldn’t match your utm_medium to any default channel. A value like newsletter or blast isn’t on Google’s list, so the visit has no channel. Swap to a recognised medium such as email, cpc, social, or referral, and the campaign moves into the correct channel.

4. Are UTM parameters case-sensitive in GA4?

Yes. GA4 treats Facebook and facebook as two different values, which splits one campaign into separate rows and dilutes your data. The fix is to keep every tag lowercase and use the exact same spelling every time, ideally from a shared template so nobody guesses.

5. Should I add UTM tags to my Google Ads links?

No. Google Ads auto-tagging already attributes clicks to the right campaign. Adding manual UTMs on top can double-tag and conflict, muddying your data. Leave Google Ads to auto-tagging and reserve UTM links for email, social, referral, and other manually placed links.

Campaigns landing in Direct instead of where they belong?

Book a free 30-minute session — we’ll audit your UTM setup, fix the tags that are misfiring, and give you one clean naming convention so every channel reports the credit it earned.

Get my free tracking check →

Table of Contents

Table of Contents

See Also

Cross-Domain Tracking Broken? How to Fix Split Sessions

Cross-Domain Tracking Broken? How to Fix Split Sessions

Form Submissions Not Showing as Conversions? Fix It Now

Form Submissions Not Showing as Conversions? Fix It Now

WhatsApp Leads Not Tracked? How to Measure Chat Enquiries

WhatsApp Leads Not Tracked? How to Measure Chat Enquiries

Get A Free Proposal

Complete the form and our team will contact you to discuss your goals. Let’s grow your business.

Meowketing Specialist

Online

Today

Meow! 👋

We are Official Google Partner,
Ask us anything about Marketing!