How to Discover & Fix Direct Not Set Traffic in Google Analytics


In this post I will guide you through a step-by-step, on how to both diagnose a sudden drop in Google Analytics organic traffic and which steps to take in order to fix this. While there might be some different scenarios, this post will focus on real-life case studies where the organic traffic was mistakenly attributed as direct /not set.

What is “direct not set traffic” in Google Analytics?

In case Google Analytics hasn’t received any information regarding the traffic source it will be considered as not set. In other words, there is missing referrer information of the session, meaning some data is missing. What can we conclude with all the missing data? I’ll elaborate later.

Prologue – why did my organic traffic drop?

You arrive at the office after the weekend still tired and try to open your eyes, you start drinking the morning coffee, open your Google Analytics account and your heart sinks when you see the following graph:

Google Analytics Drop

What do we do from here?

But you’re smarter than that, right? Before you press the panic button, you perform the following two simple tests:

  • Rankings – There were no unusual fluctuations to explain such a free fall. So far so good
  • Google Search Console you check the clicks graph versus the organic traffic in Google Analytics

Do you see the any drop there? If not, congratulations, you probably just have a measurement problem.

I do not know about you, but I would prefer this than a real organic drop on any given day.

So where do you go from here? From my experience with clients’ websites, the lion’s share of the problems discovered were eventually attributed to mobile. So first, let’s see that this is indeed the case here too.

#1 – Checking if the issue originates from mobile

In Google Analytics, select the segments “mobile traffic”  and “tablet and desktop traffic” (both are given as default and do not need to be created).

Then, go to Acquisitions -> Campaigns -> Organic Keywords

What do we see in here?

google analytics drop mobile only

Ouch. Do you get a similar picture? If so, it simply indicates that the traffic from your desktop has not decreased and the issue is probably with mobile monitoring.

#2 – From which pages does the measurement problem come from?

This is an intermediate stage, which can sometimes be skipped, but to get the full picture I recommend going through it too. When you’re still in Analytics leave the segment of the mobile and for convenience sake remove the “tablet and desktop traffic” segment.

Now go to the Landing Pages tab, still under Organic Keywords.

google analytics comparison

Compare the period when the decline began to the one before it and look at the landing pages. Does the decrease clearly affect all pages or just specific internal pages? Maybe blog pages are affected or rather category pages? Write down where the problem is and go on to the next step.

#3 – Is all mobile traffic counted as organic?

Real time report in Google Analytics means so much more than just to show off your number of real-time hits at the company’s lobby (Tell me you’ve never seen this happen!)

Truth to be told, there is nothing sophisticated here but a simple but powerful test that can instantly give us additional information about the problem. Log on from your mobile to one of the suspected internal pages.

And yes, it is clear to me that if it is a strong brand with tens of thousands of visits or more at any given moment it will be very difficult to recognize your entry in real time. I’ve worked with websites of this magnitude and it’s possible.

#4 – Real Time in Action

Visit the most seldom visited pages on your website. Whether it’s an old PR pages or a sub-category that exists but almost no one ever visits it. Now go to real time report in Analytics and check the URL you entered. Also filter the visit by mobile.

Now, assuming that the only visit to this URL is indeed yours you should see the following screen:

direct not set Google Analytics

This simply means that part of the organic traffic  is not counted as organic but as a direct (not set). I highly  recommend to test this with at least one or two different URL’s, preferably on different sections of the domain, to check if the issue is sitewide. Of course,  always use the incognito mode.

In addition, in recent days I have discovered two more ways to double check your real-time traffic.

First, Visit another search engine less popular than Google (e.g. Now check again your real-time – do you see organic traffic entry from this search engine? If not, this is another indication of a measurement problem.

real time organic traffic

Second, use VPN (I highly recommend Browsec Chrome extension) to change your location to a far fetched country. For instance, do you have many visits for South America to your English pages? If not ,try to switch to Colombia or Argentina. Now you can see clearly and without any “noise” your entry:

real time proxy

After we have confidently diagnosed the issue and where it is counted, I will now explain the two most common scenarios I encountered that might be the cause of it.

#5 – What causes direct not set in GA and what is the solution?

I’m not going to touch here on all the reasons that cause direct traffic (for that purpose there are some great posts like this one).  However,  I would like to refer to the two most common cases I have seen on clients’ websites, some of them are big brands which were not at all aware of the problem.

  1. Splash /Welcome screens – here I’m referring primarily to the screens before the site shows up asking you whether you want to display a mobile version, a desktop version or to download the app. Firstly, seriously guys, it’s 2018, who does this anymore? It seems quite a lot still do, and the user experience is pretty awful in my opinion, but this is also a discussion for some other time.Splash screen in itself is not problematic for SEO or for measurement.However, there is a tendency to forget to put an Analytics code in this page. And if you come directly from Google to this page, which is defined as your landing page and has no tracking code, it means de facto that it will be not set.
  2. JS redirects– it doesn’t matter if it’s after the split screen or directly to your landing page. Avoid JS redirects. The simple solution for mobile redirects (assuming you use separate URL’s) is to change the reference to redirect 302 (server side). It’s supposed to do the job.

Have you been able to identify any problems you had? Do you have other checks that you conduct  in Google Analytics? Hit me in the comments.

Posted by Roey Skif


  1. Nelio Castro

    In #4 – Real Time in Action, you said that if I test a navigation to the most seldom visited pages on my website I’ll find that image (a Direct real time visit). Than you conclude that this is an error. And said: “This simply means that part of the organic traffic is not counted as organic but as a direct (not set).”

    I’m confused now, cause for me when I test a url I do a Direct navigation and not an organic one. Can you explain better this?

    Thanks for the content It’s really great. I’m researching some sources for a bi problem we are facing right now on a huge website. Our Mobile Direct just Drop off from one day to another, and no devTeam can discover the problem or solve it!

    Thanks in advance,
    Nélio Castro

    1. Roy Skif

      Thanks Nelio for the great feedback

      The idea behind checking less visited pages, mostly with big websites, is to make sure you can test your entries in real time
      When you visit (must be organic) a specific page, do you see your entry as direct in real-time? (I’ll check once for mobile and once for desktop)

      Let me know if it’s working for you

  2. Nélio Castro

    But that’s my question. How can I organic visit? Organic: is Traffic from search engine results that is earned, not paid. I must search for this specific page and access from the search results?

    1. Roey Skif

      Yes, exactly
      Go to incognito search for a specific page and then check it on real-time in Google Analytics

Leave a Reply