mcpField
E
experiment-design

experiment-design

github.com/growthenginenowoslawskiマーケティング・グロース79569 回インストール4 週間前に更新
リポジトリ

experiment-design について

変数を分離し、必要なサンプル数を見積もり、結果の確度を評価するコールドメール実験計画スキルです。キャンペーン担当者が検証可能な学びを得るのに役立ちます。

主な機能

  1. 01リスト、コピー、複合テストの計画
  2. 02仮説と固定変数の明確化
  3. 03最低サンプル数の見積もり
  4. 04成功基準の事前設定
  5. 05シーケンス終了後の結果評価

活用シーン

  1. 01コピーを固定してターゲット層を比較
  2. 02固定した対象者にメール文面をテスト
  3. 03結果を新たな基準に採用するか判断

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/growthenginenowoslawski/coldoutboundskills --skill experiment-design

インストール後、Claude Code で/experiment-designを入力して読み込まれたか確認します。

詳細

実験設計

リスト、コピー、オファーを同時に変更すると、何も学べません。このスキルでは、実験ごとに変数を1つに絞るため、実際に何がうまくいっているのかを把握できます。

これが必要な理由

コールドメールの運用担当者の多くは、「何でも変える」実験を行います。キャンペーン1では、新しいリスト、新しいコピー、新しいオファーを使います。結果が良くなると、成功だと判断します。しかし、なぜ良くなったのかはわかりません。リストでしょうか?コピーでしょうか?オファーでしょうか?

その後、キャンペーン2でまた3つすべてを変更します。結果は悪化します。誰にも理由はわかりません。

このスキルはその解決策です。各実験で1つの変数を中心に計画し、それ以外はすべて一定に保ち、信頼度に応じて結果を評価します。

3種類の実験

A. リストのみの実験
  • 変えるもの: リスト(ターゲティング条件)
  • 固定するもの: コピー、オファー、送信インフラ、シーケンスのタイミング
  • 学べること: このセグメントがベースラインより適しているかどうか
  • 学びの信頼度: ターゲティングは高、コピーは低(コピーを検証していないため)
B. コピーのみの実験
  • 変えるもの: コピー(件名、本文、シーケンス、またはA/Bバリアント)
  • 固定するもの: リスト、オファー、インフラ
  • 学べること: このコピーがこのオーディエンスに響くかどうか
  • 学びの信頼度: コピーは高、ターゲティングは低
C. 組み合わせ実験(必要な場合のみ使用)
  • 変えるもの: リストとコピー(場合によってはオファーも)
  • 固定するもの: インフラのみ
  • 使用するタイミング: 新しいICP向けの新規キャンペーンを開始するとき。すべてが新しいため、個別に検証できません。
  • 学びの信頼度: すべて中。結論を出すのではなく、仮説を立てるために使用します。

フレームワーク

ステップ1:仮説に名前を付ける

すべての実験は、1文の仮説から始めます。

「従業員数50~200人のB2B SaaS企業のマーケティング責任者をターゲットにすると、現在の営業担当副社長を対象としたベースラインよりも、肯定的な返信率が高くなるでしょう。理由は[理由]です。」

または:

「最近の製品ローンチについて質問する書き出しにすると、現在のメリット重視の書き出しよりも返信率が高くなるでしょう。理由は[理由]です。」

仮説を1文で書けない場合は、まだ実験を理解できていません。戻って考え直してください。

ステップ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つでも実際に変わる場合は、いったん止めてください。その項目を固定するか、組み合わせ実験として分類し直してください。

ベースラインの健全性チェック — 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でのベストプラクティス:キャンペーンを2つ作成し、それぞれの受信トレイを半分ずつ割り当て、まったく同じスケジュールで同時に開始します。

ステップ 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>

次の両方を満たす場合に限り「高」とします:実験の種類が変数を切り分けており、サンプルサイズが最低基準を満たしている。

ステップ 8:結果をどう扱うか決める
  • 20%以上の向上で勝者、高い信頼度: 新しいベースラインとして採用します。記録し、次の実験に進みます。
  • 10~20%の向上で勝者、高い信頼度: 新しいリードを使って再現実験を行います。再び勝てば採用します。
  • 10%未満の向上で勝者: 結論は出せません。次回は規模を大きくするか、取りやめます。
  • 敗者: なぜ負けたと思うのかを記録します。ただ先に進むのではなく、敗北からも学びを得ます。
  • 複合実験の勝者: 新しいベースラインとして採用してはいけません。代わりに、どの要素が実際に向上をもたらしたのかを特定するため、単一変数のフォローアップ実験に分割します。

最初は実験しない項目

始めたばかりの場合は、単一のキャンペーンを3週間実施してベースラインを得るまで、実験は一切行わないでください。テストを実施するには、まずコントロールが必要です。

ベースラインができたら、通常は次の順で実験を優先します:

  1. リスト(最も影響が大きい — リストの質が悪いと、どんなコピーも台無しになります)
  2. オファー / リードマグネット(2番目に大きい — 「通話を予約する」か、実際のリードマグネットか)
  3. 件名(簡単にテストでき、開封率を左右します)
  4. 書き出し / 最初の一文(件名の次に大きな影響を与える要素です)
  5. CTA(メールの締めくくり方)
  6. シーケンスのタイミング(3日目と2日目のフォローアップ)
  7. シーケンスの長さ(4ステップと6ステップ)

ステップ 1 に問題があるのに、ステップ 6 に進まないでください。

よくある間違い

  • 1つのキャンペーン内でA/Bテストを行う。 SmartleadのA/Bバリアント機能ではデータが混ざります。小規模なコピーの調整には適していますが、仮説検証には不向きです。実際に条件を切り分けるには、キャンペーンを2つ使います。
  • 「一度に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日後に結果を測定します

コメント