GA4 (not set) Dimension: Causes and Fixes | Adslytics | Adslytics

GA4 Setup & Audit How-To Guide

(not set) in GA4: What Causes It and How to Fix Each Case

By Muhammad Farooq · February 16, 2026 · 6 min read
(not set) in GA4: What Causes It and How to Fix Each Case

What (not set) Means in GA4

When you see "(not set)" in a GA4 report dimension, it means no value was collected for that dimension in those sessions. It is not an error in itself — it is GA4's way of saying "this dimension has no data for these rows." But it usually indicates a setup gap that is worth investigating.

Case 1: (not set) in Source/Medium

Cause: Sessions where GA4 could not determine a traffic source. The most common reasons:

  • Direct sessions that arrived with no referrer and no UTM parameters
  • iOS 15+ users with Private Relay enabled (IP masked, user agent generic)
  • Sessions from within apps (email clients, social apps) that do not pass referrer headers

Fix for UTM-less paid traffic: Ensure all paid campaigns use UTM parameters. Missing UTMs on email campaigns are a common cause of "(not set)" in email traffic.

Fix for dark social: Short links from messaging apps often strip referrer headers. Accept that a small percentage will show (not set) from these sources.

Case 2: (not set) in Landing Page

Cause: Sessions where no page_view event was recorded with a valid page_location parameter. Common causes:

  • Single-page applications (SPAs) where GA4 fires before the URL is properly set
  • Redirect chains that GA4 did not follow correctly
  • Tag firing on document ready before URL is finalised

Fix: In GTM, ensure your GA4 Configuration Tag fires on DOM Ready or Window Loaded triggers rather than Page View if your site has redirect chains. For SPAs, implement explicit page_view events triggered by route changes.

Case 3: (not set) in Google Ads Dimensions

Cause: Sessions from Google Ads where the GCLID was not passed to GA4. This happens when:

  • GA4 is not linked to Google Ads (Admin then Google Ads Links)
  • Auto-tagging is disabled in Google Ads
  • Landing page redirects strip the gclid parameter
  • The page loads so slowly that GA4 fires before the gclid is available

Fix: Enable auto-tagging in Google Ads (Settings then Auto-tagging). Verify the GA4-Google Ads link is active. Check that no redirect strips the gclid parameter.

Case 4: (not set) in Ecommerce Dimensions

Cause: Product-related dimensions (item_name, item_category) showing (not set) means those parameters are missing from the items array in some purchase events.

Fix: Check your purchase event implementation — ensure every item in the items array includes item_id AND item_name. Use GA4 DebugView to inspect a purchase event and verify all item parameters are present.

Case 5: (not set) in Custom Dimensions

Cause: A custom dimension has been registered in GA4 Admin but the corresponding event parameter is not being sent consistently with all events.

Fix: Check your event implementation. Custom dimensions are only populated when the event explicitly includes the parameter — they do not inherit from other events or sessions. If the parameter is missing from some events, (not set) appears for those rows.

How Much (not set) Is Acceptable?

Some (not set) is unavoidable — direct sessions, dark social, and app traffic will always produce some. Concerning thresholds:

  • Source/medium (not set) above 20% of sessions: investigate UTM coverage
  • Landing page (not set) above 5%: investigate redirect or SPA issues
  • Google Ads campaign (not set) above 10%: check auto-tagging and link status

Summary

(not set) in GA4 is a diagnostic signal, not an error. Each dimension has specific causes for (not set) that require different fixes. Start with the dimensions that have the highest (not set) percentage and the greatest business impact — typically source/medium and Google Ads campaign dimensions.

See our GA4 Setup & Audit service for data quality investigation.

Too much (not set) in your GA4 reports? Contact Adslytics.

Need expert tracking setup?

Our Google Tag Manager experts have delivered 500+ tracking setups with a 98% success rate.

Get a Free Consultation →
← Back to Blog
Muhammad Farooq

Author

Muhammad Farooq GTM & Analytics Expert · Adslytics Founder

Tracking specialist with 10+ years of experience in Google Tag Manager, GA4, Server-Side Tracking, and Google Ads. Founder of Adslytics — a dedicated analytics agency with a 98% success rate across 232+ projects on Upwork.

Top Rated Plus LinkedIn Visit the author's profile →