Unassigned traffic in GA4: finding and fixing the causes
A growing share of your sessions ends up under "Unassigned" in GA4? That does not mean the data is missing - Google just could not assign the source to any channel group. In the acquisition report this looks like a blind spot. This page shows you where Unassigned comes from and how to eliminate it source by source.
What does "Unassigned" mean in GA4?
"Unassigned" is the catch-all category for sessions that GA4 cannot assign
to any default channel group (Direct, Organic Search, Paid Search,
Referral, …). Unlike with (not set), a source is present - it just does
not fit any of the defined channel rules. A high Unassigned share dilutes
every attribution.
Common causes
| Cause | Symptom | Fix direction |
|---|---|---|
Invalid utm_medium values |
medium outside the channel definition | standardise UTMs to recognised values |
| Missing UTM parameters | only source, no medium |
tag campaign links completely |
| Consent gap | source not captured before consent | check Consent Mode v2 |
| Broken cross-domain tracking | self-referral instead of original source | fix linker configuration |
| Tag timing | tag fires before the source is set | tag order / gtag sequence |
How to fix Unassigned traffic
- Filter the report on
Session default channel group = Unassignedand split by source/medium - this shows you which campaigns are affected. - Standardise the
utm_mediumvalues to what GA4 knows as a channel (cpc,organic,referral,email, …). - Check Consent Mode v2 - if the source is already missing before consent, no UTM will help.
- Check for cross-domain and self-referral problems.
"Unassigned" vs. "(not set)"
Both look like a "broken source", but they have different roots:
(not set) means GA4 received no value at all (a capture or timing
problem); "Unassigned" means a value is present but cannot be assigned to
any channel group. The detailed analysis of missing values is in the
(not set) source analysis.
How the auditor flags this automatically
The GA4 Auditor checks the Unassigned and Direct share both via the Data API (live check) and at event level from the BigQuery export and shows you the most likely cause per source - instead of just the number. Check your property now.
Related topics
Frequently asked questions
- What does unassigned traffic mean in GA4?
- Unassigned means that GA4 could not assign a session to any of the default channel groups (Direct, Organic, Paid, Referral, ...). The source does exist, but it does not fit any channel rule - usually because of invalid or missing campaign parameters.
- Why is my traffic Unassigned?
- The most common causes: missing or misspelled UTM parameters (e.g. utm_medium values outside the channel definitions), consent gaps where the source is not captured, broken cross-domain tracking and tags that fire before the source is set.
- How do I fix Unassigned in GA4?
- Standardise your UTM parameters to the values GA4 recognises, check your cross-domain tracking and the order of your tags, and verify whether consent is blocking the source capture. The GA4 Auditor shows you the Unassigned share and the most likely cause per source.
- What is the difference between (not set) and Unassigned?
- (not set) means there is no value at all for a field - GA4 received nothing. Unassigned means a value is present but could not be assigned to any channel group. (not set) is usually a capture or timing problem, Unassigned rather a channel-definition or UTM problem.