Quick answer
A traffic source is the specific origin of a visit, such as a domain or a utm_source value. A channel is the category that source is sorted into by a set of rules.
Source, medium and channel
Three fields describe where a visit came from:
- Source — the origin:
google,newsletter,chatgpt.com,partner-blog.com. - Medium — the type of link:
organic,cpc,email,referral. - Channel — a grouping computed from source, medium, the referrer and any ad click ID: Organic Search, Paid Search, Email, Referral, Direct and so on.
Source and medium are facts about a visit. Channel is an interpretation, decided by rules that run in order until one matches. That is why two tools can agree on source and disagree on channel.
How rules sort a visit
Three visits land on the same page:
- Referrer
www.google.com, no UTM tags → Organic Search. - No referrer, URL contains
gclid=…→ Paid Search. The click ID wins even though nothing else says it was an ad. - URL has
utm_source=newsletter&utm_medium=email→ Email.
Rule order matters. If "no referrer = Direct" ran first, the second visit would be called Direct and the ad would look like it produced nothing.
Why direct traffic is overcounted
"Direct" really means "unknown". A visit is called direct when there is no referrer, no UTM tag and no click ID. Some of that is people typing your address or using a bookmark, but a lot is lost attribution:
- Links opened from apps (chat apps, email clients, PDF readers) often arrive without a referrer.
- Moving from an HTTPS page to an HTTP one strips the referrer.
- Some browsers and privacy settings trim or remove referrers.
- Links you share without UTM tags in newsletters, SMS or QR codes.
Tagging your own links and reading click IDs are the two ways to shrink the direct bucket.
How TapCub classifies channels
TapCub sorts each session's entry into one of 14 channel types: direct, organic search, paid search, paid social, social, video, shopping, email, referral, display, AI assistant, affiliate, SMS and other. The default rules follow Google Analytics 4's channel grouping, with two differences:
- Ad click IDs come first. A visit with
gclid,msclkid,ttclidor one of the other recognised IDs is classified as paid even with no referrer and no UTM tags. - AI assistant is its own channel. Visits from ChatGPT, Perplexity, Claude, Gemini, Copilot, DeepSeek, Kimi, Doubao and other assistants are separated from organic search and referral.
The rules can be edited per site, so you can, for example, file an internal campaign tag under email. The sources report shows source, medium, campaign and channel side by side.
Common mistakes
- Inventing medium names.
utm_medium=Email,e-mailandnewslettermay all be understood, bututm_medium=blastwill fall to Other. Agree on a short list. - Tagging internal links. UTM tags on links inside your own site start a new attribution and overwrite the real source.
- Reading Direct as brand strength. A rise in direct traffic after an untagged email send is the email, not the brand.
- Lumping AI assistants into referral. Traffic from chat assistants behaves differently and is growing; keep it separate to see it.
Related guides: Direct Traffic, Acquisition Metrics and Lead Tracking. See also organic traffic and unassigned traffic.
Was this explanation clear?
We use your answers to fix and expand this page.
Couldn’t send. Please try again in a minute.
Thanks for the feedback. We’ll use it to improve this page.You’ve already sent feedback on this page. Thanks.

Product Experience Specialist
Explores usability, user journeys, and feature adoption through practical examples of onboarding and everyday product use.