Unassigned 

Unassigned in GA4: causes of and fixes for unassigned traffic

Two people work at a desk with computers in a modern office.
Ralph Grundmann · Last updated on 7 November 2026

Unassigned is the catch-all value of the default channel group in Google Analytics 4: GA4 uses it when no channel rule matches where a session came from. This mainly happens when source and medium are missing and show as “(not set)”, or when self-defined UTM values do not match any rule. A common cause we find in tracking audits is that GA4 events are sent before the Google tag has loaded.

What does Unassigned mean in GA4?

GA4 assigns every session to a channel based on source, medium and campaign, such as Organic Search, Paid Search or Email. The rules for this are fixed and cannot be changed in the default channel group. According to Google’s help, Unassigned is the value used when none of these rules matches the data.

So Unassigned does not describe an origin. It shows that GA4 could not classify where visitors came from. Four values are often confused:

Value Meaning Channel
Unassigned no channel rule matches Unassigned
(not set) GA4 has not received any information for this dimension for session source / medium: Unassigned
(direct) / (none) a visit with no recognisable origin, e.g. from a bookmark Direct
(data not available) origin not yet processed, e.g. for Google Ads clicks Cross-network

Cause 1: events fire before the Google tag

Google recommends initialising the Google tag before any events are sent. If custom events are sent before the configuration, GA4 batches them with the session_start event, according to Google, and the page view and later events can no longer be associated with that session. This can result in “(not set)” for source and medium, and therefore in Unassigned.

In Google Tag Manager, this typically happens when the Google tag fires on “Page View” and a GA4 event tag fires on the same or an earlier trigger. Google’s fix is to move the Google tag to the “Initialization – All Pages” trigger:

  1. In Tag Manager, open the Google tag under Tags.
  2. Under Triggering, remove the existing trigger and select “Initialization – All Pages”.
  3. Keep the consent tool and the consent mode defaults on “Consent Initialization – All Pages”. According to Google, this is the only trigger that fires even earlier.
  4. Move GA4 event tags to later triggers, such as Page View, DOM Ready, Window Loaded or a custom event.
  5. In preview mode, check that the Google tag fires in the “Initialization” step and before every event tag.

Since 2024, for most properties GA4 no longer sends events at all if there is no Google tag on the page. Today, the risk therefore lies mainly in the order of tags on the same page.

Cause 2: UTM values without a matching channel rule

The second large group is links with UTM parameters whose values GA4 cannot match to a rule. The channel rules ignore upper and lower case, and they expect specific terms. Examples based on the rules of the default channel group:

utm_medium Channel in GA4
email Email
newsletter Unassigned
affiliate Affiliates
paid_social (source facebook) Paid Social
influencer Unassigned

Define a fixed list of values for utm_source and utm_medium, and always use utm_source, utm_medium and utm_campaign together. A newsletter then runs as utm_medium=email and lands in the Email channel.

Other causes

  • Consent mode implemented incorrectly: if the banner sets consent with the “default” command when it should use “update”, or tags keep sending with “denied” after consent has been given, Google says this creates sessions without session_start. More on the setup in our article on Consent Mode v2.
  • Server-side tagging alongside the browser: Google advises against sending data to the same property both server-side and directly from the browser. If the client ID is managed on the server, every measurement must go through the server container. Background in the article on client-side vs. server-side tracking.
  • Measurement Protocol: events that a server sends later need the session_id of the session and must arrive within 24 hours of the session start. Otherwise they form sessions with no origin.
  • Cross-domain measurement: a linker that loads too late, redirects that strip the _gl parameter, different cookie prefixes or self-defined client and session IDs lead to “(not set)” in session dimensions, according to Google.

Midnight, on the other hand, is not a cause: unlike Universal Analytics, GA4 does not start a new session at midnight, according to Google.

How to find the cause

  1. Open the report: Reports > Acquisition > Traffic acquisition, with the session default channel group as the dimension. Do not analyse today’s data, as GA4 needs 24 to 48 hours to process it.
  2. Add source and medium: in the Unassigned row, add “Session source / medium” as a secondary dimension. If it shows a custom pair such as “newsletter / mail”, it is a UTM problem. If it shows “(not set) / (not set)”, the cause lies in the tagging.
  3. Check the landing page: “(not set)” as the landing page means that the session has no page view. This points to events sent later, for example via the Measurement Protocol.
  4. Check Tag Manager: in preview mode or with Tag Assistant, check whether the Google tag fires before all event tags. Tag diagnostics in Tag Manager also report missing Google tags.
  5. Compare after the fix: compare the share of Unassigned before and after the change over several weeks.

Since March 2025, GA4 has also shown a notification icon in the report when the share of missing session_start events or of “(not set)” is high.

When is Unassigned a problem?

Google does not give a threshold. A small share is normal in most properties, for example due to individual faulty links or events sent outside a normal session. Watch the trend: if the share rises after a relaunch, a new consent solution or a switch to server-side tracking, one of these changes is almost always the cause. Because Unassigned also affects key events, these conversions are missing from the channels that actually brought them in.

New in 2026: a channel for AI assistants

Since 13 May 2026, GA4 has had its own “AI Assistant” channel, according to Google. Visits from known AI assistants such as ChatGPT or Gemini automatically receive the medium “ai-assistant”. AI Overviews and AI Mode in Google still count as Organic Search. Before this change, such visits often ended up under Referral or Unassigned.



 Your next step 

Is a lot of your traffic showing as Unassigned?

Our page Web analytics explains how we work. In an initial consultation, we clarify what makes sense for your website. We also offer training for your team.


Request a consultation
 Frequently asked questions 

Unassigned in GA4: key questions

What does Unassigned mean in GA4?

Unassigned is the value GA4 uses in the default channel group when no channel rule matches the source and medium of a session. Usually source and medium are missing (“(not set)”), or UTM values do not match any rule.

What is the difference between Unassigned and Direct?

Direct is a separate channel with a fixed rule: source “(direct)” and medium “(none)” or “(not set)”, for example for visits from a bookmark. Unassigned means that GA4 could not classify the origin.

How do I fix Unassigned in Google Tag Manager?

Move the Google tag to the “Initialization – All Pages” trigger and all GA4 event tags to later triggers. Then check in preview mode that the Google tag fires before every event, and review your UTM values.

Can I change the default channel group?

No, the rules of the default channel group are fixed. You can, however, create your own channel groups and set one of them as the primary channel group of the property.

 Request a consultation 

Questions about this topic?

Tell us briefly what it is about. You will speak directly to Ahmed Badia.
Microsoft Partner Badge
SISTRIX-zertifizierte Agentur
4.9
Based on 32 reviews

Reviews from our Google Business Profile. We check every review against our client projects.

Request a consultation
Ahmed Badia
Ahmed BadiaSenior Software Developer Team LeadCall: +49 228 243 313 54

* Required

Please enter your name.

Please enter a valid email address, e.g. name@company.com.

For a call back.

Please enter your number with area code, e.g. +49 228 243 313 53.

Please tell us briefly what it is about.

Free and without obligation. We usually reply on the same working day.

Information on how we process your data: Privacy policy