How it works
When you click a link, the browser asks the next site for the page and may tell it where the click came from. That hint is the HTTP Referer header (the misspelling is in the original specification and has stuck), also readable in a page as document.referrer. If you click through from a search results page to an article, the article's server and script can see the search engine's address.
Analytics reads it to answer "where did this visit come from". A referrer from a search engine becomes Search, from a social site becomes Social, from an assistant such as ChatGPT becomes an AI channel, and from any other site becomes a plain Referral.
Why it is often missing
The share of visits with no referrer is larger than most people expect. The usual causes:
- Typed addresses and bookmarks. There was no previous page.
- Links in apps and messages. Many messaging apps and email clients open links without passing a referrer.
- Privacy settings. Browsers and extensions can cut or shorten it. By default most modern browsers send only the origin, not the full path, across sites.
- A site that asks for none. A page can set a
Referrer-Policyofno-referrer, so its outgoing links carry nothing. - Secure to plain. Browsers do not send a referrer from an HTTPS page to a plain HTTP one.
- Redirects and shorteners. The source can be replaced by the shortener's own address.
All of these end up as Direct, which is why Direct is partly a bucket for "unknown" and not a measure of loyal visitors.
What to do about it
Where you place the link, tag it. UTM parameters state the source outright, so a newsletter click is counted as email whether or not the app sent a referrer. For links you do not control, such as a mention in a forum, there is nothing to add; accept that some of that traffic will be Direct.
For your own site, set a sensible Referrer-Policy. The browser default, strict-origin-when-cross-origin, is a good balance: other sites learn that the visit came from you, not which page.
One referrer, one session
Analytics reads the referrer once, at the start of a session, and keeps that source for the whole visit. Moving from page to page on your own site does not change it, which is why links inside your site should never carry UTM tags.
A note on privacy
A referrer can contain the path of the page the person was on, and sometimes a query string with a search term or an identifier. trckable records the five UTM tags from the address a visit lands on and drops every other part of a query string before it stores anything, so a session id or an email address in a URL never reaches the database.
Try it in trckable
trckable sorts every visit into a channel from its referrer and its UTM tags, and the Sources tab shows the exact referrers behind each channel. Read your dashboard
Related terms
Read more
The newsletter
Notes on measuring what matters.
Occasional emails from Albi: new posts, one chart worth reading, what changed in trckable.
We send one email to confirm your address, and nothing more until you confirm. Every newsletter has a link to leave. What we keep, and who sends it: privacy.