文档菜单

实验(A/B 测试)

实验用一个对照组来检验对邮件所做的一处改动。你先写下要回答的问题、用来回答它的那一个数字,以及哪些人参与,MailInApp 会在发送任何邮件之前把这些全部固定下来。然后它同时发出每个版本,衡量结果,并告诉你证据有多强。

本页的插图使用 Retro Revival 这家虚构的服装店,数字均为虚构。Retro Revival 想知道免运费和 10% 折扣哪个卖得更好,奖励藏在一张刮刮卡下面。

什么是实验

一个实验属于一封邮件,只回答一个问题。它包括:

  • 一个假设:你预期会发生什么、为什么,在看到任何结果之前写下。
  • 一个主要指标:决定结果的那个数字,例如购买转化率。其他所有数字都只用来解释它,从不用来做决定。
  • 两个或更多变体:邮件的不同版本。其中一个是对照组,其余每个变体都与它比较。
  • 一个随机样本:从你的联系人中只抽取一次,并分配到各个变体。没有人会收到两个变体。
  • 一个观察期:发送后点击和订单计入的时长。观察期结束时读取结果。

在侧边栏打开实验,点击新建实验即可创建。也可以在邮件发送页面的 A/B 区域、邮件列表中该行的菜单或营销活动日历里使用作为实验运行。

何时用简单的 A/B 发送就够了

普通的 A/B 发送会把一次发送拆分给最多五个变体,并把它们的比率并排显示。它很快,用来粗略比较两条标题行也够用。但它不会预先固定任何东西:指标、样本量、何时停止,都没有固定。

如果答案很重要,就用实验。它补上了简单发送缺少的部分:

  • 在发送前确定样本和指标,这样就没人能在事后挑选看起来最好的读法;
  • 统计检验,附带区间和通俗易懂的结论;
  • 检查发送本身是否公平,例如每个变体是否在同一时间发出;
  • 每个变体各自的商店奖励,并把订单匹配回带来它的那个变体;
  • 一个记录在案的决定,永久与实验保存在一起。

实验也不像直接发送那样限制为 200 名收件人:它通过自己的任务分批发送给整个样本。

套餐

从 Lite 套餐起即包含实验功能。各套餐允许的内容:

套餐变体数均衡随机样本保留组序贯分析
Lite2否否否
Pro4是是否
Business 和 Enterprise5是是是

保留组算作其中一个变体。

六个步骤

设置一个实验分为六个步骤。在锁定之前,你可以回到其中任何一步。

假设与指标

先写假设。然后选择主要指标,也就是决定实验结果的那个数字。每个指标都是相对于各自基数的比例或金额:

指标统计内容
购买转化率已送达收件人中完成购买的比例。
每封送达邮件收入归因的商店收入除以送达的邮件数。
唯一点击率已送达收件人中至少点击一次的比例。
回复率已送达收件人中回答了投票、测验、RSVP 或表单的比例。

送达指发送数减去硬退信。一位联系人无论点击或购买多少次,都只计一次。

次要指标显示在主要指标旁边,用来解释它,不决定结果。护栏指标是胜出组不能变差的指标,例如退订率或投诉率。一个变体即使胜过对照组,只要在某个护栏指标上明显更差,就不算胜出。

有两个指标有各自的限制:

  • 打开率仅供参考。Apple 邮件隐私保护会自动打开邮件,所以它不能作为主要指标或护栏指标。
  • 观测到的揭晓率和揭晓后点击率需要从邮件应用中记录揭晓,而 MailInApp 目前还不记录。暂时不要选它们。揭晓后点击还取决于哪些人揭晓了,所以这个指标不是随机化比较。

显著性水平是差异被认定之前证据必须达到的强度,通常选 5%(双侧)。分析可以是固定期限(观察期结束时读取一次),在 Business 及以上套餐中也可以是序贯(在观察期内持续检查,阈值更严格)。两者的区别见为什么观察期是固定的。

在统计下,还有几项选择要在此时确定,这样就无法在之后为了迎合结果去挑选。它们包括:根据发送前已知的信息进行校正、收入使用的货币、超大订单的封顶,以及可选的阈值。每一项的说明见解读实验结果。

实验组与内容

每个变体是邮件的一个版本。为每个变体设置标签和样本占比,并把其中一个标记为对照组。平均分配会让各变体的占比相等。

变体可以更改标题行、发件人和内容。更改内容有两种方式:

  • 这封邮件,应用此实验组的改动。 在工作室中打开邮件,在工具栏的变体菜单中选择该变体,然后编辑它要改动的模块。其余内容由所有变体共用。这样各变体除了你要测试的部分之外完全相同。
  • 另一封邮件。 该变体发送一封完全不同的邮件。它的结果仍会计入本实验。

有少数设置不能在变体之间不同,因为它们决定了如何核对回答或付款,例如测验的正确答案或商品的价格。工作室会标出哪些字段可以由变体更改。

变体 A

标题行
主图
商品轮播图
刮刮卡奖品10% 折扣
购物按钮
页脚

变体 B

标题行
主图
商品轮播图
刮刮卡奖品免运费
购物按钮
页脚
各变体邮件之间的不同之处
邮件的部分变体 A变体 B
标题行相同相同
主图相同相同
商品轮播图相同相同
刮刮卡奖品10% 折扣免运费
购物按钮相同相同
页脚相同相同
两个变体收到同一封邮件。只有刮刮卡下的奖品不同,所以购买上的差异可以归因于奖励。

测试不一定要改动内容。下面这个例子里,两个变体共用同一封邮件,只有标题行不同:

变体 A (对照组)

主题

The October restock is here

变体 B

主题

Back in stock: the 3 cameras you asked for

只有标题行不同。两个变体的邮件内容完全相同。

在 Pro 及以上套餐中,一个变体可以设为保留组:分到这里的联系人什么都收不到。把其他变体与它比较,就能看出即使不发邮件也会有多少人购买,因此它需要以购买或收入作为主要指标。

受众与样本

选择一个联系人列表,再用筛选规则选择目标对象。从已保存的分群开始会把某个分群的筛选条件复制到实验中。在实验里编辑它不会改变原来的分群。

受众人数卡片按发送时使用的同一套规则统计四个阶段:

  1. 列表中:列表上的每一位联系人。
  2. 符合条件:能够接收邮件的联系人。已排除列表说明其余联系人为什么不能接收:已退订或已退信、经验证无效的地址、没有营销许可、尚未确认订阅、已退订此邮件的主题,或已在另一个实验中。
  3. 已定位:符合条件且匹配你的筛选条件的联系人。
  4. 参与实验:样本,分配到各个变体。
  1. 列表中50,874
  2. 符合条件46,320

    已排除

    • 已退订或已退信 · 2,870
    • 没有营销许可 · 704
    • 经验证无效的地址 · 612
    • 尚未确认订阅 · 236
    • 已退订此邮件的主题 · 98
    • 地址缺失或格式错误 · 34
  3. 已定位6,420

    Rock–Alternative和1990 年代

  4. 参与实验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 及以上):在你所选字段的每个取值内分别抽样,让每个变体获得相同的构成,例如客户和潜在客户的比例相同。
  • 整个分群:规则选中的每位联系人。这是基于规则的选择,不是随机样本,所以结果只代表这个分群。变体仍然是随机分配的。

已定位的联系人

变体 A · 10% 折扣变体 B · 免运费
  • 客户
  • 潜在客户

每个点代表 80 位联系人。

每个变体的联系人数(均衡随机样本)
变体客户潜在客户无客户类型
变体 A · 10% 折扣7201,24040
变体 B · 免运费7201,24040
一次普通随机抽样中每个变体的点数
变体客户潜在客户
变体 A · 10% 折扣1114
变体 B · 免运费718
均衡随机样本在每种客户类型内分别抽样,所以各变体一开始的构成就相同。普通随机样本平均来看是公平的,但任何一次抽样都可能出现偏差。

排除已在其他实验中的联系人可以避免实验相互重叠。它涵盖已锁定的实验、仍在观察期内的实验,以及优惠仍可兑换的实验,这样之前测试的优惠就不会渗入本次测试。

样本量规划会在发送任何邮件之前算出测试需要多少联系人。它从你自己的历史数据出发:这个列表上过往的实验,或你最近的发送。你输入值得发现的最小提升和想要的检验效能,它会推荐一个样本量。如果受众太少,它会改为告诉你能可靠发现的最小提升。

每个变体的联系人数

02,0004,0006,0008,0001.01.52.02.53.0可检测的最小差异(百分点)1.3 个百分点需要每个变体 3,943 位每个变体 2,000 位可检测:约 1.9 个百分点
按可检测的最小差异列出的每个变体所需联系人数
可检测的最小差异每个变体的联系人数
1.0 个百分点6,444
1.5 个百分点3,027
2.0 个百分点1,793
2.5 个百分点1,206
3.0 个百分点877
样本量规划按 3.7% 的基线、80% 的检验效能和 98% 的送达率画出这条曲线。你想看出的差异越小,需要的联系人就越多。

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 配送方式。你的商店没有这种方式时,这一步会提示。
  • 对于免运费,请填写每笔订单的平均运费。每笔免运费订单都会把它计为促销成本。

订单归因把每笔商店订单匹配到一个变体。按以下顺序,第一条匹配的规则生效:

  1. 优惠码:订单使用了该变体的优惠码。这是最可靠的匹配,即使在数天后也一样。
  2. 跟踪链接:买家通过邮件中带标记的链接进入。
  3. 邮件内结账:买家通过商品模块的结账付款。
  4. 邮箱地址(可能):买家的地址与观察期内点击过的某位收件人一致。这些订单会标记为可能。

前三条规则默认开启。**邮箱地址(可能)**在你选中之前保持关闭,它也是唯一能匹配保留组订单的规则,因为保留组不会收到邮件。优惠码和规则的详细说明见每个变体使用不同的奖励,完整的奖励测试见用刮刮卡 A/B 测试找出更好卖的奖励。

如果邮件中有刮刮卡,刮刮卡行动号召决定购物按钮的位置:揭晓的奖品内或卡片下方。两种位置分别能衡量什么,见衡量刮刮卡的效果。

计划与观察期

选择启动后立即发送或指定时间。所有变体一起发出,在同样的几分钟内交错发送。实验不使用发送时间优化,所以变体之间的差异不会来自各自的发送时间。

观察期是发送后点击和订单计入的时长,为 1 到 60 天。结果在观察期结束时读取一次。请选择一个能覆盖人们通常的行动时间、并且优惠在此期间一直有效的时长。

将结果发送给其余受众会先在样本上测试,再把一个变体发送给受众中其余的所有目标对象。它需要随机样本(第 3 步),这样才有其余受众可发。选择一种策略:

  • 发送显著胜出者:在决策时间之前于主要指标上胜出的变体会发给其余受众。否则其余受众收到对照组。
  • 发送领先者(收益策略):其余受众收到决策时间时看起来最好的那个变体,不论是否显著。变体之间差距很小时这样做划算,但这并不能证明它更好。

决策时间从样本中最后一封邮件发出时开始计算。如果届时某个变体的事件少于 30 个,会在最长等待时再读取一次样本。如果仍然不够,其余受众收到对照组。这只决定其余受众收到什么:实验本身的决定仍要等整个观察期结束。

检查并锁定

最后一步汇总整个计划,并列出锁定前需要修正的问题。然后锁定预注册会冻结假设、指标、受众和变体,并抽取样本:哪些联系人参与、每人分到哪个变体,都就此确定。

在启动之前,你仍然可以重命名实验、更改发送时间,以及编辑每个变体的标签、标题行、发件人和内容。启动会从你的每月邮件额度中预留整次发送,然后安排发送。保留组不占用额度。启动后只能更改名称。

启动时,MailInApp 还会按实际发送的样子生成每个变体的邮件。如果某个变体的邮件显示了另一个变体的刮刮卡奖励,就会拒绝启动,即使只出现在不支持刮刮卡的邮件应用所显示的回退版本中也一样。这项检查能发现什么,见在实验中测试两种奖励。预检清单检查的是你保存的邮件,所以也请用工作室的变体菜单预览每个变体。

运行期间

  1. 草稿
  2. 已锁定
  3. 已计划
  4. 发送中
  5. 观察中
  6. 分析中
  7. 已决定或无定论
  8. 已关闭

部署胜出组

做出决定后的一次单独发送,不是一个状态。

实验的各个状态,按顺序排列
步骤状态
1草稿
2已锁定
3已计划
4发送中
5观察中
6分析中
7已决定
7无定论
8已关闭
不在这条线上部署胜出组
锁定会在发送任何邮件之前冻结计划。记录决定就回答了实验的问题。把胜出组发给更多人是另一个步骤。

启动后,实验会自动经过以下状态:

  • 在发送时间之前为已计划,各变体发出期间为发送中。
  • 观察期内为观察中。每隔几小时会运行一次中期分析。它的结果会标为中期结果:不要据此做决定。
  • 观察期结束后为分析中。最终分析大约一小时后完成。
  • 你记录决定后为已决定或无定论,结束实验后为已关闭。

运行期间只能更改名称。取消实验可以在做出决定之前的任何时候停止实验,且无法撤销。同一封邮件的其他发送会跳过本实验占用的联系人,所以不会有人从别的渠道收到第二个版本。

实验在草稿状态、已关闭或已取消时可以删除。它的结果和分配会一并删除。

限制与不衡量的内容

  • 暂不记录收件箱中的揭晓。 刮刮卡或转盘抽奖的揭晓发生在邮件应用内,MailInApp 目前还不在那里记录它。请改为衡量奖品链接的点击和购买。
  • 打开仅供参考。 Apple 邮件隐私保护和图片代理会自动打开邮件,所以打开率偏高,并因邮件应用而异。
  • 每个变体在启动时检查。 发送页面的预检检查的是保存的邮件,而不是每个变体的版本。
  • 移动应用暂不支持。 MailInApp 移动应用还不显示实验。

通过 API 使用

你自己的代码和自动化工具可以用 API 密钥读取实验,Webhook 可以在实验做出决定或结果就绪时通知它们。它们只能读取,不能锁定、启动或做决定。见读取实验结果。

相关内容