Skip to main content
Free4 minutesBeginner

Why do some visits show as 'Direct' source?

A 'Direct' source row in the dashboard isn't a bug, it's a visit that arrived without a referrer or campaign tag we could classify. Here's how to read it and shrink it.

traffic-sourcesreferrerunknowntroubleshooting
Last updated:

Open a website's dashboard, go to the Analytics tab, and find the source breakdown card. Under the Channels and Referrers views you'll often see a row labelled Direct. It's normal, it just means the visit arrived without enough information to attribute it to a specific source. Here's the breakdown.

What "Direct" actually means

When a visit has no campaign tag and no usable referrer, Zenovay classifies it as Direct. That happens when:

  • The user typed the URL directly into the address bar.
  • The user clicked a bookmark.
  • The browser sent no Referer header (the most common case, see below).
  • The Referer header was present but malformed, so the hostname couldn't be parsed.
  • The referrer was from the same site (internal navigation), so it isn't counted as an external source.

Direct is the catch-all for "we couldn't tell where this came from", not a sign that something is broken.

Why your "Direct" rate may be growing

Several modern browser and privacy trends shrink the referrer signal:

1. Strict referrer policies on the source site

Many sites set Referrer-Policy: strict-origin-when-cross-origin or no-referrer on their pages. When a visitor clicks a link from such a site to yours, the referrer is stripped or reduced to just the origin. If it's stripped entirely, the visit lands as Direct.

2. Privacy browsers + ad-blockers

Brave, Firefox in strict mode, DuckDuckGo Privacy Browser, and Safari's ITP all strip or downgrade referrers for cross-site links. iOS added similar protections.

3. Mobile in-app browsers

Clicks from native apps open in an in-app browser. Zenovay recognises common ones from the browser's user-agent (Facebook, Instagram, Twitter, LinkedIn, Discord, WhatsApp, Telegram, Snapchat, Line) and classifies those visits as Social. Apps that don't expose a recognisable user-agent, and that don't pass a referrer, arrive as Direct.

4. HTTPS-to-HTTP referrer suppression

If a user clicks from an HTTPS page to an HTTP page (rare in 2026, most sites are full-HTTPS), the browser drops the referrer entirely.

How to shrink your "Direct" rate

You can't recover a referrer that was never sent, but you can bring more of those visits into a meaningful category by:

Use UTM parameters in your campaigns

Tag every campaign link with ?utm_source=twitter&utm_medium=social&utm_campaign=spring2026. UTMs travel in the URL, so they survive even when the referrer is stripped. They show up in the source breakdown card under the UTMs view (and feed channel classification) instead of falling into Direct.

This is the highest-leverage single change. If you're running ads or email campaigns and don't have UTMs, adding them moves a large share of "Direct" into proper buckets.

Check your own site's referrer policy

If your Referrer-Policy header is set to no-referrer for outbound clicks, it's stripping referrers for any sites you link to, and equivalently those sites lose the ability to identify you as their source. Consider relaxing to strict-origin-when-cross-origin (the modern default).

When "Direct" is actually a bug

If your "Direct" rate is >50% of total visits, something may be wrong:

  • Check that visits from your top campaigns have UTMs (they should land under the campaign source, not Direct).
  • Open the Live View tab and look at a sample visitor. Each visitor card shows the captured referrer. If it's missing on visits that should have come from somewhere, the tracking script may be running before referrer data is available, which is common with very early page-script execution.
  • Email [email protected] with the website domain and a screenshot of the source breakdown.

Plan applicability

Source classification, UTM bucketing, and bot filtering work on every plan. The Live View tab, which lets you inspect the captured referrer on individual visitors in real time, is also available on every plan. (The "Watch cursor" overlay inside each visitor card is a Pro and higher feature, but it isn't needed to read the referrer.)

Was this article helpful?