How Organic & Direct Traffic is Tracked
Not all visitors arrive with UTM parameters. AttributionHub automatically detects organic search traffic and classifies direct visits — no manual tagging required.
Organic Traffic
Organic means unpaid visits from search engines. When someone finds your site through a search engine result (not an ad), AttributionHub recognises the referrer and classifies the visit as Organic Search.
How Detection Works
- The script reads
document.referreron every page load. - It matches the referring hostname against a built-in database of 440+ search engine domains covering 35 named engines.
- If the referrer matches a known search domain and there are no paid signals (click IDs, paid medium keywords), the visit is classified as
Organic Search.
No UTM parameters are needed. The referrer alone is enough.
Supported Search Engines
AttributionHub recognises all major search engines out of the box, including:
- Google — google.com and 90+ country-specific domains (google.co.uk, google.de, google.co.jp, …)
- Bing — bing.com, cn.bing.com, bing.net
- Yahoo — yahoo.com and regional search subdomains
- DuckDuckGo — duckduckgo.com
- Baidu — baidu.com, m.baidu.com
- Ecosia — ecosia.org
- Brave Search — search.brave.com
- Perplexity — perplexity.ai
- Naver, Sogou, Qwant, StartPage, Kagi, and 20+ others
The full list is maintained in the sources.json data file and updated regularly.
What Appears in Your Data
When a visitor arrives from an organic search:
| Field | Example Value |
|---|---|
| Channel Group | Organic Search |
| Source | Google |
| Medium Type | organic |
| Source Domain | google.com |
Beyond Search: Other Organic Channels
The same referrer-matching approach detects other organic channels:
| Referrer Type | Channel Group | Example |
|---|---|---|
| Social network | Organic Social | Visitor clicks a LinkedIn post |
| Video platform | Organic Video | Visitor arrives from YouTube |
| Shopping site | Organic Shopping | Visitor comes from Amazon |
| AI assistant | AI Referral | Visitor follows a ChatGPT link |
AttributionHub maintains databases of 840+ social domains, 90+ video platforms, 80+ shopping sites, and 22 AI assistants for this purpose.
Direct Traffic
Direct means no external referrer was found and no campaign parameters are present. A visit is classified as Direct when all of the following are true:
document.referreris empty or same-domain- No UTM parameters are set (or they explicitly say
direct/(direct)) - No click IDs are present (
gclid,fbclid,msclkid, etc.)
Common Causes
Direct traffic typically occurs when:
- Someone types your URL directly into the browser address bar
- A visitor uses a saved bookmark
- A link is clicked from an app that strips referrers (some messengers, PDF readers, email clients)
- The visitor navigates from an HTTPS page to an HTTP page (referrer is dropped by browsers)
What Appears in Your Data
| Field | Value |
|---|---|
| Channel Group | Direct |
| Source | Direct |
| Medium Type | direct |
Direct Visits and Touch Snapshots
Direct visits receive special treatment in the storage layer to preserve marketing attribution:
| Touch Type | Behaviour on Direct Visit |
|---|---|
| First Touch | Not set. First touch waits for a non-direct visit. If a visitor’s first visit is direct, first touch remains empty until they return through a tracked source. |
| Latest Touch | Updated. Always reflects the most recent visit, including direct. |
| Latest Non-Direct | Preserved. Keeps the previous non-direct source. Not overwritten by direct visits. |
This means that when a visitor first arrives to your site through a Google Ad, then later returns by typing the URL, the original Google Ads attribution is preserved in both First Touch and Latest Non-Direct.
Placeholder UTM Filtering
Some CMS templates, email builders, or SMS tools insert placeholder values like utm_source=undefined or utm_medium=null. AttributionHub detects these and treats them as direct traffic rather than creating misleading attribution entries. Specifically, if both utm_source and utm_medium match patterns like undefined, null, none, or test_data — and neither maps to a known source or medium — the visit is classified as Direct.
Tips to Reduce “Direct” Traffic
Some traffic that should be trackable shows up as “Direct” because the referring context was lost. To minimise this:
- Always tag paid ads with UTMs. Even when click IDs are present, UTMs provide explicit classification.
- Tag links in emails and newsletters. Many email clients strip the referrer header. Use
utm_source=newsletter&utm_medium=email. - Tag links in PDFs and documents. PDF readers never send referrer headers.
- Tag offline campaigns. QR codes on posters, flyers, or packaging should include UTM parameters (e.g.,
utm_source=qr_code&utm_medium=offline&utm_campaign=storefront_poster). - Tag links shared in messaging apps. WhatsApp, Telegram, Slack, and SMS often strip referrers.
The more consistently you tag your links, the fewer “mystery” direct visits appear in your reports.