免费工具 流量来源分析:每次访问算哪个渠道
把来源页、落地页网址或 source / medium 一行一条贴进来。每行给两个答案——GA4 默认渠道分组和 TapCub 渠道规则——并写出是哪条规则决定的,「为什么这批流量算直接访问 / 未分配」一眼就能找到原因。
- 两套规则一张表
- 一次最多 1,000 行
- 本地运行
批量归类访问来源
一行一次访问:来源页网址、落地页网址、两者用空格隔开写在一行,或 GA4 写法的 source / medium。示例覆盖了国内投放最容易归错的几种情况。
来源页和落地页的顺序不限:你的域名下的网址、或带 UTM / 点击 ID 参数的网址算落地页。baidu.com 这样的裸域名算来源页;- 表示没有来源页。
来自这个域名及其子域的来源页按站内跳转处理,两个工具都是这样。
行数
12
GA4 ≠ TapCub
8
两套规则给出不同渠道的行数。
TapCub:其他
0
没有命中任何 TapCub 规则。
GA4:未分配 / 付费其他
2
GA4 认不出的取值。
逐行结果
绿色:两边一致;蓝色:两边不同。GA4 列带「≈」的行,source / medium 是 GA4 按来源页自动生成的,Google 没有公开完整规则,详见规则表下的说明。
| 行 | 访问 | TapCub 渠道 | TapCub 规则 | GA4 渠道 | GA4 source / medium |
|---|---|---|---|---|---|
| 1 | ← https://www.baidu.com/link?url=abc | 自然搜索 | R100 base=search | 自然搜索 | ≈ baidu / organic |
| 2 | ?utm_source=weixin&utm_medium=social&utm_campaign=double11 ← — | 社交 | R110 base=social | 自然社交 | weixin / social |
| 3 | ?utm_source=douyin&utm_medium=feed&clickid=__CLICKID__ ← — | 付费社交 / 信息流 | R2 click_id=clickid | 未分配 | douyin / feed |
| 4 | ?bd_vid=11843920&utm_source=newsletter&utm_medium=email ← — | 付费搜索 | R1 click_id=bd_vid | 电子邮件 | newsletter / email |
| 5 | ← https://www.xiaohongshu.com/explore/65a1b2 | 社交 | R110 base=social | 引荐 | xiaohongshu.com / referral |
| 6 | ← https://www.zhihu.com/question/5823 | 社交 | R110 base=social | 引荐 | zhihu.com / referral |
| 7 | ← https://kimi.moonshot.cn/ | AI 助手 | R80 base=ai | AI 助手 | ≈ kimi.moonshot.cn / ai-assistant |
| 8 | shop.example.cn/sale ← https://mail.qq.com/ | 邮件 | R62 base=email | 引荐 | mail.qq.com / referral |
| 9 | ?utm_source=tencent&utm_medium=cpc&utm_campaign=double11 | 付费社交 / 信息流 | R21 source~SOCIAL · medium~PAID | 付费社交 | tencent / cpc |
| 10 | ?utm_source=poster&utm_medium=qr&utm_campaign=double11 ← — | 直接访问 | R130 base=direct · no referrer | 未分配 | poster / qr |
| 11 | ?gdt_vid=wx0abc12&utm_source=tencent&utm_medium=feed ← — | 付费社交 / 信息流 | R2 click_id=gdt_vid | 自然社交 | tencent / feed |
| 12 | ← https://www.bilibili.com/video/BV1xx | 视频 | R94 ref_host~VIDEO | 引荐 | bilibili.com / referral |
按 TapCub 渠道汇总
每个 TapCub 渠道里的行,在 GA4 里分别归到哪里。
| TapCub 渠道 | 行数 | GA4 渠道 |
|---|---|---|
| 社交 | 3 | 引荐 ×2 · 自然社交 ×1 |
| 付费社交 / 信息流 | 3 | 未分配 ×1 · 付费社交 ×1 · 自然社交 ×1 |
| 自然搜索 | 1 | 自然搜索 ×1 |
| 付费搜索 | 1 | 电子邮件 ×1 |
| AI 助手 | 1 | AI 助手 ×1 |
| 邮件 | 1 | 引荐 ×1 |
| 直接访问 | 1 | 未分配 ×1 |
| 视频 | 1 | 引荐 ×1 |
需要注意
- 注意第 3 行clickid=__CLICKID__ 是没替换的广告宏。TapCub 仍会把它当点击 ID 记下,这次访问会算成广告点击;测试请用广告实际打开的网址,不要用模板网址。
- 说明第 3 行TapCub 把名为 clickid 的参数当作巨量引擎(抖音 / 头条)的点击 ID。用同名参数的联盟、CPS 追踪平台也会被算成付费社交 / 信息流。
- 注意第 3 行GA4 的默认渠道没有对应 douyin / feed 的规则,进「未分配」。
- 注意第 4 行TapCub 的点击 ID 规则排在 UTM 前面:bd_vid 让这次访问归入「付费搜索」;没有点击 ID 的话,按 UTM 应归「邮件」。
- 注意第 10 行GA4 的默认渠道没有对应 poster / qr 的规则,进「未分配」。
line,landing,referrer,utm_source,utm_medium,utm_campaign,click_id,tapcub_base,tapcub_channel,tapcub_rule,ga4_source,ga4_medium,ga4_channel
1,,https://www.baidu.com/link?url=abc,,,,,search,organic_search,100,baidu,organic,organic_search
2,https://shop.example.cn/sale?utm_source=weixin&utm_medium=social&utm_campaign=double11,,weixin,social,double11,,social,social,110,weixin,social,organic_social
3,https://shop.example.cn/sale?utm_source=douyin&utm_medium=feed&clickid=__CLICKID__,,douyin,feed,,clickid,direct,paid_social,2,douyin,feed,unassigned
4,https://shop.example.cn/sale?bd_vid=11843920&utm_source=newsletter&utm_medium=email,,newsletter,email,,bd_vid,email,paid_search,1,newsletter,email,email
5,,https://www.xiaohongshu.com/explore/65a1b2,,,,,social,social,110,xiaohongshu.com,referral,referral
6,,https://www.zhihu.com/question/5823,,,,,social,social,110,zhihu.com,referral,referral
7,,https://kimi.moonshot.cn/,,,,,ai,ai_assistant,80,kimi.moonshot.cn,ai-assistant,ai_assistant
8,https://shop.example.cn/sale,https://mail.qq.com/,,,,,email,email,62,mail.qq.com,referral,referral
9,,,tencent,cpc,double11,,paid,paid_social,21,tencent,cpc,paid_social
10,https://shop.example.cn/sale?utm_source=poster&utm_medium=qr&utm_campaign=double11,,poster,qr,double11,,direct,direct,130,poster,qr,unassigned
11,https://shop.example.cn/sale?gdt_vid=wx0abc12&utm_source=tencent&utm_medium=feed,,tencent,feed,,gdt_vid,direct,paid_social,2,tencent,feed,organic_social
12,,https://www.bilibili.com/video/BV1xx,,,,,social,video,94,bilibili.com,referral,referral渠道 ID 和 TapCub 规则编号,方便对账。
版本 v1.0更新于 更新记录
两个渠道,各有一条命中的规则
两个工具都是按顺序检查规则、命中第一条就停。表里写出了是哪一条,渠道归得出乎意料时,总能找到能改的原因。
TapCub 规则
R 加编号是这条规则在 TapCub 默认规则表(下方)里的位置,后面是命中的条件:base 是 TapCub 先按来源页判出的「基础渠道」,PAID、SOCIAL、VIDEO、SHOPPING、AI 是有名字的匹配模式。「—」表示没有命中任何规则。
GA4 source / medium
打了 UTM 的链接就是 utm_source / utm_medium。没打 UTM 的访问,GA4 按来源页自己生成:baidu / organic、zhihu.com / referral、(direct) / (none)。渠道由这两个值决定。
两列不一样时
多半是一个工具认识、另一个不认识的来源(GA4 的清单里没有知乎、抖音、小红书,TapCub 没有音频、推送渠道),TapCub 会读而 GA4 忽略的点击 ID,或来自邮箱 / AI 助手的来源页。两列没有对错,只是两份需要对账的报表。
注意项
结果取决于已知特殊行为的行:点击 ID 压过 UTM、只有 fbclid、没替换的广告宏、形似域名、GA4 认不出的取值。能改链接就改链接,改不了的在对比报表时记一笔。
GA4 对 Google Ads、DV360、CM360、SA360、Merchant Center 的流量按平台数据归类,不看网址。这类行显示「Google Ads(自动标记)」,不在本工具范围内。
从访问清单到修改清单
用真实数据最有用:服务器日志里的来源页、投放后台导出的落地页网址,或统计报表里的 source / medium 列。
-
1
粘贴清单
一行一次访问。来源页和落地页都有时写在同一行,UTM 和来源页会像统计工具看到的那样一起判断。
-
2
填你的域名
来自自己域名及子域的来源页按站内处理。只检查 UTM 链接的话保持默认即可。
-
3
看规则列
先看「注意」和两边不一致的行。改链接,或在统计工具里加一条自定义规则;下载 CSV 和埋点方案放在一起。
TapCub 默认渠道规则(按顺序)
TapCub 先按来源页判出基础渠道:utm_medium 是 cpc / ppc / paid / cpm / display / banner / ad(s) 时为付费,email / newsletter / mail 为邮件,social / sns 为社交;否则依次看是不是自己的域名(站内)、22 个 AI 助手域名、12 个搜索引擎、22 个社交网站,邮箱域名算邮件,其余算外链推荐。然后从上到下套下表的规则。
PAID= medium 是cpc、ppc、retargeting、cpv、cpa、cpp或以paid开头;SOCIAL、VIDEO、SHOPPING、AI= source 含 TapCub 列出的平台名之一(微信、抖音、小红书、Facebook…;B 站、YouTube…;淘宝、京东、拼多多…;Kimi、豆包、DeepSeek、ChatGPT…)- 所有模式不区分大小写;站点可以加自己的规则,排在这些规则前面
- GA4 规则见 Google Analytics 帮助「[GA4] 默认渠道组」(2026-11-10 核对),UTM 参数检查页按顺序列出了全部规则
| # | 渠道 | 命中条件 |
|---|---|---|
| 1 | 付费搜索 | 点击 ID gclid、msclkid、wbraid、gbraid、yclid、bd_vid(百度) |
| 2 | 付费社交 / 信息流 | 点击 ID ttclid、twclid、li_fat_id、ScCid、epik、rdt_cid、clickid(巨量引擎)、gdt_vid / qz_gdt(腾讯广告)、callback(快手) |
| 3 | 展示广告 | 点击 ID dclid |
| 10 | 直接访问 | 没有来源页、没有 source、没有 medium |
| 20–22 | 付费社交 / 信息流 | PAID 媒介 + 社交基础渠道或 SOCIAL 来源;或 medium 为 paid_social / feed / 信息流 |
| 25–26 | 付费搜索 | PAID 媒介 + 搜索基础渠道;或 medium 为 cpc / ppc / sem / paid_search |
| 30 | 社交 | 点击 ID fbclid |
| 32–33 | 购物 · 视频 | PAID 媒介 + SHOPPING 或 VIDEO 来源 |
| 40 | 展示广告 | medium 为 display、banner、cpm、expandable、interstitial、ad、ads |
| 50 · 60–62 · 70 | 联盟 · 邮件 · 短信 | medium 为 affiliate(s) / aff · medium 或 source 为 email / newsletter / edm(另有 mailchimp、sendgrid),或来源页是邮箱 · medium 为 sms / mms |
| 80–81 | AI 助手 | AI 助手来源页,或 AI 来源 |
| 90–94 | 购物 · 视频 | SHOPPING 来源或 campaign 含 shop · VIDEO 来源、medium 为 video 或视频网站来源页 |
| 100–101 · 110–111 | 自然搜索 · 社交 | 搜索引擎来源页或 medium 为 organic · 社交网站来源页或 medium 为 social / sns 等 |
| 120–121 | 外链推荐 | medium 为 referral / app / link,或其它任何来源页 |
| 130 | 直接访问 | 剩下没有来源页的 |
| — | 其他 | 都没命中 |
示例逐行看
双 11 活动的 12 次访问。下面是结果不那么直观的几行。
| 行 | 访问 | TapCub | GA4 | 原因 |
|---|---|---|---|---|
| 3 | douyin / feed + clickid=__CLICKID__ | 付费社交 / 信息流(R2) | 未分配 | 宏没替换也被 TapCub 当成巨量引擎点击;GA4 不认识 feed 这个 medium。 |
| 4 | newsletter / email + bd_vid | 付费搜索(R1) | 电子邮件 | TapCub 点击 ID 优先,UTM 输了;GA4 不读 bd_vid。 |
| 5 | 来自小红书 | 社交(R110) | 引荐 | 小红书在 TapCub 的社交网站表里,不在 GA4 的社交网站清单里(知乎同理)。 |
| 8 | mail.qq.com → 你的页面 | 邮件(R62) | 引荐 | TapCub 把邮箱域名当邮件;GA4 只认 source / medium 是 email 的。 |
| 10 | poster / qr | 直接访问(R130) | 未分配 | qr 不是任何规则认识的 medium,没有来源页时 TapCub 落到直接访问。 |
| 12 | 来自 B 站 | 视频(R94) | 引荐 | TapCub 认识 bilibili;GA4 的视频网站清单里没有。 |
第 10 行说明 medium 有多重要:同一批扫码访问,一个工具算直接访问、一个算未分配,活动报表里两边都找不到它。
渠道报表常在这里出错
渠道归类是机械规则,出乎意料的结果几乎都来自输入,不是工具。
medium 自己起名
wechat_article、qr、moments 当 medium,匹配不到默认规则。medium 用标准值,细分放在 campaign 或 content。
微信、短信链接不打 UTM
微信内打开、短信、二维码、邮件客户端通常不带来源页。没有 UTM 的话这些点击都算直接访问——这就是推文一发「直接访问」就涨的原因。
逐行比对两个工具
GA4 和 TapCub 的来源清单不同、点击 ID 的优先级也不同。先把渠道对应起来再比总数,不要逐行硬对。
用模板网址测试
从投放后台复制的链接还带着 __CLICKID__、{gclid} 这类宏,统计工具会把宏当成值记下。测试要用广告实际打开的网址。
同一套规则,用在每个会话上
TapCub 在每个会话开始时归一次渠道,用的就是本工具重放的这套规则;AI 助手单独算一个渠道。
流量来源分析先看什么?
先看渠道:每次访问被归到自然搜索、付费、社交、邮件、外链、直接访问等哪一类,再往下看具体来源和活动。渠道是按规则从来源页、UTM 参数和广告点击 ID 算出来的,规则不同结果就不同——这个工具就是把规则摊开给你看。
GA4 里的流量为什么是「未分配」?
source / medium 组合没有命中任何规则:常见的是自己起的 medium,比如 wechat_article、qr、feed,或者没写 medium。把 source / medium 贴进来能看到差在哪条规则,改成 email、social、cpc、referral 这类标准值即可。
微信里打开的流量为什么都算直接访问?
微信内置浏览器、公众号文章、朋友圈、扫码打开,大多不带来源页。没有来源页、也没有 UTM,任何统计工具都只能算直接访问。所以微信渠道的链接一定要打全 utm_source、utm_medium、utm_campaign。
UTM 和点击 ID 冲突时听谁的?
TapCub 默认规则里点击 ID(第 1–3 条)排最前,带 bd_vid 又写了 utm_medium=email 的链接算付费搜索。GA4 对 Google Ads 点击通常以自动标记数据为准。想在 TapCub 里让 UTM 优先,加一条站点规则即可。
GA4 怎么判断没打 UTM 的来源页?
它自己生成 source / medium:认识的搜索引擎是「引擎名 / organic」,其它是「域名 / referral」,没有来源页是 (direct) / (none),来自 AI 助手的设成 ai-assistant。Google 公开了渠道规则,但没公开第一步和最后一步用的完整清单,所以这些行标了「≈」。
从 Kimi、豆包、DeepSeek 点过来的访问能认出来吗?
来源页能传过来时,TapCub 认得 Kimi、豆包、文心一言、通义千问、智谱清言、DeepSeek、秘塔等国内助手,归到「AI 助手」渠道。App 内打开、来源页被去掉时就认不出来,会算直接访问。GA4 的 AI 助手清单没有公开,国内助手能不能认出要以实际报表为准。
这些规则能用到自己的报表里吗?
可以。CSV 里有每行的渠道 ID 和 TapCub 规则编号,上面的规则表列了全部条件。GA4 可以复制默认渠道组再加规则;TapCub 可以加站点规则,排在默认规则前面。
粘贴的清单会上传吗?
不会。归类在你的浏览器里完成,不发给 TapCub。也不提供分享链接,因为网址清单里可能有还没公开的活动名。