Guide

GA4 unassigned traffic: why it happens and how to fix it

Unassigned is what Google Analytics 4 calls a visit that matches none of its channel rules. The rules read the source and medium, so most Unassigned traffic comes from UTM tags GA4 cannot place, like utm_medium=ads, or from visits whose source and medium are (not set). Fix the tags and new visits land in the right channel.

Tags that land in the right channel

Trafficutm_sourceutm_mediumGA4 channel
Meta adsfacebook or instagrampaid_socialPaid Social
LinkedIn adslinkedinpaid_socialPaid Social
TikTok adstiktokpaid_socialPaid Social
Microsoft AdsbingcpcPaid Search
Programmaticdv360displayDisplay
NewsletternewsletteremailEmail
Partner sitethe site's namereferralReferral

Google Ads needs no UTM tags for this: link it to GA4 and turn on auto-tagging, and GA4 sorts its clicks by campaign type.

Check your links before launch, free

How GA4 decides the channel

GA4 compares each visit's source, medium and campaign name with a fixed list of rules. Google's rule for Paid Social, for example, needs two things at once: the source is on its list of social sites, and the medium matches cp, ppc, retargeting or anything that starts with paid. A visit that fits no rule at all is Unassigned.

The default rules can't be edited. They aren't case sensitive, so Facebook and facebook both count as Paid Social. But the values are: GA4 still lists them as two sources, which splits one campaign across two rows.

What sends traffic to Unassigned

  1. A source and a medium GA4 doesn't know. utm_source=meta&utm_medium=ads matches no rule: meta isn't on Google's list of social sites, and ads isn't a medium any rule looks for.
  2. Missing tags. Google says tags left out show up as (not set), and a visit whose source / medium is (not set) is Unassigned. Always set utm_source, utm_medium and utm_campaign together.
  3. Tags GA4 never sees. Tags after a #, a second ? in the link, or a redirect that drops everything after the ?.
  4. Google Ads without auto-tagging. Google lists an unlinked Google Ads account and auto-tagging switched off as causes of (not set).
  5. Tag setup. Google says source / medium is (not set) when the session_start event is missing, for example when the Google tag in Tag Manager doesn't fire on the Initialization trigger. Consent settings can cause the same.

Tags that land in the wrong channel

Not Unassigned, but just as misleading in a report. All of these follow from Google's rules:

TagsLands inWhy
utm_source=meta&utm_medium=paid_socialPaid Othermeta isn't on the list of social sites, so only the paid medium matches.
utm_source=facebook&utm_medium=social_paidOrganic SocialThe medium has to start with paid, so the ads count as unpaid social.
utm_campaign=acme_shop_sale with a paid mediumPaid ShoppingA campaign name with shop or shopping as a word counts as shopping.
utm_campaign=...cross-network...Cross-networkAny campaign name that contains cross-network.

We checked the source names against Google's downloadable list of sources on 5 Nov 2026: facebook, fb, instagram, ig, linkedin and tiktok are on it as social sites; meta is not.

How to find what's in Unassigned

  1. In GA4, open Acquisition, then Traffic acquisition. Its rows are channels by default.
  2. Next to the dimension drop-down, click + and add Session source / medium.
  3. Search the table for Unassigned. Each row shows a source / medium pair to fix. Swap in Session campaign to see which campaigns they belong to.

Then change those tags in the ad platform or the email tool. GA4 sorts visits as they arrive, so the fix shows on new visits; visits already counted keep the tags they came with.

Test a tagged link before launch

Paste your links into the UTM link checker. It flags missing tags, capital letters, spaces, tags after a # and a second ?, and runs in your browser, so nothing is sent to us. Then open one link in a private window and look at the Realtime report in GA4, which covers the last 30 minutes. Its card for active users by first user source should show your source. Realtime shows how a user was first acquired, which is why the private window matters. A redirect that drops the tags only shows up this way.

New to the tags themselves? Read UTM source vs medium vs campaign. Running Meta ads? The Meta ads URL parameters guide has a template that lands in Paid Social.

Check your links Build tagged links

FAQ

Questions, answered

GA4 unassigned traffic and missing UTM data, in plain words.

Still stuck? Email hello@weekendproof.com

What is unassigned traffic in GA4?

Unassigned is the channel Google Analytics 4 uses when a session matches none of its default channel rules. The rules read the source and medium, so most Unassigned traffic comes from UTM tags GA4 cannot place, like utm_medium=ads, and from sessions whose source and medium are (not set).

How do I fix unassigned traffic in GA4?

Find which source / medium pairs make up Unassigned in the Traffic acquisition report, then change those UTM tags to values GA4 knows: a known platform name in utm_source, like facebook or linkedin, and a medium like paid_social, cpc, email, display or referral. The fix applies to visits from then on. If the rows show (not set), check that your Google Ads account is linked with auto-tagging on and that the Google tag fires on every page.

Why is my Meta ads traffic unassigned or Paid Other in GA4?

Usually the tags. GA4 only calls a visit Paid Social when the source is on its list of social sites and the medium looks paid, like paid_social, paid or cpc. utm_source=meta is not on that list (we checked Google's list on 5 Nov 2026), so meta with paid_social lands in Paid Other, and meta with a medium like ads lands in Unassigned. Use utm_source=facebook or instagram with utm_medium=paid_social.

How do I find unassigned traffic in GA4?

Open Acquisition, then Traffic acquisition. The table is grouped by channel; click + next to the dimension drop-down and add Session source / medium to see which tags make up the Unassigned row. Session campaign shows which campaigns they belong to.

Are GA4 channel rules case sensitive?

No. Google says the default channel definitions are not case sensitive, so Facebook and facebook both count as Paid Social with a paid medium. The values themselves are case sensitive, though: GA4 lists utm_source=Facebook and utm_source=facebook as two separate sources, so keep every tag lowercase.

Why are my UTM parameters not showing in GA4?

The usual causes are tags placed after a # in the link, a second ? in the link, a redirect that drops the query string, and a missing utm_source or utm_medium, which GA4 reports as (not set). If auto-tagging is on in Google Ads, GA4 uses the Google Ads values for source and medium and your utm_source and utm_medium are not shown for those clicks.