Direct Traffic in Google Analytics - a detailed explanation

DK traffic

How do people find my website? - This question has been asked for arguably as long as the the internet itself has existed. Basic analytics solutions initially aimed at answering the previous question. At first the traffic sources were basic, they showed which other websites had a link to your website, and how many website visitors actually typed your domain name or used browser bookmarks (hey - anyone still using those?).

Therefore the classification was quite simple: Referral or Direct. When link directories were replaced by search engines, the latter deserved a separate acquisition category which is now called Organic. With the rise of advertising networks, such as banner exchange or AdWords, new categories came to exist: Paid Traffic, Paid Search, etc. When social networks became a marketing tool they received their own Acquisition category: Social. Currently, BI and Analytics can be quite granular in differentiating and classifying incoming traffic using tools, like Acquisition Grouping, Custom Channel Grouping, etc in both Google Analytics and Analytics 360.

Currently the Direct traffic source is still around and takes a significant part in our Acquisition reports. The modern day internet user's behaviour has changed a lot - browser bookmarks are not used anymore (at least I don't heavily use them as I did 15 years ago), instead of typing the website domain name we type the name of the business into a search engine and click the paid advertising link or search result. We use URL shortener services such as or and append campaign attributes (utm parameters) to the URL we market to correctly attribute the traffic. However despite this, the Direct attribution channel looks significant in the report. Direct_Traffic_in_Google_Analytics_-_a_detailed_explanation_image_1

One of the clients with a domain name like domain wondered why so many people typed his name into the browser. I mean, really...

The truth is that when an analytics solution is unable to "understand" the traffic source - it becomes Direct. In other words, when you see sessions with traffic source Direct - it means Google Analytics has no idea where these customers came from.

When you see sessions with traffic source Direct - it means Google Analytics has no idea where these customers came from

Google Analytics is not an "all-seeing-all-knowing" tool. It can only process information available to it. Excluding manual traffic source attribution (utm parameters) the only source of information is a HTTP header called Referer. If this header is absent in the HTTP (web) request - Google Analytics is very limited in what it can do. Luckily for us, the header is mostly present so we can correctly attribute our traffic.

How does Google Analytics determine traffic source
  1. Are gclid (AdWords) or gclsrc (DoubleClick) parameters present in the request?
    1. Yes - it is CPC traffic, either AdWords or DoubleClick, and by using the parameter value Google Analytics is able to import campaign name, ad name, keyword, etc
    2. No - continue
  2. Are UTM parameters set?
    1. Yes - read utm_campaign, utm_source, utm_medium, etc parameters from the request string and attribute traffic accordingly
    2. No - continue
  3. Are UTM variables in documentLocation parameter set? Every signal sent to Google Analytics from your website in addition to current page URL includes documentLocation property. This is mainly used for Single Page Applications (SPA) when the page content changes, but page URL stays the same
    1. Yes - read utm_campaign, utm_source, utm_medium, etc parameters from the request string and attribute traffic accordingly
    2. No - continue
  4. Is Referer set?
    1. Yes - here we have some more questions!
      1. Is it a known Search Engine?
        1. Yes - attribute session to Organic Search
        2. No - continue
      2. Are there any custom rules defined within Google Analytics matching website specified in Referer
        1. Yes - follow the rule definition
        2. No - continue
    2. No - continue
  5. We have tried everything - it is a direct traffic!

As you can see, the traffic becomes Direct only as a last resort in the session attribution mechanism.

Of course, in reality the algorithm is a little bit more complicated as additional factors such as session and campaign timeout etc., come into play. For more details on the how Google Analytics does session attribution I would recommend looking at the following Google Analytics help article: Acknowledging the unavoidable Direct traffic, Google Analytics by default is using the Last Non-Direct Click Attribution Model. This means that the Direct traffic we are seeing in GA is traffic which had no previous sessions within campaign timeout or all of their sessions were direct!

Why do we even care about Direct Traffic

The sole purpose of analytics on your website is to help you improve. How can you improve your direct traffic? You can't make random people start typing your website URL. These website visits exist independently from your marketing activities and you can't directly influence this acquisition channel. If you can't influence it - this makes your business unpredictable and hard to grow. We don't want that. What we really want is to know why and how people have found the business, so we could sell more. What if some of the traffic was attributed to direct by mistake? For example, you may have made a typo in your URL UTM parameters, or security considerations has prevented a browser from passing Referer header.

How can you improve your direct traffic? You can't make random people start typing your website URL

Another example would be a link to your website. If a third-party website works over HTTPS (secure) and it has a link to your website which starts with HTTP (insecure), the browser will not pass the Referer header. This leaves Google Analytics to wonder if this is Direct traffic. Some browsers (especially mobile) won't include this header when you right-click on the link. If an app has a link to your website with UTM parameters a click on it will also be visible as Direct in Google Analytics. And of course, the Measurement Protocol hits are a good source of Direct traffic if attribution information is not provided.

An incorrect attribution of the traffic to the Direct channel may have a serious business impact. A client of ours had a few affiliates of his business with links to his website, after a few months he saw an increase in Direct traffic, however referral traffic from those websites was very low. The problem was fixed by adding correct UTM variables and telling GA to correctly attribute affiliate traffic, but the first months of data were lost and affiliate comission conversations were rough.

What have we covered?

To conclude, always reasonably question your traffic. Remember, some of your Direct traffic are users whose conversions were a result of your (paid) marketing activities. Also, always try to use UTM parameters, especially for links on third-party websites.

Here at Internetrix, we understand that analytics can be confusing and if you'd still like some extra help, our analytics team is more then willing to help out. Leave a comment or get in touch with us for more assistance.