归因是广告业务里”规则感”最强的部分:同一次转化,谁来记功、记多少功、多长时间内记功——每一层都是口径,换任何一层,所有渠道的 ROI 都要重算。把它当日志里的一个字段处理,是数据事故的常见起点。
总纲:归因三层拆解
归因 = 把"转化"的功劳分配给"触点"的规则系统
= 分配规则(功劳给谁) × 匹配机制(怎么认定是同一人) × 窗口口径(多长时间内算)
狭义的”归因方式”指分配规则,但做语义层要把三层都建成可配置、可版本化的规则实体。
1. 分配规则全景
1.1 单触点归因(功劳给一个触点)
| 方式 | 规则 | 现状/坑 |
|---|---|---|
| Last Click 最后点击 | 窗口内最后一次点击独得功劳 | 行业主流默认:简单、可审计、渠道博弈空间小。缺点:系统性高估末端渠道(优惠券站/品牌词”截和”),首次触点永远是 0 |
| Last Touch 最后触点 | 最后一个触点(含曝光,VTA 可压过更早的点击) | 与 Last Click 的差 = VTA 的账;“浏览偷功”争议现场 |
| First Click 首次 | 第一次触点独得 | 少见;适合获客来源分析,不适合效果优化 |
1.2 多触点归因 MTA(功劳分给多个触点)
| 方式 | 分配规则 | 备注 |
|---|---|---|
| 线性 Linear | 全部触点均分 | 最简单的基线 |
| 时间衰减 Time Decay | 越靠近转化权重越大(指数衰减,半衰期常取 1d/7d) | 最贴近投放直觉,实操常用 |
| 位置 Positional | U 型:首末各 40%、中间均分 20%;Z 型等变体 | 兼顾”开渠道”与”关单” |
| 数据驱动 DDA | 按每个触点对转化的边际贡献分配——Shapley 值/Markov 链消去法/生存模型 | Google/Meta 平台内已默认(GA4 默认数据驱动);需要大流量+全触点数据——渠道外做不了,因为数据不在你手里 |
1.3 增量归因(不分配功劳,测真增量)
| 方式 | 机制 | 备注 |
|---|---|---|
| 转化提升实验 Lift Test | 留出对照组不投放,实验组/对照组转化差 = 真增量 | 金标准,但贵且慢 |
| MMM 营销组合模型 | 宏观层面回归(各渠道投放量→销量),不落到个人 | 隐私时代的回潮;时序回归+节日效应,与预测系统同族 |
一条天花板级认知:MTA 分配的是”相关功劳”(谁在场),增量归因测的是”因果功劳”(谁起作用)——两者可以得出相反结论。预算裁到”MTA 分高但增量为零”的渠道,就是这套认知的落地。
1.4 特殊生态归因(隐私框架,移动端新常态)
| 方式 | 机制 | 坑 |
|---|---|---|
| SKAN/AdAttributionKit(iOS) | 无用户级 ID,延迟 24-48h 聚合回传;Conversion Value 只有 6 bit(64 格),要自己做编码方案 | 用户级归因没了→pCVR 模型、LTV、频控全受牵连;iOS 计划学习期更长 |
| Privacy Sandbox Attribution Reporting API(Android/Chrome) | 事件级报告(加噪声、限频)+ 汇总报告两档 | 同方向:拿细粒度换隐私 |
| Install Referrer | Google Play 安装来源参数 | 确定性但只覆盖”安装”这一跳 |
2. 匹配机制(归因的技术实现)
| 机制 | 做法 | 现状 |
|---|---|---|
| 确定性归因 | 设备 ID 精确匹配(IDFA/OAID/CAID/IMEI;Web 侧 cookie/邮箱哈希) | 精确但覆盖率随隐私收紧持续下降(ATT 同意率约 25-30%) |
| 概率归因 | 指纹(IP+UA+机型+时间窗)或点击→安装的时空匹配 | 精度 80-90% 但合规风险高(GDPR/个保法),主流 MMP 已陆续下架 |
| S2S 回传 | 归因结果 server-to-server 回传 | 幂等键防重复回传 |
3. 窗口口径(归因方式的另一半)
- 行业默认:点击 7d、曝光 1d(可配 1/7/14/30d);
- 窗口 × 模型是矩阵:Last Click@7d ≠ Last Click@30d ≠ Time Decay@7d——三个自由度,一个没声明就是口径事故;
- 窗口一变历史全变(重述问题):换窗口 = MetricDef major 版本,历史从事实层重算,对外报表标注口径版本;
- 触点类型口径:CTA(点击归因)vs VTA(浏览归因)——VTA 是品牌预算的账;效果广告主常关掉 VTA,开了就必须在口径里显式声明,否则就是同名不同义。
4. 行业现场:谁在做归因
| 角色 | 代表 | 立场 |
|---|---|---|
| MMP 第三方移动归因 | AppsFlyer / Adjust / Branch | 中立裁判,广告主侧出钱 |
| 自归因平台 SRP | Google / Meta / 巨量引擎 / 腾讯广告 | 既当运动员又当裁判:各归各的功 |
| 平台内归因 | SSP/DSP 自建 | SSP 侧做归因回传(供数方),DSP 侧接 MMP+过 SKAN(消费方) |
| 监测归因 | 秒针/AdMaster(Web 时代) | 对账的另一端 |
一个经典现象:广告主在 A、B 两个 SRP 都投放,两边声称的转化加起来 120%——因为各家都用对自己有利的归因口径(都抢 Last Click)。解法三层:
- 操作层:MMP 统一归因;
- 方法层:数据驱动 + 增量实验仲裁;
- 语义层:同题多口径——归因口径作为维度进 MetricDef。120% 不是错误,是”不同口径下的真话”——治理它,而不是消灭它。
答出第三层,就是语义层的价值所在:口径打架的终点不是选一个”标准答案”,而是让每个数字都带着自己的口径声明可查、可比、可仲裁。
5. 归因 → 本体落点
| 构件 | 落点 | 说明 |
|---|---|---|
| 归因方式 | AttributionModel 枚举类/策略对象,带参数(半衰期/位置权重/是否含 VTA) | Campaign/渠道层级可配,默认值沿层级继承 |
| 窗口 | Campaign 属性(clickWindowDays/viewWindowDays)+ 值域公理 | 变更 = major 版本 |
| 匹配机制 | 归因边的 matchType/confidence 属性(deterministic/probabilistic) | 确定性边与概率边可区分、可过滤 |
| 归因关系 | 图的核心边:(Conversion)-[:ATTRIBUTED_TO {method, window, weight, ts}]->(Touchpoint) | 一次转化可有多条触点边;主归因边基数公理:每种口径下有且仅有一条 |
| 事实 vs 派生 | 原始触点日志 = 不可变事实层;归因结果 = 派生层 | 换归因模型 = 从事实层重放,不是改历史 |
| 语义层消歧 | “A 渠道转化数”必须消歧:哪种归因方式 × 哪个窗口 × CTA 还是含 VTA | 归因口径是指标的隐含维度——不进语义层就是同名不同义事故 |
收成一句话:**归因是规则实体,不是日志字段——规则改了,指标要可重算。**本体的设计因此是:触点事实层不可变、归因结果做派生层、AttributionModel 做版本化策略对象。换模型、换窗口都是重放,不是改数——“逻辑一份、物理多份”在归因场景的又一次落地。
系列:六域×四型规则目录 · 六层漏斗指标体系 · RDF/OWL 还是属性图