产品经理该如何做A/B 测试?
A/B测试的实质是对照试验,即通过对几个不同的版本进行对比,从而选出最优版本。本文作者分享了A/B 测试的具体操作步骤,对过程中需要注意的问题进行了总结。
在产品运营过程中会存在许多次迭代优化,大到某项功能的增加或删除、小到某个点击按钮的颜色,都有可能成为驱动关键转化指标提升的因素,那么就会存在一个问题,作为公司内部的产品、运营等团队,要如何才能保证每一次的方案都能取得更好的效果呢?
很简单,试一试就知道了。A/B 测试指的是根据试验的目标,把测试群体分为2组(或更多的组,取决于备选方案的数量),每组采用不同方案试行,最后对统计结果进行分析,选取效果最好的方案。
一、确定测试目标,提出方案
做任何事之前,都需要想清楚是为什么而做,因为这很大程度上决定了其可行性,以及之后的发力方向、时程、耗费的人力物力等。
1. 收集需求
需求可能来自真实业务中的方方面面,但都保持跟整个公司的发展大方向一致(也就是北极星指标),这些需求的解决能够从某个角度推动总体业务前进,(例如优化注册页面文案可以提高新用户注册转化率,增大产品拉新规模),包括但不限于以下来源:
(1)来自内部(团队):
- 产品部门
- 运营部门
- 市场部门
- 研发部门
(2)来自外部(用户):
- 问卷调查
- 用户调研
(3)来自外部(行业):
- 行业分析
- 竞品分析
用户增长团队(or数据分析师们)收集到这些需求,会做出一些可行性评估,并筛选出合理需求进入试验库。
2. 进行优先级排序
当产生了众多的需求之后,该如何安排先处理哪些呢?对于试验顺序的处理不能毫无章法,拎出哪个做哪个,针对此问题,可在公司内部制定一个优先级排序系统,将所有待处理的需求进行科学有序地排列。
例如ICE排序系统(Impact=影响力,Confidence=成功率,Effort=开发成本),其核心思路是根据不同试验执行的综合性价比来决定先后顺序,“性”指的是可以收获到的价值(包括影响力及成功率),“价”指的是需要为此付出的人力物力及财力。预期影响力越大,成功概率越高,开发成本越小,优先级就越高,反之则越低。
相信在评估上述的重要参考因素之后,可以比较清晰地指导不同的试验顺序,找到应尽快实施的试验。
假定排在试验库内的顶端,有这么一个情景,某产品运营过程中发现“新用户观看时长”是个可以优化的方向,初一看可能觉得无从下手,但对其进行拆解后,可得出:
新用户观看时长=新用户数*人均观看时长=注册页面浏览人数*注册转化率*人均观看时长
与历史数据进行比对后,发现问题出在注册转化率较低,因此想要通过A/B 测试的方法来提高注册转化率。
3. 提出假设
确定要做的试验之后,需要对试验的结果进行假设,通常由团队内部综合多方面因素给出。例如,想要通过优化宣传文案的方式,突出产品注册的价值,提高注册页面转化率。
针对上述目标,团队可能通过头脑风暴等方式,给出以下几种文案:
- “一节课搞懂A/B测试,快来加入我们吧。”
- “国内首个A/B测试课程,权威中的权威。”
- “手把手教你A/B测试:从规划到落地。”
预测上述某种经过优化的文案能够帮助激发用户的注册欲望,从而提高注册转化率。针对这些假设,可以进一步讨论出较为适宜的1-2种作为试验材料。
4. 确定方案
在完成上述两个步骤后,已经界定了试验的核心,接下来需要对整个试验的流程进行系统化的规划,形成标准、清晰、可执行的文档。可根据4w1h的思路较为完整地描述整个测试:
二、更新开发版本及测试
1. 更新开发版本
完整的测试方案敲定后,便需要将方案落地,将优化内容植入新开发的版本中。
2. 进行测试
对新开发的版本进行上线前的测试,主要包括以下几个方面:
- 基本质量保证,即流程是否顺畅
- 测试A/B分流采样是否生效,即用户能否根据预设采样比例进入不同版本
- 测试各个版本的指标埋点能否正确上报
- 观察除修改点之外,其他变量是否保持完全一致,即是否有准确控制无关变量
三、方案上线,运行试验
测试通过的方案可以正式上线,实现分流之后不同分组用户体验到的不同方案。上线最初一两天可先少量测试(一般在10%以下,避免有bug,保证不会有太多用户受到影响),待上线效果趋于稳定后再扩展到全部的样本。
四、统计并分析结果
在试验上线后,需要对实验数据进行监控。当试验结束后,负责的分析团队需要对收集的结果进行分析,A/B测试主要使用的是假设检验的方法,假设检验是指通过样本统计量得出的差异做出一般性结论,从而判断总体参数之间是否存在差异的一种推论过程。
假设检验的主要步骤有:
- 根据问题要求,提出假设。假设检验中存在两种假设,第一种根据已知理论与事实作出的希望证明的假设叫做研究假设,通常称为H1。在统计学中不能对H1的真实性直接检验,而是利用反证法的思想,建立与之对立的假设(称为虚无假设,H0),通过否定H0来接受H1。例如“新版本的注册转化率比原先高30%”就是H1,“新版本注册转化率与原先无显著区别”为H0,需要通过拒绝H0来证明H1。
- 选择适当的检验统计量。例如均值、方差等。一般情况下指的是对于均值的检验。
- 规定显著性水平α。在假设检验中有可能会犯错误。如果虚无假设正确却把它当成错误的加以拒绝,犯这类错误的概率用α表示(也叫取伪错误),α就是假设检验中的显著性水平。显著性水平确定以后,拒绝域也随之而定,而且对于不同的假设形式,拒绝域是不同的。显著性水平的大小应根据实际情况而定,如果对结果要求比较精确,则显著性水平α应小一些。一般情况下,根据小概率事件原理,将概率不超过0.05的事件当做“小概率事件”,也就是α取0.05。
- 计算检验统计量的值。根据样本资料计算出检验统计量的具体值。
- 作出决策。根据显著性水平α和相应统计量的分布,查相应的统计表,查找接受域和拒绝域的临界值,将计算出的统计值与临界值相比较,若超出了接受域,则作出结论可以拒绝原假设,判断试验方案有效改变某项指标。
五、得出结论,加以应用
根据上述对于结果的分析,可以得出新的方案是否成功提高某项指标的结论。
若达到统计学上差异显著的标准,那么就可以将新方案逐渐覆盖到整体,实现100%发布,完成之前的目标。并且,如果试验效果不错的话,说明此优化方向具有潜力,后续可以设置进一步的试验去探索,不断地对此进行优化迭代,从而最大化效果的提升。
那么,如果没有达到预期的目标呢?那么就需要总结发现原因,如果是假设方向有误,那么继续探索其他假设,如果是试验过程中存在操作有误,那么应尽快发现具体问题点,将其改进并继续推进,直至得出正确结论。
具体流程如下图:
六、回归整体业务
最后也是最重要的是,试验从整体业务中来,也需要回到整体业务中去,我们所得出的并不应该仅仅是“某项指标提高”这样一个具体的数字,而要将其与宏观的增长指标联系起来。回到之前的指标模型:
新用户观看时长=新用户数*人均观看时长=注册页面浏览人数*注册转化率*人均观看时长
假设之前的数据为:
360000分钟=10000人*30%*120分钟
并且假设其他因素保持不变,注册转化率提高30%
468000分钟=10000人*39%*120分钟
可以看到,仅仅对注册页的文案进行了优化,就将新用户观看时长提高了108000分钟,这就非常清晰地让人看到A/B测试的价值了。
总的来看,A/B测试说简单也不简单,大到整个测试战略的制定,小到具体每一个测试项目的执行,都需要各部门间协作,通过大量的数据采集、分析,不断试验不断推翻,才能不断地向更优解接近。这也正是A/B 测试的意义与价值所在。
本文由 @ywmw_ 原创发布于人人都是产品经理,未经作者许可,禁止转载。
题图来自Unsplash,基于CC0协议。
请问统计结果(数据清洗到可视化过程)是产品经理负责还是开发负责。
给了我很多启发,感谢分享。