如何跟踪链接点击:方法、指标与陷阱
- analytics
- marketing
- link-shortener
本页内容
统计点击看上去是营销衡量里最简单的问题:一件事要么发生了,要么没发生。实际上,你看到的每一个数字,都已经被别人替你做出的至少三个决定塑造过——什么算一次点击、哪些自动化流量被剔除了、数据能保存多久。理解这些决定,正是「一块可以据此行动的看板」与「一张开会时用来争论的图表」之间的差别。
本文覆盖点击实际上被衡量的四种方式、单次点击事件能揭示与不能揭示什么、值得关注的指标、机器人过滤的工作原理,以及那些悄悄决定了你究竟被允许衡量什么的厂商限制。
统计一次点击的四种方式
跳转侧的数据分析
短链接被点击时,请求会先抵达跳转引擎,浏览器才会去往任何地方。这个引擎完整地看到请求并在服务端把它记录下来,然后返回跳转。整个过程不依赖目标页面,不依赖 JavaScript,也不依赖访客的配合。
对于站外链接,这是可用方法中最完整的一种,也是当目标地址是你无法控制的站点时唯一奏效的一种:一个应用商店页面、一个合作伙伴页面、一个客户的网站。它同样是唯一能在印刷品上存活的方法,因为从海报上扫来的二维码既没有引荐来源,也没有可以挂靠的会话。
它的盲区是跳转之后的一切。它知道点击发生了,但不知道页面有没有加载,也不知道购买有没有完成。
营销活动参数加网站分析
互补的那一种方法。你在目标 URL 上打好营销活动参数,目标站点上的分析平台据此把会话和转化归因过去。这是把一次点击与收入连接起来的唯一途径,也正是这两种方法应当搭配使用、而不是彼此竞争的原因。命名与一致性的具体做法见我们的UTM 参数完全指南,而UTM 生成器会强制执行那些让数据日后可以关联起来的命名规则。
它的局限是结构性的:只在你能控制并能埋点的目标站点上有效,会丢掉所有在页面加载完成前就离开的人,还会受到因受众而异的拦截插件和隐私设置影响。技术型受众屏蔽掉的比例,比消费者受众高得多。
服务器日志
每一个发往你自己基础设施的请求都已经被记录下来了。日志是精确的,无法被拦截,用来核对你在别的工具里存疑的任何数字都很有用。它们同样是原始的:没有地理位置解析,没有设备解析,没有机器人分类,也没有界面。把它们当作用于核对争议数字的审计记录,而不是一套报表系统。
pixel 与客户端代码
跟踪 pixel 从目标页面触发,通常是为了积累广告受众,而不是为了统计点击。挂在链接上的再营销 pixel 工作方式略有不同:一个中转页在跳转过程中触发 pixel,于是即便你并不控制目标页面,访客也能被加入受众。那是一种积累受众的机制,不是衡量机制,不应该被当作点击数据来计数。
| 方法 | 能看到指向非自有站点的点击 | 能扛住拦截插件 | 能看到转化 | 适用于印刷二维码 | | --- | --- | --- | --- | --- | | 跳转侧数据分析 | 是 | 是 | 否 | 是 | | 营销活动参数 | 否 | 部分 | 是 | 是,前提是打了标记 | | 服务器日志 | 否 | 是 | 间接可以 | 否 | | pixel 与客户端代码 | 否 | 部分 | 是 | 否 |
对多数团队来说,务实的答案是把前两种一起用:跳转侧统计负责触达范围和受众构成,营销活动参数负责回答之后发生了什么。
一次点击实际上包含什么
在跳转发生的那一刻,在任何页面加载之前,引擎可以记录下点击的时间、涉及的链接与域名、它路由到的目标地址、由网络地址推导出的国家、地区与城市、设备类型、从 user agent 解析出的浏览器与操作系统及其版本号、对方发送了引荐来源时的引荐域名、浏览器语言,以及 URL 上携带的任何营销活动参数。当这条链接正在跑分流测试时,再加上版本标识。
城市级别的地理信息值得加一句厂商很少写出来的说明:它由网络地址推导而来,准到足以看清区域性的规律,也错得足够频繁,以至于你不该拿几十条记录去支撑一场本地营销活动。移动运营商和企业网络经常把一位访客定位到离他实际位置一百公里之外的地方。
一次点击不可能包含什么,同样重要。它不能识别出某个人。它不会告诉你目标页面有没有加载、有没有人读了什么内容,也不会告诉你之后有没有发生购买。它对同一个人在另一台设备上的行为更是一无所知。超出上面这份清单的每一个论断,都需要第二份数据源——而这恰恰是营销活动参数的职责。
值得关注的指标
点击量与独立访客
总点击量是一个体量指标,会被重复点击、刷新和多设备用户抬高。独立访客更接近触达范围,而它的计算方式决定了你应该信任它到什么程度。
保护隐私的做法——也是 LinkProfit 采用的做法——是把网络地址、user agent 和域名连同一份每日轮换的 salt 一起哈希,推导出一个标识符,然后只存储这个哈希值。地址从不写入数据分析存储。每日轮换 salt 带来的诚实后果是:身份不会跨天延续,因此这个指标的正确名称是每日独立访客,而一个月度数字是各天独立访客之和,而不是不同人数的真实计数。任何一家不使用 cookie 却报告精确月度独立访客的厂商,要么把标识符保存得比它承认的更久,要么就是在估算。
二维码的扫描与点击关系
对印刷类营销活动来说,把同一条链接上的扫描数与总点击量做对比,可以把共用同一个目标地址的各个渠道区分开。这也是发现某个码印坏了的最快方式:一张有数千次曝光、却只有寥寥几次扫描的海报,通常意味着对比度或尺寸出了问题,而不是受众出了问题。
衰减曲线
多数链接的绝大部分工作是在最初几个小时里完成的,随后沿着一条可预测的曲线衰减。摸清你各个渠道上这条曲线的形状,你就能分辨一场营销活动是真的结束了、还是只是暂停了,异常也会随之显形:一条在数周之后重新活跃的链接,通常是又被人分享了出去,有时是在某个你会很想知道的地方。
来源构成与直接访问那一栏
引荐域名显示的是一条链接正在哪里被分享,而那往往不是你发布它的地方。要有心理准备:直接访问那一栏会很大——即时通讯 App、邮件客户端,以及会剥掉引荐来源的各类 App 全都落在那里,它的大小是你渠道组合的一个属性,而不是一个需要解决的问题。
机器人,以及为什么你的第一个小时是假的
在链接衡量里,自动化流量不是边缘情况。它在发布后的最初几分钟里占了事件中相当可观的一部分,而且形态各异:在投递时抓取邮件或消息中每一条链接的安全扫描器、生成卡片的社交预览爬虫、可用性监测程序、搜索与 SEO 爬虫,以及寻找开放跳转器的扫描程序。
过滤依靠两类信号。网络层的机器人评分在请求被应答之前就完成分类,user agent 启发式规则则抓住那些主动表明身份的爬虫。一个正确的实现还会处理两种特殊情况:HEAD 请求照常应答但不计一次点击,社交预览爬虫则被返回页面预览标记,而不会被路由、更不会被计数。
真正重要的那个设计决定,是被过滤掉的事件后来怎么样了。删除它们,异常就变得不可见。存下它们、默认排除、并提供一个把它们包含进来的选项,意味着你可以去调查一次可疑的尖峰,而不是靠猜。LinkProfit 把机器人事件带标记存下来,并把它们排除在每一份默认报表之外。
实践中有两个习惯能保护你。任何在人类合理可能看到这条链接之前就开始的尖峰,在被证明不是之前,都按自动化流量对待。以及,当某个数字看起来不对时,拿它和目标站点那一侧对比:很大的点击量却几乎没有会话,正是扫描流量的典型特征。
把隐私当作设计约束
点击跟踪恰好位于衡量与个人数据交汇的那个点上,而架构决定了这件事到底有多麻烦。
干脆不存储网络地址,就把最敏感的那个字段从系统里结构性地移除了,而不是靠一纸政策。每天轮换 salt,则给推导出的标识符能被关联的时长设了上限。不为衡量目的设置跨站 cookie,避开的正是绝大多数授权同意法规所针对的那套机制。而把访客标识符排除在 API 响应和导出之外,则让这个推导值留在聚合层内部,而不是躺在某个人笔记本电脑上的表格里。
这是对系统如何构建的描述,不是法律意见:你的授权同意义务取决于你所在的司法辖区、你的受众,以及你之后拿这些数据做什么。但一个这样设计的平台,会让你的法务评审需要回答的问题清单短很多。
决定你能衡量什么的那些限制
有两条厂商限制主宰着你真正拿到的数据分析:有多少事件被记录,以及它们被保留多久。在定价页上,这两条通常都排在功能清单更下面的位置。
| 厂商,截至 2026 年 8 月 | 数量限制 | 保留期 | | --- | --- | --- | | Rebrandly | 互动数据按档位上限为每月 100、10,000、25,000 和 150,000 个事件 | 未作为单独的限制公开 | | Short.io | 每次点击 30 个以上数据点,无单独的事件上限 | 汇总数据 26 个月,原始点击流 12 个月 | | Cutt.ly | 按创建的链接数计价,而不是按点击量 | 按套餐 30 到 730 天 | | BL.INK | 每条链接的点击上限,7,500 到 60,000 | 未公开 | | Switchy | 按档位分配点击额度 | 未公开 | | LinkProfit | 按套餐每月 100,000 到 2,000,000 次跟踪点击 | 最长 24 个月,每条链接的累计数永久保留 |
Rebrandly 的模式是签约之前最该弄明白的那一个,因为它最不符合直觉:跳转不限量,而数据分析按量计费,于是在入门档位上,一条链接在记录满 100 个事件之后照常工作,只是不再报告数据。如果你正在权衡这笔取舍,我们的Rebrandly 替代方案对比逐档位列出了细节。
这个原则可以推广。要问的是触到天花板之后会发生什么,而不是天花板本身是多少。跳转照常工作、衡量停止,是一种站得住脚的设计,前提是你被明确告知;而悄无声息地停止衡量,正是一个季度的营销活动数据消失、直到复盘时才有人发现的原因。
会毁掉本来不错的数据的那些陷阱
多级跳转链。 每多一跳,就多一次丢掉引荐来源、丢掉营销活动参数、增加延迟的机会。把链接直接指向最终目标地址,并且在你从别人手里接手链接时验证整条链路。
参数在跳转中丢失。 如果目标站点剥掉或覆盖了营销活动参数,点击会被计数,会话却不会被归因。每场营销活动上线前端到端地测一条链接;这只要一分钟,却能抓住本文中代价最高的那个错误。
# The location header should carry every parameter you configured, in one hop
curl -sSI https://go.yourbrand.com/spring | grep -i -E 'HTTP/|location'
拿本来就不可比的数字互相比较。 短链接服务的点击量和分析平台的会话衡量的是不同的事件。把两者的比值作为健康信号长期跟踪,别再试图让它们精确对齐。
时区漂移。 事件以 UTC 记录,报表却按工作区所在时区展示。两个人在不同时区里比较每日数字,只要这项设置不明确,就会永远对不上。
把预览和健康检查也算进去。 预览爬虫和监测请求会抬高那些被频繁检查的链接的计数。过滤能处理掉其中大部分;如果你自己在监测自己的链接,把监测程序排除在外。
重复使用 slug。 把一个 slug 回收给新的营销活动使用,会把两段历史永久合并在一起。改用归档,并让旧 slug 继续解析。
一套经得起考验的配置
- 每一场营销活动都通过带品牌的短链接发布,这样对于你无法控制的渠道,也存在跳转侧的数据。
- 一致地给每一个目标地址打标记,用工具生成,而不是手工敲。
- 把跳转链路控制在一跳,并在发布前验证它。
- 保持机器人过滤默认开启,当有什么看起来反常时再去查看被排除的流量。
- 凡是独立访客出现在报表里的地方,都把它标注为每日指标。
- 按你将来会想做的最长跨度的对比来核对保留期,而不是按当前这个季度。
- 每场营销活动与目标站点那一侧核对一次,遇到大的差距去调查,而不是用平均值把它抹平。
- 当看板回答不了问题时,通过 API 导出或查询原始数据。
这个领域里的多数衡量问题不是分析问题,而是管道问题:一个丢失的参数、多出来的一跳、一个没被过滤的扫描器、一个比问题本身还短的保留期。把管道修好,数字就变得平淡无奇——而这正是你对它们的期望。
LinkProfit 为每一次点击记录十几个维度,默认过滤自动化流量,在不存储网络地址的前提下推导独立访客,数据最长保留 24 个月,而每条链接的累计数永远不会归零。完整的看板见数据分析,或者用免费的点击计数器查看任意一条开启了公开统计页面的链接。
大家常问的问题
为什么短链接服务的点击量和我的网站分析数据永远对不上?
它们在不同的位置衡量不同的事件,因此完全吻合反而可疑。跳转会统计每一个到达它的请求,其中也包括一部分自动化流量。网站分析只统计页面已加载且脚本已执行的会话,于是排除了在页面加载完成前就离开的人、装了拦截插件或禁用脚本的人,以及任何一次丢掉营销活动参数的跳转。相差百分之十到三十是正常的。相差百分之八十说明某个环节坏了,通常是一条多级跳转链,或者一个丢失的参数。
一次点击事件到底记录了什么?
在跳转发生的那一刻,引擎能看到时间戳、涉及的链接与域名、目标地址、由网络地址推导出的国家、地区与城市、设备类型、从 user agent 解析出的浏览器与操作系统及其版本号、对方发送了引荐来源时的引荐域名、浏览器语言,以及 URL 上携带的任何营销活动参数。它看不到这个人是谁、他有没有读目标页面上的任何内容,也看不到他之后做了什么。
在不存储 IP 地址的前提下,独立访客是怎么统计的?
靠哈希,而不是靠存储。LinkProfit 把网络地址、user agent、域名和一份每天轮换的 salt 组合起来推导出访客标识符,然后只保留这个哈希值。地址本身从不写入数据分析存储,而且由于 salt 每天变化,哈希值无法跨天关联。诚实的后果是:这个指标是每日独立访客——跨多天的数字是各天独立访客之和,而不是该时间段内不同人数的真实计数,报表里也应当这样标注。
机器人会虚增点击量吗?它们是怎么被剔除的?
会,而且在发布后的最初几分钟里有时相当夸张,因为即时通讯和邮件平台会在投递时扫描链接。过滤把网络层的机器人评分与 user agent 启发式规则结合起来,社交预览爬虫则直接被返回预览标记,根本不计入点击。机器人事件仍然应该被存储,只是默认排除在报表之外,这样反常的模式可以被查看,而不是凭空消失。如果计数在任何人类可能看到这条链接之前就跳涨,那是未经过滤的自动化流量最明显的症状。
点击数据应该保留多久?
长到足以把一场营销活动与去年的同一场活动做对比,实际操作中意味着至少十二个月,最好是二十四个月。保留期是这个品类里最常被埋起来的那条限制。截至 2026 年 8 月,Short.io 的汇总数据保留 26 个月、原始点击流保留一年,Cutt.ly 按套餐从 30 天到 730 天不等,BL.INK 和 Switchy 则根本没有公开保留期。LinkProfit 在较高套餐上最长保留 24 个月,并且每条链接的累计数永久保留,因此链接的历史总点击量永远不会归零。
我能看到不属于自己的链接的点击量吗?
只有在它的所有者公开了统计数据时才行。有几家平台提供逐条链接自行开启的公开统计页面,展示的是聚合计数,不含任何个人数据。我们的点击计数器工具会在这样的公开页面存在时读取它。如果某条链接没有开启公开统计,它的计数就是私有的;任何声称能揭示任意链接计数的服务,要么是在猜,要么描述的是一个会泄漏数据的平台。