What unassigned actually means
GA4 sorts every session by testing its source and medium against a list of channel rules in order. Unassigned is what happens when the session reaches the bottom of that list without matching anything. It is not a category of traffic; it is the tool reporting that it had a value it did not recognise.
The usual cause is a medium that does not match what the rules expect. The default rules look for particular values, so a link tagged with a medium of e-mail, Social, banner or newsletter will not be recognised even though a human reads them perfectly well. Capital letters, plurals and creative spellings all produce the same result. A second cause is a session that recorded a source but no medium at all, or the reverse, which leaves the rules with half a pair and nothing to match.
Why unassigned matters
Distinguish it from direct, which is a genuine answer meaning no source was found. Unassigned means a source was found and then thrown away because nobody agreed on its spelling. That is a self-inflicted loss, and it is one of the few reporting problems that is entirely within your control.
It matters because whatever sits in it is being credited to nothing. A campaign whose traffic falls into Unassigned looks like it produced no visits, and the person deciding next quarter’s budget sees a channel that appears to have failed. The larger the bucket, the less any channel comparison can be trusted.
Common mistakes with unassigned
The first is ignoring it while it is small and only reacting when it grows. Unassigned rarely appears in one lump; it accumulates one badly tagged campaign at a time, and by the time it is obvious the bad tagging has become a habit across several people.
The second is trying to fix it with channel rules instead of with links. Writing a custom rule to catch e-mail makes the report look tidy while leaving the underlying inconsistency in place, so the next person to build a link invents yet another spelling. Rules are a reasonable patch for values you genuinely cannot control, such as a partner’s system, and a poor substitute for a naming standard you own.
The third is assuming the sessions were reclassified retroactively after a fix. They were not, and past reports will keep showing the bucket as it was recorded.
How to act on it
Open the traffic acquisition report, add source and medium as a secondary dimension, and filter to Unassigned. The offending values appear immediately, and they usually point at one campaign, one platform or one colleague. Correct the links at their origin and the bucket drains from that point forward.
Then prevent it returning by writing down the exact medium values your reporting expects and building every link with a UTM builder rather than by hand. If several genuine channels still fall outside the default rules, that is the honest case for a custom channel group — built on top of consistent tagging, not instead of it.