Understand (not set) values in GA4
If you use Google Analytics 4, you have probably encountered the mysterious value labeled as (not set) more than once. What is it, and what are the basic and less obvious reasons for its occurrence? In this article, we will tackle this topic based on real-life cases from our daily work.
What is (not set)?
The value (not set) in GA4 reports is a placeholder for missing values. This means that specific data for a given dimension is missing in a particular context (there is a data gap, for which the system provides the value (not set)). In the case of GA4, this can occur when there is no information regarding a specific dimension in a given event or session.
But should all (not set) instances be a cause for concern?
There are several main reasons for the appearance of (not set) in GA4 reports.
GA4 uses (not set) when it does not receive any information about a specific dimension. For example, filtering dimensions related to the app when using GA4 to measure data only from websites – in such cases, the (not set) value should not surprise us. However, there are cases where an unidentified parameter or event value constitutes a very high percentage. In such instances, we are dealing with low-quality data collection.
TLDR:
- (not set) means that GA4 has no value for that dimension in this particular context.
- (not set) often occurs in the implementation of Measurement Protocol/server-side tagging (SGTM).
- Some (not set) values result from Google bugs.
- User privacy tools and extensions can also affect (not set).
- There are cases where (not set) values result from incorrect tool configuration.
Main reasons for (not set) values in reports
Let’s consider what situations most often cause missing dimension data. Below are examples of the most common cases encountered in practice for the most popular reports. If you identify with a particular case, verify whether the gaps in the reports are caused by the examples given:
- (not set) in session traffic reports – source/medium
- Incorrect implementation of Measurement Protocol (incorrectly sending session_id – the parameter must contain the session value that has already been tracked by GA4 on the website (client-side). If the developer randomly generates session_id, source/medium will be labeled as (not set)).
- Missing session_start event – usually a very small percentage of sessions, mainly occurs with server-side tagging (SGTM).
- Missing/incorrectly set UTM parameters – (not set) at the session – source/medium level or at the campaign level (to avoid errors in UTM, we recommend using dedicated tools, such as Campaign URL Builder according to best practices, as discussed here).
- Incorrect data transfer between domains (cross-domain tracking) – missing/incorrect session and source information.
- Privacy settings in browsers – some browsers may block data transfer due to privacy settings, such as blocking cookies or other tracking technologies.
- (not set) for Google Ads campaigns
- Missing/incorrect connection of GA4 with Google Ads.
- Auto-tagging not enabled in Google Ads (recommended).
- Missing/incorrectly set UTM parameters.
- Throughout 2024 and 2025, the increase in values for (organic) and (not set) resulted from a Google-side error related to the processing of advertising consent. Currently (as of early 2026), Google recommends using both auto-tagging and manual tagging (UTMs) in advertising campaigns to minimize this issue.
- Invalid clicks (More information)
- (not set) in the landing page dimension
- Starting a session with an event other than page_view (the session is treated as a session with an undefined entry page, and the landing page equals (not set)).
Examples include:- A user leaves the computer, keeps the page open, and returns after the session has automatically ended. They perform an action, such as scrolling or clicking, and start a new session where page_view is not the first event.
- Incorrect event order, for example the product view event is generated before the page_view event.
- Integrations like Calendly, which generate sessions but do not generate page views.
- Starting a session with an event other than page_view (the session is treated as a session with an undefined entry page, and the landing page equals (not set)).
- (not set) for the page_location dimension
- Usually a GA4 bug.
- May occur when URLs on the page exceed 500 characters (more about data limits in GA4)
- (not set) in the page_title parameter
- Missing <title> on HTML pages.
- GA4 codes executing before the <title> section loads in HTML.
- (not set) for the content group dimension
- Missing/incorrect content_group parameter configuration.
- Inconsistent with documentation (case-sensitive).
- Sending an empty value to the parameter (e.g., from a DOM element).
- Incorrect (usually too late) triggering of the code containing the page_type parameter.
- No ability to measure content_group for first_visit events.
- Missing/incorrect content_group parameter configuration.
- (not set) for the language dimension
- missing the language parameter when implementing Measurement Protocol.
- Hiding/modifying browser language by the user (e.g., through extensions/plugins).
- Removing the ul (user language) parameter when using server-side tagging.
- (not set) for the country dimension (and other geographic dimensions)
- Missing the location parameters when implementing Measurement Protocol.
- IP anonymization – lack of accuracy in identifying user location.
- Removing/overwriting IP addresses when using server-side tagging.
- VPN-type firewalls.
- (not set) for the event report/product data
- Inconsistent e-commerce tracking implementation – not recording the same parameters at each stage of the user journey.
- Incorrect parameter values – inconsistent with the implemented dataLayer.
- Not registering custom dimensions in GA4 despite collecting them in GTM (custom dimensions do not work retroactively).
- GTM configuration errors – incorrect tag firing or missing triggers.
- Audience triggers (events set from GA4 audiences) – these events are often not assigned to any session.
- (not set) limited to the user
- Incorrect/missing User-ID configuration – (not set) values in reports related to logged-in users.
- Often a GA4 bug
- It is worth setting user properties not only in the configuration tag but also in all event tags.
- It is worth setting an event-limited custom dimension (for all tags).
- (not set) for the technology report (browser and operating system)
- If the number of unique users with the (not set) value exceeds 5-10%, it is worth verifying further whether the traffic is coming from bots (useful reports include sources, hostname combined with bounce rates).
How to deal with (not set)?
To minimize the percentage of (not set) values in GA4 reports, carefully analyze your implementation and ensure that all parameters are correctly sent. Debugging with tools such as Explorations in GA4 can help locate problems and find solutions.
It is also important to monitor all changes to your website or application to quickly respond to any data transfer issues to GA4. Using GA4 documentation and other training materials will help you better understand the platform’s operation and avoid potential pitfalls.
Completely eliminating (not set) values in GA4 reports is not possible, but it is crucial to understand the scale of the problem, the reasons for their occurrence, and systematically take steps to reduce them. A high percentage of (not set) values unfortunately indicates low data quality, leading to inadequate conclusions and poor decision-making.
(Updated: 19.1.2026)
