人群包穿透 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 完好,包内分组可继续作对照。

五、统计 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;

六、口径声明