Google Analytics: What to do about all that Direct traffic

Time to read: About 5-7 minutes
Intended for: Digital marketers and analysts. Anyone responsible for analyzing Google Analytics data, whether it’s for your own organization, or on behalf of clients.
Key takeaway: In Google Analytics, did you know direct traffic isn’t really DIRECT traffic? It’s actually unknown traffic. As a marketer, this isn’t helpful for understanding channel attribution. Follow my checklist to increase the amount of known traffic in your Google Analytics views.

Ever see something like this in your Google Analytics views?

Screenshot of a Google Analytics report showing that 64% of traffic is direct traffic.

Direct traffic = unknown traffic

Most people think of direct traffic in a very literal sense: Those users are coming directly to my website, either through typing my URL into the browser, or by using a bookmark. It’s true that direct traffic has some of those use cases in it, but the reality is the true definition of direct traffic is actually unknown traffic. Google Analytics can’t determine the referral source, for a variety of reasons, so it sticks the traffic into the direct channel grouping.

As a marketer, I want to understand my channel attribution to the fullest extent possible, and I’d like my direct traffic grouping to be mostly actual DIRECT traffic, instead of unknown. There are a few things we can do to decrease the amount of direct traffic reported by Google Analytics, and increase the amount of known traffic in other channels.

Direct traffic: The analyst’s checklist

You’ll always have some unknown traffic in your Google Analytics views. There will always be cases when Analytics can’t determine the traffic source. But you can make it better and more accurate, and you can do so in incremental steps. To maximize your known traffic, review and work through the eight steps below.

  1. Tag all of your inbound marketing links. Use Google UTM parameters (Campaign URL Builder) to specify which channels your inbound links are coming from. In Google Ads, enable auto tagging (About auto-tagging). In your emails, place Google UTM parameters on all your inbound links. If sharing links on social, tag them with UTM parameters. Some mobile apps and desktop applications do not pass referring info and can show up as direct traffic by default. The Facebook mobile app and Microsoft Outlook are two common examples of this. Also, if there are links to your site in documents, like Word and PDF, these would show up as Direct unless tagged with UTM parameters.
  2. Make sure the Google Analytics tracking code is installed correctly. Ensure that it is used consistently across all pages that you want to track. If using Google Tag Manager, ensure the Google Analytics tag is set to fire on all pages, and the Google Tag Manager script is deployed across your entire website. If using an enterprise DXP (Digital Experience Platform) such as Sitecore, work with your development team to get the tracking code added to all your pages. Remember that it goes in the <head> section of the page.
  3. Suppress known bot and SPAM traffic from your main views. In the Admin area, in View settings, if you haven’t already, toggle on the setting for Exclude all hits from known bots and spiders. And make sure you still have a completely unfiltered view where you leave this setting off.
A screenshot from Google Analytics showing the setting to exclude all hits from known bots and spiders.
  1. Determine if a large portion of your direct traffic is SPAM or Bot traffic. I like to do this by going into some of the geo-location reports and checking if there’s a particular region or city that has traffic with really high bounce rates or low pages per visit. Really poor engagement metrics on a region could indicate SPAM traffic from a particular region. Another dead giveaway of SPAM traffic is a large chunk of traffic from a region where you don’t do business or aren’t located, e.g., a U.S. only retailer with a huge amount of traffic from Vietnam.
  2. Re-order your channel rules so direct is processed last. In the View Settings > Channel Settings > Channel Groupings menu, I like to re-order my channels so that Direct is the LAST channel that Google Analytics can process.
The channel definition settings from Google Analytics, shown with the direct channel last.
  1. If you aren’t already, start using Google Search Console. Using Search Console, you can get a rough idea of how many organic searches there are per month. Compare that to Google Analytics organic traffic. If the numbers are wildly off (they won’t match up perfectly), something is definitely awry.
  2. Get an SSL certificate. Linking from HTTPS to HTTP websites will cause referral data to be lost. If you have an HTTP site with links pointing TO you from HTTPS sites, that will cause them to show up as direct traffic. Get an SSL certificate for your site ASAP (this has been an industry best practice for a while now, even on non-transactional sites).
  3. Check your redirects. Don’t use meta refreshes or JavaScript-based redirects for creating “vanity URLs” to link to your site. If you have any direct mail or offline campaigns with links that people can type in, make sure the destination page has Google Analytics UTM parameters on it.

Continual improvement

This process can take time. Tackle it in chunks. If you have limited time and resources, start with #1: The UTM tagging. Getting Google Analytics UTM parameters on all your inbound links will likely have the biggest bang for your buck in terms of driving known channels up and direct/unknown traffic down. If you have any questions on any of these items I covered, don’t hesitate to reach out.