实验(A/B 测试)
实验用一个对照组来检验对邮件所做的一处改动。你先写下要回答的问题、用来回答它的那一个数字,以及哪些人参与,MailInApp 会在发送任何邮件之前把这些全部固定下来。然后它同时发出每个版本,衡量结果,并告诉你证据有多强。
本页的插图使用 Retro Revival 这家虚构的服装店,数字均为虚构。Retro Revival 想知道免运费和 10% 折扣哪个卖得更好,奖励藏在一张刮刮卡下面。
什么是实验
一个实验属于一封邮件,只回答一个问题。它包括:
- 一个假设:你预期会发生什么、为什么,在看到任何结果之前写下。
- 一个主要指标:决定结果的那个数字,例如购买转化率。其他所有数字都只用来解释它,从不用来做决定。
- 两个或更多变体:邮件的不同版本。其中一个是对照组,其余每个变体都与它比较。
- 一个随机样本:从你的联系人中只抽取一次,并分配到各个变体。没有人会收到两个变体。
- 一个观察期:发送后点击和订单计入的时长。观察期结束时读取结果。
在侧边栏打开实验,点击新建实验即可创建。也可以在邮件发送页面的 A/B 区域、邮件列表中该行的菜单或营销活动日历里使用作为实验运行。
何时用简单的 A/B 发送就够了
普通的 A/B 发送会把一次发送拆分给最多五个变体,并把它们的比率并排显示。它很快,用来粗略比较两条标题行也够用。但它不会预先固定任何东西:指标、样本量、何时停止,都没有固定。
如果答案很重要,就用实验。它补上了简单发送缺少的部分:
- 在发送前确定样本和指标,这样就没人能在事后挑选看起来最好的读法;
- 统计检验,附带区间和通俗易懂的结论;
- 检查发送本身是否公平,例如每个变体是否在同一时间发出;
- 每个变体各自的商店奖励,并把订单匹配回带来它的那个变体;
- 一个记录在案的决定,永久与实验保存在一起。
实验也不像直接发送那样限制为 200 名收件人:它通过自己的任务分批发送给整个样本。
套餐
从 Lite 套餐起即包含实验功能。各套餐允许的内容:
| 套餐 | 变体数 | 均衡随机样本 | 保留组 | 序贯分析 |
|---|---|---|---|---|
| Lite | 2 | 否 | 否 | 否 |
| Pro | 4 | 是 | 是 | 否 |
| Business 和 Enterprise | 5 | 是 | 是 | 是 |
保留组算作其中一个变体。
六个步骤
设置一个实验分为六个步骤。在锁定之前,你可以回到其中任何一步。
假设与指标
先写假设。然后选择主要指标,也就是决定实验结果的那个数字。每个指标都是相对于各自基数的比例或金额:
| 指标 | 统计内容 |
|---|---|
| 购买转化率 | 已送达收件人中完成购买的比例。 |
| 每封送达邮件收入 | 归因的商店收入除以送达的邮件数。 |
| 唯一点击率 | 已送达收件人中至少点击一次的比例。 |
| 回复率 | 已送达收件人中回答了投票、测验、RSVP 或表单的比例。 |
送达指发送数减去硬退信。一位联系人无论点击或购买多少次,都只计一次。
次要指标显示在主要指标旁边,用来解释它,不决定结果。护栏指标是胜出组不能变差的指标,例如退订率或投诉率。一个变体即使胜过对照组,只要在某个护栏指标上明显更差,就不算胜出。
有两个指标有各自的限制:
- 打开率仅供参考。Apple 邮件隐私保护会自动打开邮件,所以它不能作为主要指标或护栏指标。
- 观测到的揭晓率和揭晓后点击率需要从邮件应用中记录揭晓,而 MailInApp 目前还不记录。暂时不要选它们。揭晓后点击还取决于哪些人揭晓了,所以这个指标不是随机化比较。
显著性水平是差异被认定之前证据必须达到的强度,通常选 5%(双侧)。分析可以是固定期限(观察期结束时读取一次),在 Business 及以上套餐中也可以是序贯(在观察期内持续检查,阈值更严格)。两者的区别见为什么观察期是固定的。
在统计下,还有几项选择要在此时确定,这样就无法在之后为了迎合结果去挑选。它们包括:根据发送前已知的信息进行校正、收入使用的货币、超大订单的封顶,以及可选的阈值。每一项的说明见解读实验结果。
实验组与内容
每个变体是邮件的一个版本。为每个变体设置标签和样本占比,并把其中一个标记为对照组。平均分配会让各变体的占比相等。
变体可以更改标题行、发件人和内容。更改内容有两种方式:
- 这封邮件,应用此实验组的改动。 在工作室中打开邮件,在工具栏的变体菜单中选择该变体,然后编辑它要改动的模块。其余内容由所有变体共用。这样各变体除了你要测试的部分之外完全相同。
- 另一封邮件。 该变体发送一封完全不同的邮件。它的结果仍会计入本实验。
有少数设置不能在变体之间不同,因为它们决定了如何核对回答或付款,例如测验的正确答案或商品的价格。工作室会标出哪些字段可以由变体更改。
变体 A
变体 B
| 邮件的部分 | 变体 A | 变体 B |
|---|---|---|
| 标题行 | 相同 | 相同 |
| 主图 | 相同 | 相同 |
| 商品轮播图 | 相同 | 相同 |
| 刮刮卡奖品 | 10% 折扣 | 免运费 |
| 购物按钮 | 相同 | 相同 |
| 页脚 | 相同 | 相同 |
测试不一定要改动内容。下面这个例子里,两个变体共用同一封邮件,只有标题行不同:
变体 A (对照组)
主题
The October restock is here
变体 B
主题
Back in stock: the 3 cameras you asked for
在 Pro 及以上套餐中,一个变体可以设为保留组:分到这里的联系人什么都收不到。把其他变体与它比较,就能看出即使不发邮件也会有多少人购买,因此它需要以购买或收入作为主要指标。
受众与样本
选择一个联系人列表,再用筛选规则选择目标对象。从已保存的分群开始会把某个分群的筛选条件复制到实验中。在实验里编辑它不会改变原来的分群。
受众人数卡片按发送时使用的同一套规则统计四个阶段:
- 列表中:列表上的每一位联系人。
- 符合条件:能够接收邮件的联系人。已排除列表说明其余联系人为什么不能接收:已退订或已退信、经验证无效的地址、没有营销许可、尚未确认订阅、已退订此邮件的主题,或已在另一个实验中。
- 已定位:符合条件且匹配你的筛选条件的联系人。
- 参与实验:样本,分配到各个变体。
- 列表中50,874
- 符合条件46,320
已排除
- 已退订或已退信 · 2,870
- 没有营销许可 · 704
- 经验证无效的地址 · 612
- 尚未确认订阅 · 236
- 已退订此邮件的主题 · 98
- 地址缺失或格式错误 · 34
- 已定位6,420
Rock–Alternative和1990 年代
- 参与实验4,000
- 变体 A · 10% 折扣 · 2,000
- 变体 B · 免运费 · 2,000
| 阶段 | 联系人 |
|---|---|
| 列表中 | 50,874 |
| 符合条件 | 46,320 |
| 已定位 | 6,420 |
| 参与实验 | 4,000 |
| 已排除: 已退订或已退信 | 2,870 |
| 已排除: 没有营销许可 | 704 |
| 已排除: 经验证无效的地址 | 612 |
| 已排除: 尚未确认订阅 | 236 |
| 已排除: 已退订此邮件的主题 | 98 |
| 已排除: 地址缺失或格式错误 | 34 |
| 变体 A · 10% 折扣 | 2,000 |
| 变体 B · 免运费 | 2,000 |
筛选条件旁边的受众洞察可以按某个列表字段、购买记录或互动分数细分已定位的联系人。每种细分都有一个无值分组,存放缺少该字段的联系人。抽样前请先看看它:如果很多联系人没有值,按这个字段做均衡就作用不大。
然后选择抽样方式:
- 所有目标对象:每位已定位的联系人都参与,随机分配到各个变体。
- 随机样本:从已定位的联系人中随机抽取样本,再随机分配。
- 均衡随机样本(Pro 及以上):在你所选字段的每个取值内分别抽样,让每个变体获得相同的构成,例如客户和潜在客户的比例相同。
- 整个分群:规则选中的每位联系人。这是基于规则的选择,不是随机样本,所以结果只代表这个分群。变体仍然是随机分配的。
已定位的联系人
- 客户
- 潜在客户
每个点代表 80 位联系人。
| 变体 | 客户 | 潜在客户 | 无客户类型 |
|---|---|---|---|
| 变体 A · 10% 折扣 | 720 | 1,240 | 40 |
| 变体 B · 免运费 | 720 | 1,240 | 40 |
| 变体 | 客户 | 潜在客户 |
|---|---|---|
| 变体 A · 10% 折扣 | 11 | 14 |
| 变体 B · 免运费 | 7 | 18 |
排除已在其他实验中的联系人可以避免实验相互重叠。它涵盖已锁定的实验、仍在观察期内的实验,以及优惠仍可兑换的实验,这样之前测试的优惠就不会渗入本次测试。
样本量规划会在发送任何邮件之前算出测试需要多少联系人。它从你自己的历史数据出发:这个列表上过往的实验,或你最近的发送。你输入值得发现的最小提升和想要的检验效能,它会推荐一个样本量。如果受众太少,它会改为告诉你能可靠发现的最小提升。
每个变体的联系人数
| 可检测的最小差异 | 每个变体的联系人数 |
|---|---|
| 1.0 个百分点 | 6,444 |
| 1.5 个百分点 | 3,027 |
| 2.0 个百分点 | 1,793 |
| 2.5 个百分点 | 1,206 |
| 3.0 个百分点 | 877 |
Retro Revival 希望购买率从 3.7% 提高到 5.0%。要发现这 1.3 个百分点的提升,样本量规划要求每个变体 3,943 位联系人。总共 4,000 位联系人时,测试能可靠发现的提升约为 1.9 个百分点。更小的真实差异很可能看不出来,所以请在启动前、而不是之后,按你负担得起的规模来规划。了解你的 A/B 测试需要多少联系人一步步介绍了这个规划工具。
奖励与归因
为每个变体设置各自的商店优惠,或者不设:按比例折扣、固定金额减免或免运费。要么每个变体都有奖励,要么都没有;而且每个变体的优惠码有效天数相同,这样比较才公平。
每位收件人都会获得自己专属的一次性优惠码,与其本人绑定。用 {{discount_code}} 和 {{discount_url}} 合并标签把它显示在邮件中,例如放在刮刮卡的奖品和链接里。要等到某个模块显示了奖励,才能锁定。
有几件事需要先设置好:
- 优惠码在与实验联系人列表相连的 Shopify 或 WooCommerce 商店中生成。没有连接商店时,这一步会提示无法生成优惠码。
- 在 WooCommerce 上,免运费优惠码需要一个要求有效免运费优惠券的 Free Shipping 配送方式。你的商店没有这种方式时,这一步会提示。
- 对于免运费,请填写每笔订单的平均运费。每笔免运费订单都会把它计为促销成本。
订单归因把每笔商店订单匹配到一个变体。按以下顺序,第一条匹配的规则生效:
- 优惠码:订单使用了该变体的优惠码。这是最可靠的匹配,即使在数天后也一样。
- 跟踪链接:买家通过邮件中带标记的链接进入。
- 邮件内结账:买家通过商品模块的结账付款。
- 邮箱地址(可能):买家的地址与观察期内点击过的某位收件人一致。这些订单会标记为可能。
前三条规则默认开启。**邮箱地址(可能)**在你选中之前保持关闭,它也是唯一能匹配保留组订单的规则,因为保留组不会收到邮件。优惠码和规则的详细说明见每个变体使用不同的奖励,完整的奖励测试见用刮刮卡 A/B 测试找出更好卖的奖励。
如果邮件中有刮刮卡,刮刮卡行动号召决定购物按钮的位置:揭晓的奖品内或卡片下方。两种位置分别能衡量什么,见衡量刮刮卡的效果。
计划与观察期
选择启动后立即发送或指定时间。所有变体一起发出,在同样的几分钟内交错发送。实验不使用发送时间优化,所以变体之间的差异不会来自各自的发送时间。
观察期是发送后点击和订单计入的时长,为 1 到 60 天。结果在观察期结束时读取一次。请选择一个能覆盖人们通常的行动时间、并且优惠在此期间一直有效的时长。
将结果发送给其余受众会先在样本上测试,再把一个变体发送给受众中其余的所有目标对象。它需要随机样本(第 3 步),这样才有其余受众可发。选择一种策略:
- 发送显著胜出者:在决策时间之前于主要指标上胜出的变体会发给其余受众。否则其余受众收到对照组。
- 发送领先者(收益策略):其余受众收到决策时间时看起来最好的那个变体,不论是否显著。变体之间差距很小时这样做划算,但这并不能证明它更好。
决策时间从样本中最后一封邮件发出时开始计算。如果届时某个变体的事件少于 30 个,会在最长等待时再读取一次样本。如果仍然不够,其余受众收到对照组。这只决定其余受众收到什么:实验本身的决定仍要等整个观察期结束。
检查并锁定
最后一步汇总整个计划,并列出锁定前需要修正的问题。然后锁定预注册会冻结假设、指标、受众和变体,并抽取样本:哪些联系人参与、每人分到哪个变体,都就此确定。
在启动之前,你仍然可以重命名实验、更改发送时间,以及编辑每个变体的标签、标题行、发件人和内容。启动会从你的每月邮件额度中预留整次发送,然后安排发送。保留组不占用额度。启动后只能更改名称。
启动时,MailInApp 还会按实际发送的样子生成每个变体的邮件。如果某个变体的邮件显示了另一个变体的刮刮卡奖励,就会拒绝启动,即使只出现在不支持刮刮卡的邮件应用所显示的回退版本中也一样。这项检查能发现什么,见在实验中测试两种奖励。预检清单检查的是你保存的邮件,所以也请用工作室的变体菜单预览每个变体。
运行期间
- 草稿
- 已锁定
- 已计划
- 发送中
- 观察中
- 分析中
- 已决定或无定论
- 已关闭
部署胜出组
做出决定后的一次单独发送,不是一个状态。
| 步骤 | 状态 |
|---|---|
| 1 | 草稿 |
| 2 | 已锁定 |
| 3 | 已计划 |
| 4 | 发送中 |
| 5 | 观察中 |
| 6 | 分析中 |
| 7 | 已决定 |
| 7 | 无定论 |
| 8 | 已关闭 |
| 不在这条线上 | 部署胜出组 |
启动后,实验会自动经过以下状态:
- 在发送时间之前为已计划,各变体发出期间为发送中。
- 观察期内为观察中。每隔几小时会运行一次中期分析。它的结果会标为中期结果:不要据此做决定。
- 观察期结束后为分析中。最终分析大约一小时后完成。
- 你记录决定后为已决定或无定论,结束实验后为已关闭。
运行期间只能更改名称。取消实验可以在做出决定之前的任何时候停止实验,且无法撤销。同一封邮件的其他发送会跳过本实验占用的联系人,所以不会有人从别的渠道收到第二个版本。
实验在草稿状态、已关闭或已取消时可以删除。它的结果和分配会一并删除。
限制与不衡量的内容
- 暂不记录收件箱中的揭晓。 刮刮卡或转盘抽奖的揭晓发生在邮件应用内,MailInApp 目前还不在那里记录它。请改为衡量奖品链接的点击和购买。
- 打开仅供参考。 Apple 邮件隐私保护和图片代理会自动打开邮件,所以打开率偏高,并因邮件应用而异。
- 每个变体在启动时检查。 发送页面的预检检查的是保存的邮件,而不是每个变体的版本。
- 移动应用暂不支持。 MailInApp 移动应用还不显示实验。
通过 API 使用
你自己的代码和自动化工具可以用 API 密钥读取实验,Webhook 可以在实验做出决定或结果就绪时通知它们。它们只能读取,不能锁定、启动或做决定。见读取实验结果。