概要
ファネル計算
放棄数→開封数→クリック数→購買数の順でKPIを積み重ね、施策の定量的な価値を正確に示す。
PRD(Product Requirements Doc)
背景・スコープ・KPI・要件・リスクの5要素。「何をしないか(Out of Scope)」が最重要。
In / Out of Scope
スコープを絞ることで開発コストを抑え、スプリント内に収める。Phase 2への橋渡しを明示。
法規制対応
メール配信系施策では特定電子メール法・GDPR対応が必須。PRDにも非機能要件として明記する。
問題
PMから「カート放棄メール自動化の売上インパクト試算とPRD骨格」の依頼が来ました。
現状指標
| 指標 | 現状 |
|---|---|
| カート放棄率 | 72% |
| メール開封率 | 18% |
| メールCTR(クリック率) | 3.2% |
| 購買転換率(クリック後) | 12% |
| 平均注文金額 | 8,500円 |
| 月間カート作成数 | 50,000件 |
改善後の想定値(自動化・即時配信)
| 指標 | 現状 | 改善後 |
|---|---|---|
| 開封率 | 18% | 26% |
| CTR | 3.2% | 5.5% |
| 購買転換率 | 12% | 15% |
タスク1: 月間追加売上の試算(ファネル計算)
タスク2: 簡易PRD骨格の作成(背景・スコープ・KPI・要件・リスク)
タスク2: 簡易PRD骨格の作成(背景・スコープ・KPI・要件・リスク)
ヒント(段階的開示)
ヒント1 — 方向性
売上インパクト = 「増加した購買数 × 平均注文金額」
「現状の月間購買数」と「改善後の月間購買数」をそれぞれ計算して差分を出す。
「現状の月間購買数」と「改善後の月間購買数」をそれぞれ計算して差分を出す。
ヒント2 — ファネルの辿り方
月間カート作成数
× カート放棄率
= 月間カート放棄数
× メール開封率
= 月間開封数
× CTR
= 月間クリック数
× 購買転換率
= 月間購買数
× 平均注文金額
= 月間売上
ヒント3 — Python計算骨格
# 現状
cart_created = 50_000
abandonment_rate = 0.72
abandoned = cart_created * abandonment_rate # 36,000
# 現状指標で計算
opened_before = abandoned * 0.18 # 6,480
clicked_before = opened_before * 0.032 # 207.36
purchased_before = clicked_before * 0.12 # 24.88
revenue_before = purchased_before * 8_500
# 改善後: open_rate=0.26, ctr=0.055, conversion=0.15
ファネル構造 — Before / After 比較
カート放棄メール施策の購買ファネル。各段階でどれだけ改善したかを視覚化。
模範解答 — タスク1: 売上インパクト試算
【計算フロー】
■ 共通
月間カート作成数 = 50,000件
カート放棄率 = 72%
月間カート放棄数 = 50,000 × 0.72 = 36,000件
平均注文金額 = 8,500円
■ 現状(手動・週1回配信)
開封率: 18% → 開封数 = 36,000 × 0.18 = 6,480件
CTR: 3.2% → クリック = 6,480 × 0.032 ≒ 207件
転換率: 12% → 購買数 = 207 × 0.12 ≒ 25件
月間売上 = 25 × 8,500 = 212,500円
■ 改善後(自動化・1時間以内配信)
開封率: 26% → 開封数 = 36,000 × 0.26 = 9,360件
CTR: 5.5% → クリック = 9,360 × 0.055 ≒ 515件
転換率: 15% → 購買数 = 515 × 0.15 ≒ 77件
月間売上 = 77 × 8,500 = 654,500円
■ 差分(月間追加売上)
654,500 - 212,500 = 442,000円/月
年間換算: 約5,300,000円(530万円)
模範解答 — タスク2: PRD骨格
1. 背景と目的
現在のカート放棄メールは週1回の手動バッチ配信であり、放棄から配信までのタイムラグが最大7日に達している。放棄直後のユーザーの購買意欲が高い時間帯を逃しており、機会損失が生じている。本施策では放棄後1時間以内のトリガー配信に移行し、月間約44万円・年間約530万円の売上改善を目指す。
2. スコープ
✓ In Scope(対象)
- カート放棄イベント検知(放棄後1時間)のトリガー実装
- メール配信テンプレートの作成・管理機能
- 配信結果の計測(開封率・CTR・転換率)のダッシュボード対応
✗ Out of Scope(対象外)
- SMS・プッシュ通知など他チャネルへの展開(Phase 2以降)
- セグメント別パーソナライズ(商品レコメンデーション)
- 配信停止(オプトアウト)管理の改修(既存機能を流用)
3. 成功指標(KPI)
| KPI | 現状 | 目標(3ヶ月後) |
|---|---|---|
| 開封率 | 18% | 26% |
| メールCTR | 3.2% | 5.5% |
| 購買転換率 | 12% | 15% |
| カート放棄経由 月間売上 | 212,500円 | 650,000円 |
| 配信エラー率 | — | 1%未満 |
4. 主要な要件
機能1
カートに商品を追加後、1時間以内に購買・削除アクションがない場合、自動的にメール配信キューに追加する
機能2
同一ユーザーへの連続配信を防ぐため、72時間以内の再配信を禁止する(クールダウン制御)
機能3
メール本文には放棄時のカート内商品(名称・価格・画像)を動的に挿入する
非機能1
トリガーから配信完了までのレイテンシを最大60分以内とし、遅延発生時はアラートを送出する
非機能2
個人情報(メールアドレス)の取り扱いはプライバシーポリシーおよびGDPR/特定電子メール法に準拠する
5. リスクと対策
| リスク | 対策 |
|---|---|
| スパム判定によるメール到達率低下 | 配信ドメイン・IPレピュテーションの事前確認。初期は少量(5%)のA/Bテストから開始 |
| 過剰配信によるユーザーの離脱(配信停止申請増加) | クールダウン制御の実装(72時間ルール)+ 配信停止率を週次モニタリング |
ポイント解説
1
ファネル計算の順序を間違えない
「放棄数 → 開封数 → クリック数 → 購買数」の順で計算。全カート数から計算すると誤差が出る。
「放棄数 → 開封数 → クリック数 → 購買数」の順で計算。全カート数から計算すると誤差が出る。
2
試算は保守的に、KPIは挑戦的に
試算では業界ベンチマーク(開封率26%等)を使い根拠を示す。KPIは「3ヶ月後の目標」として段階的に設定する。
試算では業界ベンチマーク(開封率26%等)を使い根拠を示す。KPIは「3ヶ月後の目標」として段階的に設定する。
3
Out of Scopeを明示することがPRDの本質
スコープを絞ることで開発コストを抑え、スプリント内に収める。「Phase 2」への橋渡しを明示することでステークホルダーの期待値を管理する。
スコープを絞ることで開発コストを抑え、スプリント内に収める。「Phase 2」への橋渡しを明示することでステークホルダーの期待値を管理する。
4
非機能要件にコンプライアンスを含める
メール配信系の施策では特定電子メール法・GDPR対応が必須。エンジニアがPRDを書く際にも必ず明記する。
メール配信系の施策では特定電子メール法・GDPR対応が必須。エンジニアがPRDを書く際にも必ず明記する。
実務への応用
dbtで放棄イベントを定義する例(MOps実務)
-- models/mart/cart_abandonment_triggers.sql
WITH cart_events AS (
SELECT
user_id,
session_id,
MAX(CASE WHEN event_type = 'add_to_cart' THEN event_at END) AS last_add_at,
MAX(CASE WHEN event_type IN ('purchase', 'cart_remove') THEN event_at END) AS last_purchase_at
FROM {{ ref('fct_events') }}
WHERE DATE(event_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 2 DAY)
GROUP BY 1, 2
)
SELECT
user_id,
session_id,
last_add_at,
TIMESTAMP_DIFF(CURRENT_TIMESTAMP(), last_add_at, MINUTE) AS minutes_since_abandon
FROM cart_events
WHERE
last_purchase_at IS NULL -- 購買・削除なし
AND TIMESTAMP_DIFF(CURRENT_TIMESTAMP(), last_add_at, MINUTE) BETWEEN 50 AND 70 -- 約1時間後
次のステップ
発展問題: セグメント別(優良顧客 vs 新規顧客)でKPIを分解し、配信戦略を変える設計を考える
- 参考: Product Requirements Document (PRD) ベストプラクティス
- 参考: Jobs-to-be-Done フレームワーク
今日のまとめ
ファネルを正確に辿ることで施策の定量的な価値を示せる。PRDは「何をしないか(Out of Scope)」を明示することがステークホルダーとの認識齟齬を防ぐ最大のポイント。