问题修复
在投放前设计可证伪的广告创意测试计划(含样本量、预算…
当需要测试广告创意、做 A/B 或拆分测试、估算测试所需预算/时长/样本量,或决定单变量隔离还是打包大改时,用它在花钱之前产出一份可直接执行的测试计划文档。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 49/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
在投放前设计可证伪的广告创意测试计划(含通用
解决思路
- 先做访谈再设计:逐个消息提问(能多选就给选项,已答或数据中可见的跳过,缺答案就停下来问,绝不假设)。需问清:这个测试要支撑什么决策;平台类别与投放目标(转化/线索/流量);月度或计划测试预算及其是否与扩量预算隔离;当前 CPA 或 CPL 以及判定环节的转化率;该事件账户级月转化量;B2B 还是 B2C 及销售周期长度;已有或可产出的创意素材数量与交付周期;已测过什么及结果;是否开启了自动化/AI 创意优化功能;是否有当前冠军创意可作对照;必须出结论的日期及是否为硬性;想要一次性赢家立刻扩量,还是可跨测试复用的元素级学习;精力上限(谁盯账户、多久看一次、有多少不需请示的预算权限);是否有同意、披露、功效宣称或受监管品类(健康、金融、就业、住房、未成年人、证言或 AI 生成肖像披露)的限制。
- 把决策写成一句话:『基于这次测试,我们将___。』填不出空格就停下重新设计。
- 用模板写可证伪假设,三部分缺一不可:『因为[观察或证据],改变[本测试唯一变动的那个东西],将使[指定指标]对[受众]上升/下降约[幅度],我们将在[日期/样本]前知道结果。』拒绝没有预测方向和幅度的假设(如『看看会怎样』),也拒绝在测试窗口内无法测量的指标;B2B 中诚实的幅度常落在代理指标(合格线索率)上,因为收入事件滞后一个销售周期,要在假设中说明。
- 明确说出隔离层级的选择顺序(避免按行序默认):效率(每单位花费与日历换来的可迁移学习)为 打包概念 > 分层 > 严格单变量;读数落地时的价值为 严格单变量 > 分层 > 打包;读数前消耗的花费与日历为 严格单变量 > 分层 > 打包。
- 三种姿态按上述默认顺序呈现:1)概念级『大改』(打包测试,同时改信息与执行)——在正常预算下能买到更大、可检测的效应,并喂给投放算法它奖励的创意多样性;代价是失去元素级学习,打包的赢家只能说概念赢了、永远说不出为什么,在计划中标注为 `bundled - unlearnable at element level`,防止日后从中挖出假的元素级洞察。2)分层——先用打包单元验证角度,再在获胜角度内隔离钩子或形式;能买到两种读数但需两个测试窗口,需要前两种姿态不需要的量和日历。3)严格单变量隔离(古典派)——只改一个元素、其余全部固定;只有干净的隔离才产生可迁移的元素级学习,但正常预算下单元素效应通常小到测不出,测试会白烧钱,只有在第 4 节可行性检查显示该单元能在该杠杆的自然指标上至少达到 Directional 读数时才运行,低于此标准隔离就是表演。
- 说明打包优先的原因:它是正常预算下唯一能可靠产生可检测效应的姿态;严格隔离单次回报更高,但前提是测试本身能分辨出结果。
- 指出该顺序会永久饿死严格单变量隔离(价值第一、效率最后,比例永远不会选它,账户积累不到任何可迁移的元素级学习),因此要按具名条件主动提升它:第 4 节可行性检查在该杠杆自身的 MDE 上返回 Powered,且访谈回答的是『复利式学习』而非『现在就要一个可扩量的赢家』;第三个触发条件是角度已定——一旦打包单元反复加冕同一角度,剩下的唯一问题就是哪个元素承载它,而任何打包测试都答不了。
- 强调这是默认而非定律:它会随转化量和运营者变化,要按访谈答案重新排序并说明哪个答案推动了哪个姿态(近期硬性截止日期提升打包,精力上限宽裕且日历有余提升分层);再按账户重新排序(能支撑单元素读数的量,或能廉价产出匹配变体的创意团队,会把隔离往上提)。
- 把约束排除掉的姿态直接删除,而不是留在列表底部——留在底部的姿态会在上线前一周作为范围回来。没有创意产能产出仅差一个元素的变体,就从菜单中删除严格隔离并说明已删除,只在打包与分层之间设计;决策日期前只有一个测试窗口,同样删除分层。
- 无论哪种姿态胜出,只隔离高杠杆杠杆:概念、角度、钩子、形式、创作者/演员。拒绝在正常预算下烧钱隔离微观变量(按钮颜色、字体、细微文案)——把它们并入某个概念或直接放弃。这五个杠杆刻意不互相排名:其效应量因账户而异,且主要取决于账户已settled的内容,通用排序是虚假精确;改为按本账户自己的测试日志排名,未测过的跨度最宽的杠杆优先。
- 构建单元矩阵:1)对照单元——当前冠军创意,在同一结构、同一预算下并发运行;绝不用新单元对比冠军的历史数据,因为投放历史与季节性不同使旧数据不可比。2)每个单元一个概念,每单元 3-6 个素材(执行同一概念的变化);单元多于概念会分散预算,概念多于单元会污染读数。3)选择单元结构,按『每单位搭建成本买到的可比读数与让出的投放效率』排序:手动固定预算单元 > 平台原生确定性拆分 > 广告系列级自动分配。
- 手动固定预算单元(默认):每个单元持有自己的预算,因此单元之间保持可比;代价是略微损失整体投放效率,而这正是测试的目的。已知局限:手动单元仍在同一批重叠受众的同一竞价中相互竞争,抬高成本并模糊归因,要在计划中注明这一污染警告。
- 平台原生确定性拆分测试:唯一能消除重叠的平台内结构,用户被确定性地分配到恰好一个单元、永远看不到另一个;能买到最干净的读数,但出结论要多花一周或更久,且在典型预算下功效不足、经常返回『无赢家』。当决策要求这种读数且可行性检查显示单元可达 Powered 时使用;近期硬性截止日期会把它压回手动之下。
- 广告系列级自动预算分配:在所有维度上都排最后。几乎零精力,但会破坏读数:花费会流向早期领先者,可能在其它单元收集到数据前就把高达约 90% 的预算集中到一个单元。便宜不等于高效,这永远不是测试结构。
- 若账户已有可信的拆分测试流程,或无法在绩效团队的反对下保持固定预算,则重新排序。无论哪种结构胜出,都要在测试单元内关闭自动化创意优化功能,否则是平台而非计划决定哪些素材组合投放;即便确定性拆分也无法消除投放差异(见失败模式)。
- 变体命名约定:把决策字段编码进每个素材名,使结果可按维度汇总。固定字段顺序、单一分隔符、带版本,例如 `C04_ANG-timesaved_HOOK-question_FMT-ugc-video_TAL-creator-jm_V01`(概念 ID、角度、钩子类型、形式、演员、版本),按本账户测试的杠杆调整字段后绝不偏离;报表工具靠名称解析,命名失误会静默摧毁汇总。
- 可行性检查(上线前计算,计划的核心):对每个单元,在花钱之前——1)预测量:每单元每日事件数 = 每日单元预算 ÷ 每事件成本(转化:预算 ÷ CPA;点击:预算 ÷ CPC;曝光:预算 ÷ CPM × 1,000),乘以计划时长得到预测样本。2)主指标所需样本,每单元,80% 功效、alpha 0.05,两比例公式:`n per cell = ( 1.96 × sqrt(2 × p̄ × (1−p̄)) + 0.84 × sqrt(p1(1−p1) + p2(1−p2)) )² / (p2 − p1)²`,其中 p1 = 基线率,p2 = 基线 × (1 + 相对 MDE),p̄ = (p1+p2)/2;可用捷径 `n ≈ 16 × p̄(1−p̄) / MDE²`(MDE 为绝对值)。参考锚点:2% 基线、检测 50% 相对提升(2%→3%)每单元约需 3,800;MDE 减半约使 n 翻两番。3)所需花费与时长:所需花费 = 所需样本 × 每事件成本;所需时长 = 所需样本 ÷ 预测每日事件数;时长下限永远是一整周(覆盖星期几),上限是创意的新鲜窗口(约 4-6 周,之后新颖性衰减与疲劳污染读数)和决策截止日期。4)稳定投放约束:每周无法达到约 50 个优化事件的单元仍受投放限制,投放永不稳定,无论样本数学如何读数都不可靠;每单元最低日预算 ≈ 目标 CPA × 50 ÷ 7;低于该下限的单元为 `Not testable as designed`,用下方排序杠杆修复;脱离学习状态约值 5-10% 效率提升,该下限关乎读数有效性而非性能解锁。5)对比所需与可用,每单元只给出一个判定:Powered(在时长边界内,每单元预测事件数 ≥ 80% 功效、alpha 0.05 下的所需样本)→ 可声称经显著性检验的赢家;Directional read(边界内无法达到显著性)→ 仅作筛选启发式,按门槛指标和相对排名判断,声明为方向性,绝不作为『95% 置信度下的赢家』报告;Not testable as designed(不满足稳定投放,或即便宽 MDE 时长也超界)→ 什么都不可声称,用下方排序杠杆修复后重算。
- 修复 `Not testable as designed` 单元,按默认排序(四个杠杆不可互换):效率(每单位精力与让出的学习换回的功功效)为 把读数上移到漏斗上层 > 放宽 MDE > 减少单元 > 提高预算;精力为 提高预算(审批、政治资本、可逆性)> 把读数上移到漏斗上层(一次追踪检查和一个决策)> 减少单元 > 放宽 MDE(近乎零,只是一句声明);让出的学习为 放宽 MDE(只剩大效应可见)> 减少单元(一个问题退出)> 把读数上移到漏斗上层(业务事件变为 Directional)> 提高预算(无损失);合规成本为 把读数上移到漏斗上层 > 放宽 MDE == 减少单元 == 提高预算(均为无)——只有上移漏斗杠杆可能需要新事件或服务端数据流,从而在上线前牵出同意范围与隐私审查。这个三方并列是真实的等式而非回避:放宽 MDE、砍掉一个单元、提高预算各自只改变测试结构或其声明的阈值,都不收集新数据、都不触发审查。
- 上移漏斗优先,因为它无需向任何人要钱、也不从测试中砍掉问题,就能倍增事件数。按访谈答案重新排序:有受保护的测试预算且有余额和真实预算权限时,把『提高预算』提到最前;有硬性日期时把『放宽 MDE』上移。
- 把账户拉不动的杠杆直接删除而不是排到最后——没有预算权限也没有审批人,就按名称从菜单中删除『提高预算』;漏斗上层事件未验证或已损坏,就删除该杠杆,直到 `mbfinotti/advertising-skills@ad-conversion-tracking` 清除它。留在底部的杠杆会被默认算进计划数学里。
- 绝不把功效不足的测试静默呈现为 A/B 测试。Directional 单元是合法且常见的结果——正常预算下大多数创意测试都是筛选——但计划必须说出这个词。若把读数上移到漏斗上层(漏斗中更早、量更大的事件)使单元变为 Powered,则记录两种读数:漏斗上层事件上为 Powered,业务事件上为 Directional。
- 提前固定指标阶梯,上线前在计划中命名全部三层:1)门槛指标——廉价的上层漏斗信号(钩子率、CTR),仅用于早期廉价地杀掉明显输家;按版位做同类比较,因为版位组合会显著改变这些指标、足以加冕意外赢家;门槛只筛选,绝不加冕。2)主指标——唯一的决策指标。B2C:购买 CPA 或转化率;B2B:从 CRM 回传的管道质量事件(合格线索、商机),绝不用原始表单填写。3)护栏——主指标改善时不得恶化的指标:频次、相对账户基线的成本膨胀、退款/退货率、线索质量率、混合效率。
- 警告(承重):代理指标不能可靠预测转化。一项覆盖 147 万美元花费的多账户分析发现钩子率与收入之间没有统计显著相关性,且两个钩子率相同的广告可能因有多少观众存活到行动号召而在回报上相差数倍。高门槛 + 低转化通常意味着报价或落地页问题,而非创意赢家。
- 预注册决策规则,上线前写入计划(看到数据后再改正是本计划要防止的失败):1)每个素材和每个单元的杀停阈值——花费或绩效达到某水平即死。2)扩量阈值——赢家必须展示什么,以及接下来发生什么(预算增幅、晋升路径)。3)迭代路径——什么有资格重测而非杀停或扩量。4)最早评估时点——在此之前不做判断(第 3 天加最低量下限是常见锚点;延迟归因使更早的读数系统性偏悲观)。5)固定停止规则——日期或样本量,先到者为准,外加预先声明的无结论路径:无赢家则保留对照,现在就定,而不是读数时再定。6)偷看是被点名的失败:提前查看结果并在有利数字上停止会抬高假阳性;停止规则的存在就是为了让人不必实时抵抗诱惑。
- 只采用下列锚点中的恰好一个。它们刻意互相矛盾——Faris 禁止 Denney 规定的手动杀停,Hott 拒绝两者都用的按广告 CPA 规则——混用两个会产生永不触发或触发两次的规则。每个锚点在做出决策前烧掉的测试花费也大不相同,因此这是效率决策而非口味决策。效率(每单位测试花费烧掉换来的决策质量):Hott 比较基准 > Denney 数值默认 > CTC 花费阈值 > Bachman 3-4x > Faris 不手动杀停;决策前烧掉的测试花费:Faris > Bachman > Hott > CTC > Denney;持续运营精力:Hott(常设工作——维护最佳广告基准并据此判断)> Faris(搭建可信成本上限结构,之后近乎零)> Denney == CTC == Bachman(检查一次的阈值);出结论时间:Faris > Hott > CTC > Bachman > Denney。持续精力上的三方并列是真实的:Denney、CTC、Bachman 各自都归结为每个素材检查一次的一个数字,无需维护库、无需保持比较基准集最新、无需先赢得对结构的信任。
- Hott 在效率轴上是有条件领先,因此默认档位是 Denney 的集合;把你提升到 Hott 的是库加上每周审阅人,而不是更大的预算。这是默认而非定律——它随账户成熟度和谁盯账户而变;按访谈答案重新排序并说明哪个答案推动了哪个锚点。然后按名称删除答案排除的锚点,而不是把它列为以后可选项:硬性日期或复利学习指令删除 Faris,没有每周审阅人的精力上限删除 Hott。留在页面上的锚点会被半途采用,而这正是本节禁止的混用。
- 各锚点按该效率顺序及其生效所需(完整出处见 references/sizing-reference.md):Barry Hott——明确拒绝机械的按广告 CPA 杀停规则(『广告级 CPA 和 ROAS 无关』),在受控固定预算结构内用账户最佳广告做比较基准来评判新广告;需要带标签的最佳广告库和每周判断的人,两者缺一即不可用,而不只是昂贵。Dara Denney——不需要账户尚未拥有的任何东西,这正是它成为默认的原因:测试预算 ≈ 平均 CPA × 50;每次测试约 6 个素材;第 3 天前不评估;素材在 2× CPA 花费且无转化时杀停;单元在 5-7 天无赢家后杀停;赢家扩量 +50-100%,做 2-3 次。Common Thread Collective——按花费阈值而非时间杀停:花费 500-1,000 美元仍无激活即杀;预留 10-15% 测试预算给长跑道广告;在投放多变的账户上按花费优于按时间,代价是每次决策的花费区间比 Denney 更宽。Jess Bachman——在评判新创意前至少花 3-4× CPA;在高方差创意上减少误杀,代价直接体现在每次决策的测试花费上。Andrew Faris——无手动杀停规则:在成本控制下把广告投进常青结构,让平台执行 CPA 上限;『永不』手动暂停;结构可信后持续人力近乎零,但出结论最晚,且返回组合结果、没有元素级读数。标记为民间传说——广为流传的『判断前花 1× CPA / 杀停前花 3× CPA』规则没有可追溯的提出者,在机构博客中流传且无人署名;绝不把它们当作权威呈现,也绝不让其中一条替代上述锚点。
- 产出计划文档,每个计划一个块、每个单元一行,迭代直到通过完成标准:`CREATIVE TEST PLAN - <name>, <date>` / `decision : <what changes based on the result>` / `hypothesis : <because X, changing Y will move METRIC by ~Z% for AUDIENCE by DATE>` / `isolation : <single variable: which lever | bundled - unlearnable at element level>` / `structure : <N test cells + control | manual fixed-budget cells or native split test; automated creative-optimization: off>` / `metrics : gate <metric + like-for-like rule> | primary <metric> | guardrails <list>` / `cells : <name per convention> | <concept> | $<x>/day | <assets> assets projected <n>/wk | required n=<n>, $<spend>, <days>d VERDICT: Powered | Directional read | Not testable as designed kill: <threshold> | scale: <threshold> | iterate: <path>` / `schedule : launch <date> | earliest evaluation <date> | hard stop <date or sample> | inconclusive -> keep control` / `naming : <convention string>` / `caveats : <auction overlap noted | divergent-delivery limits of the read | B2B lag>`。完整示例(含数学计算的 B2C 计划、默认 Directional 的 B2B 计划、一个反面示例)见 references/example-test-plan.md。
- 若运行环境有持久记忆,把已交付的计划(单元、判定、预注册阈值、停止日期)记下来,以便上线后的读数能对照预注册而非记忆版本核查。
- 完成标准:只有当每个单元都明确陈述(而非暗示)以下内容时计划才算完成——声明的读数标准(Powered、Directional read 或 Not testable as designed);计算出的所需样本、所需花费、所需时长;预注册的杀停阈值与扩量阈值;命名的主指标与护栏。仍不达标的单元在计划交付前要被移除、并入其它单元或重新界定范围,并重跑可行性检查;迭代直到达标,绝不交付带隐含判定的计划。
- B2B 与 B2C:方法(决策、假设、隔离选择、单元矩阵、可行性检查、预注册)完全相同,差别在于可行性检查的结论和主指标所在位置。B2C 电商:高量有时能产生 Powered 单元;读数在购买事件上 3-7 天落地;数学过关时全套统计机制可用。B2B 线索获取:转化量几乎从不支持显著性——默认判定为 Directional read 并说明;读数跑 4-6 周而非几天;用从 CRM 回传的管道质量事件(合格线索、商机)优化和判断,绝不用原始表单填写,销售拒绝的廉价线索是护栏违规而非胜利;用基于判断的相对读数加滞后的质量护栏(线索到合格率对比账户自身滚动中位数);销售周期意味着收入判定比创意判定晚一个周期,计划必须安排第二次查看,而不是假装第 30 天的读数就是最终结果。
- 可选集成说明(唯一允许出现厂商名的地方):Meta——原生 A/B Test 工具提供确定性拆分(建议 7-30 天,设置时显示预估功效);Advantage+ Creative / 动态创意是测试单元中要关闭的自动化功能。TikTok——Split Test 运行 7-30 天,在 90% 置信度下宣布赢家。Google——Experiments 运行约 4-6 周,通常排除第一周。若能联网请对照当前平台文档核实,这一层变化很快;若不能,依赖上述类别级机制,它们是稳定的。
- 失败模式与计划中的缓解:投放差异(最深层的结构缺陷)——投放算法把每个广告展示给反应不同、无法察觉地优化过的用户组合,即便在确定性拆分内也如此;Braun & Schwartz(2025, Journal of Marketing)表明这可能混淆结果的幅度甚至翻转符号;缓解:在计划中声明平台内读数是相对筛选而非因果证明,把留出/提升设计留给需要因果性的决策。偷看/提前停止——在有利的早期数字上停止会抬高假阳性,早期数据系统性嘈杂;缓解:预注册停止规则与最早评估时点(第 6 节)。多单元多重比较——测很多变体会让某些靠运气『赢』,约 3 个变体在标准校正下需多约 30-40% 样本;缓解:减少单元,或校正 alpha(除以比较次数),细节见 sizing 参考。新颖性效应——新创意获得会消退的早期提升,短测试会高估它;缓解:一周下限,宣布前把后窗与早窗对比。星期几/季节性污染——周末买家与工作日不同,促销和假日会偏斜窗口;缓解:整周倍数,绝不在不同时间上线单元,在计划中注明日历事件。测试中修改——任何重大修改都会重置投放学习并使读数失效;缓解:上线时冻结单元,出错就重新上线单元而不是编辑它。新对旧比较——在位者的投放历史和累积优化使旧数据不可比;缓解:对照单元始终并发运行(第 3 节)。扩量时的均值回归——低花费赢家的数字在更高花费下退化,胜利部分是选择效应;缓解:预注册扩量步长,把第一次扩量当作独立读数。幸存者偏差——赢家库和 swipe file 过度代表幸存者,概念获得其输家会反驳的功劳;缓解:在测试日志中记录每个单元的结果,包括杀停。
适用边界 · 注意事项
- 不要用它读取已经在运行的测试结果或监控创意疲劳——那属于 mbfinotti/advertising-skills@ad-creative-fatigue。
- 不要用它撰写广告文案变体(用 ad-copy-variants)、产出给设计师/视频的制作简报(用 ad-creative-brief)、验证转化事件是否真的触发(用 ad-conversion-tracking,且应在上线前运行——在坏事件上做测试什么都测不到),或诊断表现不佳的账户(用 ad-account-diagnostic)。
- 若无法在测试单元内关闭自动化/AI 创意优化功能,或无法在绩效团队反对下保持固定预算,则本方法的核心受控单元结构不成立,需先解决这些前提。