Opens in a new tab
Woman writing on a blank ruled worksheet at a standing desk beside a laptop.
Marketing

GA4 Unassigned traffic: fix campaign labels and session gaps

GA4 puts traffic under Unassigned when no channel rule fits. Check the recorded source and medium, campaign links and session information before changing your tracking.

GA4 shows visits and enquiries under Unassigned, but does not tell you which marketing channel deserves the credit. That makes it harder to judge an email campaign, a paid advert or the QR code on your shop counter.

Start by checking what information sits behind that label. You may have a recognisable campaign using a medium Google does not classify, or events arriving without the session information needed to identify their origin. Those need different repairs.

What Unassigned means in GA4

Google defines Unassigned as traffic that matches none of the rules in the channel group you are viewing. Its default channel definitions explain how sources and mediums become categories such as Email, Paid Social and Referral.

Unassigned is a classification outcome. It does not establish that the visitor was a bot, that the campaign failed or that the enquiry was worthless. Equally, seeing events arrive does not prove that their source information is complete.

Keep three labels separate: Unassigned means no matching channel rule; (not set) means information for a particular dimension was unavailable; (other) is an aggregated reporting row associated with cardinality limits. Investigate the actual value rather than treating all three as missing traffic.

Start with the session report and the underlying source

For a question about where website visits came from, start with Reports → Acquisition → Traffic acquisition. Google’s Traffic acquisition documentation confirms that its dimensions describe sessions from both new and returning users. If the report is absent from your navigation, an editor can add it back.

  1. Choose a completed period and record the property, dates and any report filters.
  2. Use Session default channel group and isolate Unassigned with a report filter or comparison.
  3. Add Session source / medium to see the values behind that category.
  4. Review Session campaign where useful, keeping the same session-based scope.
  5. Record which sources account for the largest number of affected sessions and whether important enquiries or purchases are involved.

Do not substitute First user source / medium halfway through the investigation. That asks how the person was first acquired, rather than which source originated the session you are examining.

Use settled data for the initial comparison. Google’s data freshness guidance says processing can take 24–48 hours and reports can change during that period. A result from this morning is a weak basis for rewriting your tracking.

If source and medium are present, check the campaign labels

A useful source with an unfamiliar medium points towards a naming or classification question. Compare the exact pair with the current default rules before changing any website code.

These are illustrative manual campaign labels, assuming no other classification rule overrides them:

  • Source / medium: customer_newsletter / email. Expected default channel: Email. Use the source to distinguish the mailing; keep the medium consistent.
  • Source / medium: partner_site / referral. Expected default channel: Referral. Check this describes a genuine referral link rather than paid advertising.
  • Source / medium: shop_counter / qr. Expected default channel: Unassigned. A genuine offline campaign may need a custom channel definition.

The QR example uses an ordinary campaign name such as winter_launch. It illustrates why an honest label can still sit outside Google’s predefined categories. Calling that visit Email would make the report tidier while describing the activity incorrectly.

For manually tagged campaigns, Google’s campaign URL guidance recommends including utm_source, utm_medium and utm_campaign. Source identifies the origin, medium describes the marketing method, and campaign identifies the promotion.

For example, a customer email could use utm_source=customer_newsletter, utm_medium=email and utm_campaign=winter_launch. These are example values, not a prescribed campaign.

UTM values are case-sensitive: Newsletter and newsletter can split source reporting. However, Google’s default channel definitions are not case-sensitive. Do not assume changing Email to email alone will resolve Unassigned.

Our recommendation is to keep one approved list of source and medium values, with somebody responsible for maintaining it. Check the links created by your email platform, advertising templates and external partners against that list. Correct the template responsible for future links as well as the individual campaign.

Test the link customers actually receive. For an email, open a delivered test message; for a QR promotion, scan the finished code. Ask your developer to check whether the intended campaign parameters reach the measured landing page through any redirects.

If source / medium is (not set), investigate the session

A missing value needs more than a new channel name. Google’s explanation of (not set) says Session source / medium can be unavailable when session_start is missing, leaving the traffic Unassigned. It also identifies consent implementation errors that can lose the initial session information.

Ask your developer or tracking specialist to reproduce one affected route. Give them the landing URL, how the visitor arrived, the browser, the consent choice and the date the pattern began. Include recent changes to the website, tag container or consent platform as investigation leads.

Google’s tagging best practices explain that initialising the Google tag after events can disrupt user and session identity. Inconsistent cookie prefixes and mixed measurement routes can also separate events from the session information they need.

Request evidence of the sequence: which tag initialises first, which events follow, and whether the same session identity is preserved. If server-side tagging is involved, include both browser and server processing in the check.

Any repair must preserve visitors’ consent choices. Test the intended accepted and rejected journeys separately; do not force analytics collection simply to reduce an unattractive reporting row.

If the wider problem is a gap between advertising clicks and measured visits, our guide to Google Ads clicks and fewer GA4 sessions covers landing-page measurement and campaign identifiers in more detail.

Use a custom channel group when the recorded labels are useful

You cannot edit Google’s default channel group. Where existing source and medium values accurately describe the activity, consider a separate custom group instead of relabelling everything to fit the default.

For the shop-counter example, you could create a narrowly defined Offline QR channel matching the agreed source and medium. Keep unrelated sources outside that rule so a future campaign is not swept into the wrong category.

Google’s custom channel group documentation confirms that custom groups can apply retrospectively to reports. Rules are evaluated in order, with traffic entering the first matching channel. Review that order and compare the custom result against the underlying source values.

This can regroup historical data whose labels were collected. It cannot reconstruct an origin that was never recorded. Google also distinguishes retrospective custom reporting from selecting a property’s primary channel group: the selected criteria populate the primary dimension going forward.

We recommend testing the separate group in a report first. Give it a clear name, document its rules and explain which channel definition appears in management reporting. That helps colleagues compare like with like.

Verify the repair before using the figures to change spend

Choose one affected route and one route that already works. For each, record the actual link, expected source, medium, campaign and channel, then complete a controlled visit using a fresh browser session.

Google’s collection verification guidance recommends Realtime and DebugView for checking incoming activity. Use those to inspect the test, then revisit Traffic acquisition after processing to assess the session classification.

Your acceptance checks should establish that the intended campaign information arrived, the session reached the expected channel and the enquiry or purchase journey still worked. Check unaffected sources too, particularly after changing shared tags or broad custom rules.

Record the implementation date and compare later completed periods. Keep remaining unknown origins visible rather than allocating them to a preferred channel without evidence. Our guide to connecting enquiries with sales explains how to carry that uncertainty into a useful commercial report.

If Unassigned traffic is obscuring decisions, talk to BuzzBoost. We can help identify whether campaign naming, channel definitions or the measurement implementation needs attention, then verify the relevant customer journey.

Featured image: AI-generated editorial artwork, not a photograph of a real BuzzBoost office, client or result.

Bolt AI — BuzzBoost Digital author avatar
Written by Bolt AI