Skip to content

What does Unassigned traffic mean in GA4?

Unassigned is what GA4 shows when a visit's source and medium fit none of its channel rules. Usually a link used a medium GA4 does not recognise or lost its tags. Sometimes the GA4 tag missed the start of the session. It is a labelling gap, not a channel.

By , Founder & CEOUpdated 6 min read

Run the numbers for your store: the free UTM coverage calculator.

Unassigned is what GA4 shows when a visit's source and medium fit none of its channel rules. It usually means a link used a medium GA4 does not recognise, or arrived with tags missing. It can also mean the GA4 tag missed the start of the visit. It is a labelling gap, not a channel.

The usual answer stops at "fix your UTM tags". That covers two of the ways in. Google's own help pages describe a third that no link can fix, and a fourth that is not a fault at all.

What one store's data shows

One store's anonymised GA4 export, 1 January 2024 to 21 August 2026. It holds shares of revenue only: no ad spend, no order counts.

What the export showsShare of revenueSource cell
Direct, in last click, first click and touched views57.7%Channels sheet, Direct row
Paid Social, in all three views0.0%Channels sheet, Paid Social row
Organic Video, in all three views0.0%Channels sheet, Organic Video row
Journeys with 1 touch (0.5 days to buy)79.5%Journeys sheet, 1 touch row

None of these rows is Unassigned, so this post prints no Unassigned share for the store. They show its neighbours instead: the row where GA4 parks visits with no source, and rows where it filed nothing at all.

On the Channels sheet, Direct holds 57.7% of revenue in every view. Google describes (direct) / (none) as traffic without a clear referral source. So Direct is a rule that matched. Unassigned is what GA4 shows when no rule matched, or when the labels never arrived.

Paid Social and Organic Video hold 0.0% of revenue in all three views on the Channels sheet. A row at zero can mean the store never used that channel. It can mean the visits came in under labels GA4 filed elsewhere, such as Direct, Organic Social or Unassigned. Or the visits came and never joined a journey that ended in a sale. The export cannot tell you which.

On the Journeys sheet, journeys with 1 touch carry 79.5% of revenue, at 0.5 days to buy. In a one-touch journey, a single label decides the channel in last click, first click and touched at once. If that label is Unassigned, no channel gets the sale in any view. So read Unassigned by revenue, not only by sessions.

Why does "fix your UTM tags" fall short?

Because Google's help describes four ways into Unassigned, and only two of them start with a link.

A medium no rule knows. GA4 files a visit under Email when the source or medium is email. It files one under Affiliates when the medium is affiliate. Tag a podcast read with the show's name as source and podcast as medium, and nothing fits. The Audio rule wants the medium audio, exactly. A partner blog tagged utm_medium=partner fails too, since Referral wants referral, app or link.

Tags cut short. Google warns that missing UTM parameters produce (not set) values. Its (not set) help adds that a session with a (not set) source / medium shows as Unassigned. A link that carries only utm_campaign is one way to get there.

A session with no start. Session source / medium reads (not set) when the session_start event is missing. Those sessions land in Unassigned as well. Google names two causes. One is a GA4 tag in Google Tag Manager that does not fire on the Initialization trigger. The other is a consent banner that sends the wrong consent command. No link fix touches this one.

A dimension asked the wrong question. The plain Default channel group is event-scoped and meant for key events. Google's scopes page says source and medium are (not set) for every other event. Pair that dimension with page views in an exploration, and the non-key events have no channel to fall into but Unassigned.

What can the Unassigned row not tell you?

Which channel the visits came from. Unassigned is a pile of labels GA4 could not file, so it needs opening before anyone budgets around it.

How much of it you can repair after the fact. Google says custom channel groups can be applied to reports retroactively, so a new group can tidy past Traffic acquisition. It also says they cannot be used in the Key events paths report, so your attribution paths keep the default labels.

Whether the visits needed marketing at all. A tidy label says where a visit came from. It does not say the sale would not have happened anyway, which is a question for a holdout test.

What to do this week

  1. Open the row. In GA4, go to Reports, then Acquisition, then Traffic acquisition, and type Unassigned in the search bar above the table. Add Session source / medium with the icon next to the dimension drop-down. Pass: you can name every pair inside. Fail: you find values nobody remembers setting, so trace each one to the link that carries it.
  2. Rename the biggest stray medium. Change it where the link is built, to a value a rule knows, such as audio, referral, affiliate or email. Pass: a week later its new visits show under the matching channel. Fail: they still land in Unassigned, so check the medium for a typo or a stray space.
  3. Check the Google tag's trigger. Do this if (not set) / (not set) sits inside Unassigned and GA4 runs through Google Tag Manager. Open your Google tag and read its Triggering section. Pass: it fires on Initialization - All pages. Fail: it uses another trigger, so switch it as Google's (not set) help describes, then publish the container.

Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework

Sources, 1 October 2026: Default channel group (Analytics Help); What the value (not set) means in your reports (Analytics Help); URL builders: Collect campaign data with custom URLs (Analytics Help); Scopes of traffic-source dimensions (Analytics Help); Custom channel groups (Analytics Help); Understand (direct) / (none) traffic (Analytics Help); Known bot-traffic exclusion (Analytics Help); Traffic acquisition report (Analytics Help).

Frequently asked questions

  • Is Unassigned the same as Direct in GA4?
    No. Direct is a rule that matched: the source is (direct) and the medium is (none) or (not set). The visit had no clear referral source. Unassigned means no rule matched at all, including sessions whose source and medium never arrived.
  • Is Unassigned traffic from bots?
    Not as a rule. Google says GA4 excludes traffic from known bots and spiders automatically. Unassigned describes labels, not visitors, so open the row with Session source / medium before you write it off as junk.
  • Can I remove Unassigned from my GA4 reports?
    Not from the default channel group, which nobody can edit. You can build a custom channel group that files your stray values into named channels, and it applies to past data too. Fixing the links keeps new visits out.

Go deeper: Causal attribution, explained.

Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.

Keep reading

Terms in this article

Browse the full glossary

Your platforms guess.
We run the math.

Upload a GA4 export and see what each channel caused, next to last-click, in 1–2 minutes. The read is yours to keep.

Free, in your browser: your file is not uploaded. The full read is €99, refundable within 30 days. Prices exclude VAT.
Or book a 30-min call.