How to recognize and fix the (not set) value in Google Analytics reports
Olha Diachuk, Creative Writer @ OWOX
Serhii Kravchenko, Product Analyst at OWOX BI
Alyona Samovar, Web analyst @ OWOX
Have you ever noticed the (not set) value instead of actual value in Google Analytics? This means that Google Analytics doesn’t have data on this value or can’t interpret it. It’s obvious that this value is a fly in the ointment for you as a marketing specialist. You have numbers, but it’s not clear what they mean and how you can use them in your data analysis.
Additionally, getting a (not set) value in a number of standard Google Analytics reports is a warning sign of some error in how analytics is implemented on your site. It’s especially important to observe this value when setting up analytics for the first time and when adding new functionality.
In this article, we’ll give you detailed instructions on some of the Google Analytics reports that may contain the (not set) value:
Geo and Mobile report groups
Google Analytics gets the data for these reports automatically with the help of cookies, ad identifiers for mobile devices, and so on.
You may find the (not set) value in the Geo — Language report. For example, Google Analytics couldn’t define the language for 1.24% of website visitors in the report shown in this screenshot:
The Geo — Location report is nearly the same:
The Mobile — Devices report shows us that 3% of visitors’ devices weren’t identified:
Generally, you can expect to find the (not set) value for 1% of visitors at a minimum. This value is displayed for various reasons which, unfortunately, we can’t influence:
- Deleted cookies
- Couldn’t detect the location based on IP or couldn’t detect the IP at all
- Variety of blockers (AdBlocker, etc.)
10 Google Analytics 4 reports for monitoring of basic metricsDownload now
The Technology report group
Here’s one more interesting report: Technology — Browser & OS. Each time a visitor enters the website, their browser sends a string with the User Agent. This string contains information about the platform sending the request, including data on the browser. GA receives this information, but sometimes it may be unavailable. As a result, we get the (not set) value in the report:
If the number of unique visitors with (not set) values is less than 5% in a report, that’s considered normal. If it’s higher, you should check your traffic — maybe it’s caused by spambots. They can send GA any fake hits with the help of the Measurement Protocol. To do this, it’s enough for them to know your Google Analytics Resource ID.
Spambots of the second type send fake hits without visiting your website. This spam is called ghost spam.
In our example, up to 14.95% of visitors’ browsers were undefined. And the average session duration is nearly two minutes with transactions. To investigate this suspicious situation, we need to go deeper and open Acquisition — All Traffic — Referrals:
Pay attention to sources of referrals where the bounce rate is close to 0% or 100% and the number of sessions exceeds 10. As we can see, this happens in strings 5 to 9. Most probably, these are bots. The second sign of spam is strange source names: iloveyou and ithinkaboutyou, in our example.
Also, pay attention to visitors with the source name spamcampaign22 in string 8. They conducted 264 transactions — one per visitor. If we hadn’t manually placed this data in the property, our guess about spam traffic would be proven true.
Let’s add hostname as a secondary dimension:
In this case, our website is called example. com. Precisely this host needs to be in all rows of the report. But all suspicious referral sources have the value (not set), as we can see. We’ve finally found the ghost spam! In fact, Facebook and Instagram traffic is partially ghost spam too. This means these bots sent fake hits to GA and tried to make them as realistic as possible.
If all bots were to also send a host value, as in string 9 of the report (hostname ghost), we’d never know that we had excessive data on visitors and referrals.
Ignoring (not set) in these reports leads to sales data corruption, sending fake transactions to the property. As a result, you’ll see events that aren’t in your specification and views of products that you’ve never sold.
If you’ve already set up data export from Google Analytics to Google BigQuery (either standard or with the help of OWOX BI Pipeline), this fake data will increase the weight of the database tables. Because of this, data processing will be slower and you’ll spend more on data storage and processing.
How to get rid of spam traffic
First, you must exclude bot traffic. Open View settings and check the box Exclude all hits from known bots and spiders in the Bot filtering setting. This will exclude visible bots.
You can also apply the filter to referral sources. To do so, open View settings, go to the Filters submenu, then click Add filter. Now set the type of filter to Custom, check Exclude, and choose the Referral filter field. In the Filter template string, type the name of the suspicious source whose traffic you’d like to exclude from your reports.
The limitation of this method is that we can’t exclude traffic from bots using URLs of real websites. Otherwise, legitimate traffic coming from those websites would be filtered too. In this case, we might try blocking based on IP address instead of the source. If you’ve set up a flow in OWOX BI Pipeline, then it’s not a big deal to get the IP addresses of bots. But if bots don’t visit the website, IP blocking will have no effect.
To eliminate ghost spam, try the hostname filter. While setting up the filter, choose Include and then in the Filter Pattern field type your website’s domain name.
How to check the quality of data at all stages of collection, from the statement of work to completed reports.
Traffic Sources reports
The Traffic Sources reports help you to estimate the efficiency of ad sources and channels. With the help of these reports, you can compare expenses and revenues for each campaign you’ve launched, analyze traffic quality, and increase sales as a result. If you see the value (not set) in these reports, you couldn’t define where to invest more, which campaigns need to be changed, and which campaigns should simply be ended.
If you don’t have trustworthy data, you can’t set the retargeting properly or choose the audience segment for a certain campaign. Obviously, untrustworthy data also can’t be applied for enhanced reports such as cohort analysis, income forecasting, and customer lifetime value (CLV).
All Traffic reports
Let’s look at some examples of All Traffic reports. Let’s assume that you’d like to know what channel gives you the newest visitors. To find out, let’s open the All traffic — Channels report and choose the channel as the main parameter. We can observe the value (not set) for 7.19% of new visitors in string 4. But which particular channel or channels are hiding in this string is unclear.
In the All Traffic — Source/Medium report you can see a similar situation:
Why does this report display the (not set) value? Because part of the channels and sources are automatically identified by Google Analytics: organic search, referrals from other websites, direct traffic. But for a special campaign or ad services you need UTM tagging. Problems appear if UTM tags contain errors.
UTM tags are code fragments included in the URL from the ad message and that lead to the target website. Here’s an example:
There are three obligatory UTM parameters: utm_source, utm_medium, and utm_campaign. There are also two optional parameters: utm_term and utm_content. The values of these parameters can be google, cpc, or test.
Typical errors in UTM codes leading to (not set) in reports include:
- A misspelled parameter.
- No equals sign between a parameter and its value.
- Pairs of parameters and values not being separated by an ampersand (&).
- Other syntax errors: duplicate question marks, etc.
To avoid these mistakes, use specialized URL creation tools to help yourself with URL tagging.
What are UTM tags, why you need them, and how to get accurate information about traffic sources with their help?
In the Campaign — Organic keywords report you may see two kinds of interesting values: (not set) and (not provided).
The (not set) value means that Google Analytics couldn’t define exactly which request brought organic traffic to your website. This may be caused by:
- A few old search systems that don’t send information on keywords
- Forgetting to set the keyword in a campaign with manual UTM tagging
- Traffic from links in emails
Google Ads reports
This group of reports will help you to estimate the efficiency of your ads in the Google Display Network and let you know what users do after clicking on ads. The (not set) value helps you optimize expenses on paid traffic.
A (not set) value in the Google Ads reports can be caused by a few things
1. Improper integration of Google Ads and Google Analytics (Check that you’ve connected the right views in GA and accounts in Ads.)
2. The auto-tagging in Google Ads being turned off. When a visitor clicks on an ad message, the Google Click Identifier (GCI) value is added to the target URL. It’s saved in a new Google Analytics cookies file on the website’s domain. Thanks to this functionality, we can see the data on campaigns and expenses from Google Ads in Google Analytics reports.
If automatic tagging isn’t available for your website, you can tag links manually. To do that, open the Google Analytics resource preferences and check the box Allow manual tagging.
3. Using both manual and automatic tagging at the same time.
4. Void clicks. Google Ads understands these as clicks made by bots or malware, or double or triple clicks with no use for the advertiser. You can find more information on void clicks and what to do with them in the Google Help Center.
5. Redirects. While redirecting from one URL to another, gclid might get lost. As a result, you’ll see (not set). You can detect and fix this problem with Chrome Developer Tools. Read more in the Google Analytics Help Center.
6. Syntax and gclid problems, for example, if the register changes in the URL, or if your website cuts the gclid parameter because it has more than 100 symbols, or if your website settings forbid processing of the request that’s needed for properly processing tags. You may resolve this problem by making sure that all scripts run correctly.
You may find the (not set) value in the Site Content — Landing Pages report:
This report shows from which pages visitors start their sessions. The landing page is the page where new visitors get acquainted with your website. Check the bounce rate here. The bounce rate is the percentage of visitors who leave without taking any actions on the page.
If you have no data in this report, you can’t define which pages need improvement on the basis of high bounce rates.
You may also find the (not set) value in the other report in the Site Content reports group if you choose the main dimension, Content Grouping:
You can divide the content of your website into logical groups, such as Brands or Product categories to compare their efficiency in one report. Obviously, if you find (not set) in place of category names, the comparison will be pointless.
In the Behavior reports, (not set) may appear if
1. The session ended at midnight or after 30 minutes of visitor standby. Any actions completed after these 30 minutes will be marked as a new session. If this action is the only hit in the session, the landing page value will be (not set).
2. A session has no page or screen views. This may happen if you set a filter deleting specific page views or screen and page tracking settings are wrong. Check the Google Help Center to clear this up.
3. You’ve used two tracking codes at a time (analytics. js and gtag. js), in which case hits in the framework of one session will not be linked. You should use one code. Google Analytics recommends using gtag. js.
4. If the (not set) value appears in content grouping reports, it may be caused by a <title> tag in the header of your page that’s created with errors or not created at all. To know which pages cause the problem, use the additional page parameter. Maybe your GA tracking code is launching before the <title> tag. In this case, switch the order.
These reports help to track conversions on your website and analyze buyers’ behavior. They contain useful information on transactions, products, goals, and more.
E-commerce reports group
The (not set) value in the E-commerce — Product List Performance report makes it impossible to know which products are the most popular, which lists should be moved or need improvement, and which should be deleted from this website section.
Without accurate data, you can’t personalize campaigns for audience segments. For example, you can’t set the discount block on the product card, then separate a segment with those visitors who looked at discounts while buying other products and send them an email with special offers.
Let’s take a closer look at another example. Let’s say that you’ve launched an internal promotion on your website to create a segment that’s interested in your campaign to send emails with personal offers. If you open E-commerce — Marketing — Internal Promotion and see the (not set) value, this means part of your audience isn’t defined. As a result, you lose the opportunity to add these users to your segment and earn more.
Typically, the (not set) value appears in e-commerce reports because the enhanced e-commerce tracking code is missing the values for separate parameters: product list, order coupon, product coupon, etc. To resolve this, you need to set enhanced e-commerce correctly to send values of the necessary parameter along with hits to Google Analytics.
A Comprehensive Guide to Enhanced Ecommerce Tracking in Google Analytics.
The Goals — Reverse Goal Path report shows on which page a visitor achieved their goal and the three pages they visited before that.
The (not set) value will always be present in this report because a visitor can achieve their goal in fewer than three steps. If a visitor enters the website and registers right off the bat, steps 2 and 3 will be (not set), as in string 2 in the screenshot above.
The (not set) value can be found in most Google Analytics reports. It indicates that the system either doesn’t have data or doesn’t recognize it. This happens for various reasons. Some of them we can resolve, some of them we can’t, but we can take this into account when analyzing data.
If you ignore the (not set) values in your reports, it’ll be costly for your business. Who likes to invest money in inefficient measures? Data corruption leads to misinterpreting reports and shaky decisions. So it’s better to be safe than sorry.
Can "not set" affect my website's SEO performance?While "not set" itself does not have a direct impact on your website's SEO performance, it can lead to incomplete data and insights that may affect your overall marketing strategy.
How can I eliminate "not set" from my Google Analytics reports?To eliminate "not set" from your Google Analytics reports, make sure that your tracking tags are correctly implemented, consider adjusting your website's privacy settings, and filter out any known referral spam.
What is the (not set) value in Google Analytics?This means that Google Analytics doesn’t have data on this value or can’t interpret it. It’s obvious that this value is a fly in the ointment for you as a marketing specialist. You have numbers, but it’s not clear what they mean and how you can use them in your data analysis.
What Google Analytics reports that may contain the (not set) value?The (not set) value can be found in a number of standard Google Analytics reports: Audience reports, Traffic Sources reports, Behavior reports, and Conversions reports.