人群包穿透 AT 服务 · 效果数据(金标准版)

人群包 100000414 · 商家关闭 AT 弹窗时强制穿透弹出 · 上线 2026-06-02 · 06-18 扩量
金标准口径 = 同商家·按天交集 + 单元格级 · 对照 = AT Popup Lever Off In Package(06-16 起取 0021 日志)· 更新于 2026-06-23

结论:穿透真实提升点击率 +8~14pp,下单率持平;扩量 12.7× 参与度无退化

注:历史报告出现过的 +6.9pp(144 同商家·UV·污染对照)与 +28pp(AT-off 全集·UV)均非真实效应,原因见二节口径演进对比,已被金标准取代。

一、整体效果(金标准 · 同商家按天交集 · 单元格级)最终口径

1.1 规模 / 人数

阶段人群包(abtest 1/2)实验组(穿透曝光UV)对照组(真 holdout UV)
扩量前 06-06~133,356
1693 / 1663
825497
扩量后 06-19~2142,515
21317 / 21198 · 12.7×
3,7732,804

✅ 扩量后实验 3,773 / 对照 2,804 同量级,holdout 比例正常(此前误记对照仅 730,是查了 06-16 迁移前的旧日志表,见四节)。

1.2 Service Click Rate(单元格级:点击单元格 ÷ 曝光单元格,单元格=用户×商家×天)

阶段实验组对照组差异
扩量前 06-06~1332.8%
219 / 667 单元格
24.4%
107 / 438
+8.4pp
扩量后 06-19~2136.5%
1783 / 4881 单元格
22.9%
856 / 3745
+13.6pp

同一严口径下,穿透 lift 扩量后不降反升(+8.4pp → +13.6pp),证明扩量纳入的中长尾用户参与度同样高、无稀释。

1.3 SP Order Rate(有订单UV ÷ SP池用户UV,限同商家交集)

阶段实验组对照组差异
扩量前 06-06~13(订单已熟)27.0%
30 / 111
27.0%
17 / 63
0pp 持平
扩量后 06-19~21(未成熟)22.7%
121 / 534
20.2%
79 / 391
+2.5pp ⚠️未成熟

两段 SP 下单率基本持平(前 0pp 订单已熟,后 +2.5pp 订单 T+4 未成熟,06-21 仅 ~13%)。~06-25 成熟后才是收入定论。

1.4 实验组穿透漏斗(扩量后 06-19~21)

穿透曝光 4,051 → 点击 2,750(CTR 67.9%)→ 测券 3,042(75%)→ 成功 1,104(36%)→ 卸载 5(0.12%)。穿透 CTR/测券/成功/卸载均与核心组一致。

整体读数:上线至今(含扩量),同商家·按天严口径下穿透带来 +8~14pp 的 Service Click Rate 提升(扩量后略升),SP 下单率持平——即"把点击做上去了,下单没掉也没明显增"。净增订单/收入待 06-25 订单成熟后定论。

二、口径演进与对比(保留 +6pp / +28pp 供对照)为什么数字变过

同一份穿透数据,因"商家集合 + 点击率分母口径"不同,曾得出 +6.9pp、+14pp、+28pp 等差异极大的结果。下表以扩量前 06-06~13 为例,把所有历史口径与金标准并列,解释每个数的来历与问题。

口径(PRE 06-06~13)实验对照差异问题 / 结论
① 144 同商家 · UV · 老污染对照
最早一版
74.3%
388/522
67.4%
481/714
+6.9pp已废弃 对照混入"也穿透了"的污染用户,点击率虚高 → lift 被低估
② 144 同商家 · UV · 干净对照74.3%
388/522
60.3%
249/413
+14.0pp去污染后;但 UV 级 + 仅 144 商家仍非严口径
③ AT-off 全集 · UV · 干净对照
中间一版(曾作主结论)
84.7%
695/821
55.9%
217/388
+28.8pp已废弃 ⚠️ 测量假象:UV 分子/分母各自去重,商家集合越大越放大
④ AT-off 全集 · 单元格级39.7%
1478/3724
26.4%
397/1506
+13.3pp去 UV 假象,但仍含两臂商家结构差异
⑤ 同商家交集 · UV 级43.3%
164/379
36.4%
83/228
+6.9pp同商家了,但 UV 跨天泄漏使绝对值偏低
⑥ 同商家交集 · 单元格级
金标准
32.8%
219/667
24.4%
107/438
+8.4pp✅ 两臂同商家天、按曝光机会算,对集合不敏感
+28pp 是怎么来的(核心解释):UV 级"点击率"的分子 = "在集合内任意商家点过的去重用户数",分母 = "在任意商家曝光过的去重用户数",两者各自独立去重。商家集合越大,实验组"在任意一家点过"就越接近 100%,而对照组只在自己实际逛过的少数商家上计算 → 人为拉大差距。换成单元格级(每个 用户×商家×天 曝光机会算一次点击),分子严格嵌套于分母、对集合不敏感,假象即消除。
+6.9pp(最早)则是另一个问题:商家只取 144 交集 + 对照含污染用户,方向对但口径不干净。
真实效应 = +8~14pp。
扩量后 06-19~21 的口径对照(同样规律)
口径(POST)实验对照差异
AT-off 全集 · UV(旧主结论)58.3% (3593/6158)30.3% (1034/3412)+28.0pp 假象
同商家交集 · 单元格级(金标准)36.5% (1783/4881)22.9% (856/3745)+13.6pp

三、字段与计算逻辑

对象口径
实验组穿透曝光:impresstype='AT'+scene='Popup'+at_high_value_package_user='true'+style='6.30.10-2'+lever.at_popup='Off'(版本≥6.30.10)
对照组06-16 起取自 0021 日志 v_dwd_log_parse_event_analytics_log_dievent='not_impression'+business='1'+scene='Popup'+reason='AT Popup Lever Off In Package'(包内对照标识,不用 join 包)。06-16 前在旧表 impress_other_log
Service Click Rate
金标准
单元格级:分母 = impress_kpis 落在交集(商家×天)的去重 用户×商家×天 单元格数;分子 = click_kpis 同口径单元格数。分子严格嵌套分母,对商家集合不敏感、天然按天。含全服务 AT/CB/PCP/XF/CC。
❌ 旧 UV 级(点过任意商家÷曝光任意商家)在大集合上虚高,已弃用。
同商家·按天交集当天既有穿透曝光、又有 holdout 对照在场的"商家×天":穿透 impress(lever off) 的 (domain,pt) 对照 notshow 的 (domain,pt)。两臂同场,消除商家结构差异。
SP Order Rate (%SP)journey SP 池:有订单(cp_order_ids)UV ÷ SP用户UV(aff_id>0 AND cps_score>40),限同商家交集 (domain,pt)。
按天开关处理AT lever 可逐日变化。商家集合全程按 domain×pt(商家×天)粒度,信号逐条事件按天读取 → 某商家只关部分天就只计入关闭那几天,开着的天自动排除。无遗漏。
版本过滤三段式数值键 major×1e6+minor×1e3+patch ≥ 6030010(≥6.30.10)。⚠️ 字符串比较会错(6.30.9 > 6.30.69 字典序)

四、06-16 不曝光日志迁移 + holdout 澄清

扩量口径:第一版基础上放开 L2(7d→14d)+L3(<0.40→<0.50)+去 L4,保留 L1≥5、type='AT' 不限 scene。穿透曝光 06-17 194/天 → 06-19 1,661/天(8.5×)。

✅ 已修正的误判:此前曾判断"扩量后 AB holdout 失效(abtest=1 也穿透)",结论错误。根因:2026-06-16 不曝光日志从旧表 impress_other_log 迁移到 0021 日志 event_analytics,我当时仍查旧表 → 旧表 06-16 后不再落对照数据,对照只剩 730 人、点击率虚高,被误读为"对照也穿透"。换正确 0021 表后对照恢复 2,804(与实验 3,773 同量级),holdout 完好,包内分组可继续作对照。

五、增量订单与收入回收(两套口径对比)核心

同一问题有两种答法,结论很不一样:A 时间 PRE/POST回答"该范围 6 月比 5 月多赚多少"(含季节性+扩量,非纯因果);B holdout DiD回答"纯穿透本身带来多少"(实验 vs 对照同期,季节性/扩量抵消,纯因果)。

5.1 口径 A:时间 PRE/POST 范围增量(影响范围 6 月 vs 5 月)

范围 = 穿透实验用户 × AT-off 商家;PRE 05-03~23 vs POST 06-03~23(各 21 天,06-24 未 ETL 剔除);佣金 = journey cp_commission
支撑:PRE 854 单/$568.4 → POST 1,534 单/$1,889.7。

指标算法
① 日均增量订单+32.4 单/天(1534−854)/21
② 累计增量订单+680 单1534−854
③ 实际累计日均佣金(整体净)+$62.9/天1321.3/21
④ 实际累计佣金(整体净,含正负)+$1,321.31889.7−568.4;正向+1635 与负向−314 相抵
⑤ 实际增量日均佣金(仅正向商家)+$77.9/天1635.2/21
⑥ 实际增量佣金(仅正向 domain+country)+$1,635.2Σ max(0, POST−PRE) 各商家

⚠️ 这 +$1,321 大部分来自 06-18 扩量(更多用户进范围)+ 季节性,不是穿透本身的功劳

5.2 口径 B:纯穿透 holdout DiD(实验 vs 对照,干净窗口 06-19~21)

实验组(穿透) 3,773 人 vs 对照组(holdout,In Package 未弹) 2,804 人,同期、同 AT 用户群,季节性/扩量两组同等作用相减抵消。

实验组 B对照组 A纯增量(人均→×3773)
订单862459
Coupert 佣金$1,130.9$1,059.0
人均订单0.22850.1637+0.065(+39.6%)→ +245 单/3天 ≈ +82 单/天
人均佣金$0.300$0.378−$0.078(−20.6%)→ −$294/3天 ≈ −$98/天 ⚠️
单均佣金$1.31$2.31穿透多出的是低佣金 AT 单
两套口径的关键结论
佣金 DiD 的可靠性限制:① 佣金方差大(对照 06-19 单天 $760 含大额非 AT 订单 = outlier),3 天窗口不足以稳定估佣金;② 受 120s 网关限制,无法只筛 AT-off 商家上的 AT 订单,退到全站口径 → 混入与穿透无关的 CB 大单噪声;③ 订单 T+4 未成熟。订单增量结论稳,佣金增量数值不稳。下面口径 C 用 AT 单 + 基线 0 直接定论。

5.3 口径 C:AT 增量(基线 0 · 本需求最贴合口径)推荐

需求本质 = 在 AT-off 商家给特定人群强开 AT。这些商家 AT 本来是关的 → 这批用户在被冲破商家上的 AT 订单反事实 = 0 → 全部是增量,不需 PRE/POST 或 holdout 减法。口径 = 订单表 is_at_order=1,穿透用户 × 被冲破 (domain,country),POST 06-03~23(21 天)。
支撑:598 AT 单 / $514.83 AT 佣金。

指标算法
① 日均增量订单+28.5 单/天598/21
② 累计增量订单+598 单POST AT 单合计
③ 实际累计日均佣金+$24.5/天514.83/21
④ 实际累计佣金+$514.8POST AT 佣金合计
⑤ 实际增量日均佣金(仅正向)+$24.5/天=③(基线 0 无负向商家)
⑥ 实际增量佣金(仅正向)+$514.8=④(基线 0 无负向商家)

⑤⑥ = ③④:基线为 0、无 PRE 相减 → 不存在"收入下降的 domain+country",每个被冲破商家的 AT 收入都是纯增量,正向口径与整体口径相同。

5.4 三套口径对比

口径增量订单增量佣金含义 / 评价
A 时间 PRE/POST(范围 6月vs5月)+680+$1,321含扩量+季节性,高估
B holdout DiD(vs 对照)+82/天−$98/天 ⚠️纯穿透,但全站佣金被 CB 大单噪声污染
C AT 基线0(推荐)+598 / +28.5/天+$514.8 / +$24.5/天被冲破商家上的 AT 单,反事实 0,最贴合需求本质
定论:口径 C 最贴合"开原本关闭的 AT 服务"——直接回答"开 AT 多赚了多少 AT 佣金":+598 AT 单 / +$514.8 AT 佣金(21 天)。订单方向与 holdout 一致(AT 单实打实增加),且避开 holdout 全站佣金的 CB 噪声。AT 单均佣金仅 $0.86,印证"穿透带来的多是低佣金 AT 单"。
⚠️ 口径 C caveat:① AT-off 指 AT 弹窗 lever 关,AT 服务经 icon 仍可能产生极少量 AT 单 → 严格"纯弹窗增量"略低于此(占比小);② 06-21~23 订单 T+4 未成熟 → $514.8 是地板价,06-27 后会更高。

六、统计 SQL

① 实验组(穿透曝光)
SELECT DISTINCT guid FROM v_dwd_log_parse_extension_service_impress_di
WHERE pt BETWEEN <start> AND <end> AND type='AT' AND scene='Popup'
  AND get_json_object(extra,'$.at_high_value_package_user')='true'
  AND get_json_object(extra,'$.at_high_value_package_user_style')='6.30.10-2'
  AND get_json_object(extra,'$.lever.at_popup')='Off'
  AND (CAST(split_part(version,'.',1) AS INT)*1000000+CAST(split_part(version,'.',2) AS INT)*1000+CAST(split_part(version,'.',3) AS INT))>=6030010;
② 对照组(0021 日志 · In Package 标识)
-- 06-16 起:不曝光日志已迁移到 0021 日志
SELECT DISTINCT client_id AS guid FROM v_dwd_log_parse_event_analytics_log_di
WHERE pt BETWEEN <start> AND <end>
  AND event='not_impression' AND business='1' AND scene='Popup'
  AND get_json_object(properties,'$.reason')='AT Popup Lever Off In Package';
③ 同商家·按天交集(穿透 ∩ 对照 的 domain×pt)
SELECT bt.domain, bt.pt FROM
 (SELECT DISTINCT domain,pt FROM impress  WHERE 穿透条件①)        bt
 INNER JOIN
 (SELECT DISTINCT domain,pt FROM event_analytics WHERE In Package②) ct
 ON bt.domain=ct.domain AND bt.pt=ct.pt;   -- = 交集 atoff
④ Service Click Rate(单元格级 · 金标准)
-- 单元格 = 用户×商家×天;分子严格嵌套分母,对集合不敏感
分母 = SELECT COUNT(DISTINCT CONCAT(guid,'|',domain,'|',CAST(impress_date AS CHAR)))
       FROM impress_kpis JOIN 队列guid JOIN 交集atoff(domain,pt)
分子 = 同上换 click_kpis(domain, click_date)
Service Click Rate = 分子 / 分母
⑤ SP Order Rate(journey SP 池 · 限交集)
SELECT COUNT(DISTINCT CASE WHEN array_length(cp_order_ids)>0 THEN guid END)*1.0
       / COUNT(DISTINCT guid)
FROM dws_log_sp_user_shopping_journey_detail_di
WHERE pt BETWEEN <start> AND <end> AND aff_id>0 AND cps_score>40
  AND (guid IN 队列) AND (domain,pt) IN 交集atoff;

七、口径声明