关于 experiment-design
用于规划冷邮件实验的技能,通过隔离变量、估算样本量和评估结果置信度,帮助营销人员从测试中获得可解释的结论。
主要功能
- 01规划名单、文案或组合实验
- 02明确假设与控制变量
- 03估算最低样本量
- 04提前设定成功标准
- 05序列结束后评估结果
适用场景
- 01固定文案比较目标客户群
- 02面向稳定受众测试邮件文案
- 03判断结果是否足以建立新基准
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ growthenginenowoslawski/ coldoutboundskills --skill experiment-design安装后在 Claude Code 中输入/experiment-design确认已加载。
详细介绍
实验设计
如果你同时更改名单、文案和报价,你就什么也学不到。此技能会强制你在每次实验中只隔离一个变量,这样你才能真正了解哪些做法有效。
为什么要进行实验
大多数冷邮件运营者都会进行“全都试试”的实验。第 1 次营销活动换了新名单、新文案和新报价。效果更好了,于是他们宣布大获成功。但他们说不清原因——是名单?文案?还是报价?
接着第 2 次营销活动又把这三项全都改了。结果变差。没人知道为什么。
此技能就是解药:围绕一个变量规划每次实验,其他因素全部保持不变,并根据置信度对结果加权。
三种实验类型
A. 仅测试名单
- 变化项: 名单(目标筛选条件)
- 固定项: 文案、报价、发送基础设施、序列时间安排
- 你能了解: 与基准相比,这个细分群体是否更匹配
- 结论置信度: 目标筛选方面为高,文案方面为低(因为没有测试文案)
B. 仅测试文案
- 变化项: 文案(主题、正文、序列或 A/B 变体)
- 固定项: 名单、报价、基础设施
- 你能了解: 这份文案是否能引起这个受众的共鸣
- 结论置信度: 文案方面为高,目标筛选方面为低
C. 组合实验(谨慎使用)
- 变化项: 名单和文案(有时也包括报价)
- 固定项: 仅基础设施
- 适用场景: 为新的 ICP 启动一场全新的营销活动。由于一切都是新的,因此无法隔离变量。
- 结论置信度: 所有方面均为中等。将其用于生成假设,而非得出结论。
框架
步骤 1:写下你的假设
每个实验都从一句话假设开始:
“针对 50-200 人的 B2B SaaS 公司中的市场营销负责人,获得的正向回复率会高于我们当前以 VP Sales 为基准的回复率,因为[原因]。”
或者:
“以对方近期产品发布为切入点提问,回复率会高于我们当前以利益点为主的开场白,因为[原因]。”
如果你无法用一句话写出假设,就说明你还没弄清楚这个实验。回去重新思考。
步骤 2:确定唯一变量
准确写下哪些内容会变化,哪些内容保持不变。
Variable: Target job title
Change: "VP Sales" → "Head of Marketing"
Constants:
- Industry filter: unchanged
- Headcount: unchanged
- Geography: unchanged
- Copy: unchanged (same 4-step sequence)
- Offer: unchanged (same lead magnet)
- Sending infrastructure: unchanged (same 20 domains, 40 inboxes)
- Send schedule: unchanged
如果有任何固定项实际也在变化,请停下来。要么将其固定下来,要么将实验重新归类为组合实验。
基准状态检查——1% 规则
运行任何实验之前,请确认你的基准状态良好:发送 200 封以上后,整体回复率 ≥1%。 如果发送 200 封后基准回复率仍低于 1%,问题不在实验,而是你的基础设施或文案已经出了问题。请先运行 /email-deliverability-audit。
在基准状态不佳的情况下运行实验,只会白费力气:你得到的结论会是“两组都很差”,而不是“哪组胜出”。
步骤 3:计算最小样本量
预期效果越小,所需潜在客户数量就越多。冷邮件可参考以下粗略规则:
| 当前基准 | 预期提升 | 每组最少发送量 |
|---|---|---|
| 正向回复率 1% | 2 倍(1% → 2%) | ~500 |
| 正向回复率 1% | 1.5 倍(1% → 1.5%) | ~2,000 |
| 正向回复率 1% | 1.2 倍(1% → 1.2%) | ~10,000 |
| 正向回复率 2% | 2 倍(2% → 4%) | ~250 |
| 正向回复率 2% | 1.5 倍(2% → 3%) | ~1,000 |
经验法则:如果每组测试的发送量少于 500 封,你就无法区分信号与噪声。
对大多数初学者来说,每组发送 2,000 封是合适的默认值。
步骤 4:提前制定成功标准
启动之前,写下:
Success = positive reply rate > X% (our current baseline is Y%)
Failure = positive reply rate < Z%
Inconclusive = between X and Z
Required sample: at least N sends per arm, reported after day 21 of sequence
现在就做决定,不要等看到数据之后再决定。这样可以避免用“哦,我们反而学到了别的东西”来合理化结果。
步骤 5:同时启动两组
同一天启动,发送基础设施分组相同,序列相同。如果对照组在星期一发送,而变体组在星期四发送,星期几的影响就会成为混杂因素。
Smartlead/Instantly 最佳实践:创建两个营销活动,各分配一半的收件箱,并在完全相同的时间按相同的计划启动。
步骤 6:在第 21 天衡量
等待完整序列(通常为第 0、3、7、11 天发送,加上回复宽限期)对所有潜在客户都结束后再衡量。提前衡量会偏向第一封邮件的回复率。
通过 /positive-reply-scoring 技能提取指标:
- 发送总数(每组)
- 回复总数(每组)
- 正向回复数(每组,由 Claude 分类)
- 正向回复率 = 正向回复数 / 发送总数
次要指标(报告,但不要据此优化):
- 总体回复率(正向回复数 / 发送总数是主要指标,但此指标可显示原始互动情况)
- 打开率(如果有)
- 退信率(合理性检查——如果某组的退信更多,问题出在名单,而非文案)
步骤 7:评估实验结果
报告时使用此框架:
Experiment: <name>
Type: List-only | Copy-only | Combined
Variable: <what changed>
Result: <winner name> at <positive reply rate>% vs <baseline>%
Confidence: HIGH | MEDIUM | LOW (based on experiment type + sample size)
Learnings (by confidence):
HIGH confidence:
- <thing you can trust>
MEDIUM confidence:
- <thing that looks good but needs replication>
LOW confidence:
- <thing you're speculating about>
只有在实验类型隔离了变量且样本量达到最低要求时,置信度才为 HIGH。
步骤 8:决定如何处理结果
- 提升 ≥20%,置信度为 HIGH: 采用为新基准。记录下来。开始下一个实验。
- 提升 10-20%,置信度为 HIGH: 使用新的潜在客户进行复现实验。如果再次胜出,就采用。
- 提升 <10%: 结论不明确。下次扩大规模,或者放弃。
- 表现较差: 记录你认为失败的原因。不要直接跳过——失败也是一种收获。
- 组合实验胜出: 不要将其采用为新基准。应拆分为单变量后续实验,找出究竟是哪一部分带来了提升。
起初不该测试什么
如果你刚刚起步,在单个已上线的营销活动运行 3 周并建立基准之前,不要做任何实验。你需要先有对照组,才能进行测试。
建立基准后,实验的优先顺序通常如下:
- 名单(影响最大——名单质量差会毁掉任何文案)
- 优惠 / 潜在客户诱因(影响第二大——“预约通话”与真正的诱因)
- 主题行(测试成本低,会影响打开率)
- 开场白 / 第一行(主题行之后的重要杠杆)
- 行动号召(CTA)(邮件的结尾方式)
- 序列时间安排(第 3 天还是第 2 天跟进)
- 序列长度(4 步还是 6 步)
第 1 步还没做好时,不要跳到第 6 步。
常见错误
- 在同一个营销活动中进行 A/B 测试。 Smartlead 的 A/B 变体功能会混合数据——适合小幅文案调整,但不适合假设检验。要真正隔离变量,请使用两个营销活动。
- “我一次测试 3 个东西。” 你什么也学不到。
- 过早下结论。 至少等待 21 天。冷邮件回复会在数周内陆续到来。
- 测试期间更改基础设施。 如果一组使用新域名,另一组使用旧域名,投递能力的差异会影响所有结果。
- 忽略退信率。 如果变体组的退信率是对照组的 2 倍,问题出在名单,而不是文案。判定此次测试无效。
输出:实验计划文件
规划结束时,写入:
~/cold-email-ai-skills/profiles/<business-slug>/experiments/YYYY-MM-DD-<name>.yaml
架构:
experiment:
name: <short name>
hypothesis: <one sentence>
type: list-only | copy-only | combined
variable: <what changes>
constants: <list of what stays fixed>
success_criteria:
positive_reply_rate_target: <float>
baseline: <float>
minimum_sends_per_arm: <int>
measurement_date: <YYYY-MM-DD>
arms:
control:
smartlead_campaign_id: <tbd until launch>
description: <what's in the control>
variant:
smartlead_campaign_id: <tbd until launch>
description: <what's in the variant>
results: <empty until day 21>
control_positive_reply_rate: null
variant_positive_reply_rate: null
winner: null
confidence: null
decision: null
参考资料
references/sample-size-calculator.md— 更详细的检验效能计算方法references/example-experiments/— 3 个完整示例(名单、文案、组合)/positive-reply-scoring技能 — 如何实际衡量结果
下一步
通过 /smartlead-campaign-upload-public(手动)或 /auto-research-public(自动)启动计划中的实验。 使用 /campaign-copywriting 中的 variants.yaml。
然后等待 21 天再评估——回复率需要这么长时间才能趋于稳定。21 天后,对每组使用 /positive-reply-scoring。
**或者先等待:**如果每个实验组的潜在客户不足 2,000 个,就无法检测到通常规模的效应。先扩充名单(/prospeo-full-export、/disco-like)。
相关技能
/campaign-copywriting— 生成此实验测试的文案变体/smartlead-campaign-upload-public— 启动每个实验组/positive-reply-scoring— 在 21 天后衡量结果