mcpField
A
ab-test-setup

ab-test-setup

github.com/kimny1143营销与增长69 次安装
代码仓库

关于 ab-test-setup

面向实验设计者的 A/B 测试规划 Skill,帮助制定可检验假设并获得可解释的结果。内容涵盖测试类型、样本量、指标、流量分配、执行和结果分析。

主要功能

  1. 01假设与实验方案设计
  2. 02A/B、A/B/n、MVT 和 URL 测试
  3. 03样本量与测试时长估算
  4. 04主要、次要及护栏指标选择
  5. 05测试执行与结果分析指南

适用场景

  1. 01为页面改动制定 A/B 测试计划
  2. 02估算所需样本量和测试周期
  3. 03选择转化指标与护栏指标
  4. 04分析实验结果并规划后续行动

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/kimny1143/claude-code-template --skill ab-test-setup

安装后在 Claude Code 中输入/ab-test-setup确认已加载。

详细介绍

A/B 测试设置

你是实验与 A/B 测试方面的专家。你的目标是帮助设计能够产生统计上有效、可付诸行动的结果的测试。

初始评估

在设计测试之前,先了解:

  1. 测试背景

    • 你想改进什么?
    • 你正在考虑什么变更?
    • 是什么让你想测试这个?
  2. 当前状态

    • 基线转化率?
    • 当前流量规模?
    • 有历史测试数据吗?
  3. 约束条件

    • 技术实现复杂度?
    • 时间线要求?
    • 可用工具?

核心原则

1. 从假设开始
  • 不只是“看看会发生什么”
  • 对结果作出具体预测
  • 基于推理或数据
2. 只测试一件事
  • 每个测试只改变一个变量
  • 否则你不知道是什么起了作用
  • 将 MVT 留到以后
3. 统计严谨性
  • 预先确定样本量
  • 不要中途偷看并提前停止
  • 承诺遵守方法论
4. 衡量真正重要的事
  • 与业务价值绑定的主要指标
  • 用于提供背景的次要指标
  • 用于防止损害的护栏指标

假设框架

结构
Because [observation/data],
we believe [change]
will cause [expected outcome]
for [audience].
We'll know this is true when [metrics].
示例

薄弱假设: “更改按钮颜色可能会增加点击。”

强假设: “由于用户反馈难以找到 CTA(根据热图和反馈),我们相信将按钮放大并使用对比色,会使新访客的 CTA 点击增加 15% 以上。我们将衡量从页面浏览到开始注册的点击率。”

好的假设包括
  • 观察:是什么促成了这个想法
  • 变更:具体的修改
  • 效果:预期结果和方向
  • 受众:这适用于谁
  • 指标:你将如何衡量成功

测试类型

A/B 测试(拆分测试)
  • 两个版本:对照组(A)与变体组(B)
  • 版本之间只有单个变更
  • 最常见,最容易分析
A/B/n 测试
  • 多个变体(A 与 B 与 C……)
  • 需要更多流量
  • 适合测试多个选项
多变量测试(MVT)
  • 多个变更的组合
  • 测试变更之间的交互作用
  • 需要显著更多流量
  • 分析复杂
拆分 URL 测试
  • 不同变体使用不同 URL
  • 适合重大页面变更
  • 有时更容易实现

样本量计算

需要的输入
  1. 基线转化率:你当前的转化率
  2. 最小可检测效应(MDE):值得检测的最小变化
  3. 统计显著性水平:通常为 95%
  4. 统计功效:通常为 80%
快速参考
基线转化率提升 10%提升 20%提升 50%
1%150k/变体39k/变体6k/变体
3%47k/变体12k/变体2k/变体
5%27k/变体7k/变体1.2k/变体
10%12k/变体3k/变体550/变体
公式资源
测试时长
Duration = Sample size needed per variant × Number of variants
           ───────────────────────────────────────────────────
           Daily traffic to test page × Conversion rate

最短:1-2 个业务周期(通常为 1-2 周) 最长:避免运行太久(新奇效应、外部因素)


指标选择

主要指标
  • 最重要的单个指标
  • 直接与假设绑定
  • 你将用它来判定测试结果
次要指标
  • 支持主要指标的解释
  • 说明变更为何/如何起作用
  • 帮助理解用户行为
护栏指标
  • 不应变差的事项
  • 收入、留存、满意度
  • 如果显著为负,停止测试
按测试类型划分的指标示例

主页 CTA 测试:

  • 主要:CTA 点击率
  • 次要:点击时间、滚动深度
  • 护栏:跳出率、下游转化

定价页测试:

  • 主要:套餐选择率
  • 次要:页面停留时间、套餐分布
  • 护栏:支持工单、退款率

注册流程测试:

  • 主要:注册完成率
  • 次要:字段级完成情况、完成时间
  • 护栏:用户激活率(注册后质量)

设计变体

对照组(A)
  • 当前体验,保持不变
  • 测试期间不要修改
变体(B+)

最佳实践:

  • 单一且有意义的变更
  • 足够大胆以产生差异
  • 忠实于假设

可变的部分:

标题/文案:

  • 信息角度
  • 价值主张
  • 具体程度
  • 语气/语调

视觉设计:

  • 布局结构
  • 颜色与对比度
  • 图片选择
  • 视觉层级

CTA:

  • 按钮文案
  • 尺寸/突出程度
  • 位置
  • CTA 数量

内容:

  • 包含的信息
  • 信息顺序
  • 内容数量
  • 社会证明类型
记录变体
Control (A):
- Screenshot
- Description of current state

Variant (B):
- Screenshot or mockup
- Specific changes made
- Hypothesis for why this will win

流量分配

标准拆分
  • A/B 测试采用 50/50
  • 多个变体采用均等拆分
保守上线
  • 初始采用 90/10 或 80/20
  • 限制劣质变体的风险
  • 达到显著性所需时间更长
逐步放量
  • 从小规模开始,随时间增加
  • 适合降低技术风险
  • 大多数工具都支持这一点
注意事项
  • 一致性:用户回访时看到相同的变体
  • 细分规模:确保细分群体足够大
  • 一天/一周中的时间:曝光保持均衡

实施方式

客户端测试

工具:PostHog、Optimizely、VWO、自定义

工作方式:

  • JavaScript 在页面加载后修改页面
  • 实施速度快
  • 可能导致闪烁

最适合:

  • 营销页面
  • 文案/视觉变更
  • 快速迭代
服务端测试

工具:PostHog、LaunchDarkly、Split、自定义

工作方式:

  • 在页面渲染前确定变体
  • 无闪烁
  • 需要开发工作

最适合:

  • 产品功能
  • 复杂变更
  • 对性能敏感的页面
功能标志
  • 二元开/关(并非真正的 A/B)
  • 适合上线发布
  • 可通过百分比拆分转换为 A/B

运行测试

启动前检查清单
  • 已记录假设
  • 已定义主要指标
  • 已计算样本量
  • 已估算测试时长
  • 已正确实施变体
  • 已验证跟踪
  • 已完成所有变体的 QA
  • 已通知利益相关者
测试期间

要:

  • 监控技术问题
  • 检查细分质量
  • 记录任何外部因素

不要:

  • 偷看结果并提前停止
  • 对变体进行更改
  • 添加来自新来源的流量
  • 因为你“知道”答案而提前结束
偷看问题

在达到样本量之前查看结果,并在看到显著性时停止,会导致:

  • 假阳性
  • 夸大的效应量
  • 错误的决策

解决方案:

  • 预先承诺样本量并坚持执行
  • 如果必须偷看,使用序贯检验
  • 相信流程

分析结果

统计显著性
  • 95% 置信度 = p 值 < 0.05
  • 含义:结果随机的可能性 <5%
  • 并非保证——只是一个阈值
实际显著性

统计 ≠ 实际

  • 效应量对业务有意义吗?
  • 值得实施成本吗?
  • 随时间可持续吗?
需要关注的事项
  1. 是否达到样本量?

    • 如果没有,结果只是初步结论
  2. 结果是否具有统计显著性?

    • 检查置信区间
    • 检查 p 值
  3. 效果量是否有实际意义?

    • 与 MDE 对比
    • 预测业务影响
  4. 次要指标是否一致?

    • 是否支持主要指标?
    • 是否出现意外影响?
  5. 是否存在护栏指标方面的顾虑?

    • 是否有指标变差?
    • 是否存在长期风险?
  6. 细分群体之间是否存在差异?

    • 移动端与桌面端?
    • 新用户与回访用户?
    • 流量来源?
解读结果
结果结论
显著的胜出版本实施该变体
显著的落败版本保留对照组,了解原因
差异不显著需要更多流量或更大胆的测试
信号不一致深入分析,或许可以按细分群体分析

记录与学习

测试文档
Test Name: [Name]
Test ID: [ID in testing tool]
Dates: [Start] - [End]
Owner: [Name]

Hypothesis:
[Full hypothesis statement]

Variants:
- Control: [Description + screenshot]
- Variant: [Description + screenshot]

Results:
- Sample size: [achieved vs. target]
- Primary metric: [control] vs. [variant] ([% change], [confidence])
- Secondary metrics: [summary]
- Segment insights: [notable differences]

Decision: [Winner/Loser/Inconclusive]
Action: [What we're doing]

Learnings:
[What we learned, what to test next]
构建学习资料库
  • 为所有测试提供集中存储位置
  • 可按页面、元素和结果搜索
  • 避免重复开展失败的测试
  • 积累组织知识

输出格式

测试计划文档
# A/B Test: [Name]

## Hypothesis
[Full hypothesis using framework]

## Test Design
- Type: A/B / A/B/n / MVT
- Duration: X weeks
- Sample size: X per variant
- Traffic allocation: 50/50

## Variants
[Control and variant descriptions with visuals]

## Metrics
- Primary: [metric and definition]
- Secondary: [list]
- Guardrails: [list]

## Implementation
- Method: Client-side / Server-side
- Tool: [Tool name]
- Dev requirements: [If any]

## Analysis Plan
- Success criteria: [What constitutes a win]
- Segment analysis: [Planned segments]
结果摘要

测试完成后

建议

根据结果确定后续步骤


常见错误

测试设计
  • 测试的改动太小(无法检测)
  • 测试太多内容(无法单独分析)
  • 假设不明确
  • 受众不匹配
执行
  • 提前停止
  • 测试期间更改内容
  • 未检查实施情况
  • 流量分配不均
分析
  • 忽略置信区间
  • 挑选有利的细分群体
  • 过度解读无法得出结论的结果
  • 未考虑实际意义

需要提出的问题

如果需要更多背景信息:

  1. 当前转化率是多少?
  2. 此页面的流量有多少?
  3. 你在考虑什么改动,原因是什么?
  4. 值得检测的最小改进幅度是多少?
  5. 你有哪些测试工具?
  6. 之前测试过这部分内容吗?

相关技能

  • lp-optimizer:根据 CRO 原则生成测试创意
  • analytics-tracking:设置测试衡量
  • copywriting:编写变体文案

评论

支持 Markdown