Market Research (Demand-side)
ベトナムにおける1つのニッチ/ビジネスアイデアの真の需要を測定 — 意見ではなく、キーワード、マーケットプレイス、コミュニティを通じたデータの三角測量に基づきます。アウトプットは、エビデンス付きの100点満点のニッチスコアと、Go/No-Goの意思決定です。
最初の原則: 各重要な主張(需要、競合、収益化)は、3つ以上の独立したソースによるサポートが必要です。1ソース = 逸話。2 = 偶然。3 = シグナル。三角測量できない場合は「エビデンス弱い」と記載し、信頼性を引き下げます — 決して捏造しないでください。
このスキルが適している場合
- ユーザーが具体的なニッチアイデアを持っており、時間やお金を投資する前に検証したい場合
- ユーザーにニッチがなく、ブレインストーミングしてポートフォリオからトップを選びたい場合
- ユーザーがベトナムのソロプレナー向けの現実的なTAM/SAM/SOMを必要としており、企業規模ではない場合
- ユーザーが「誰がすでにやっているか」、「いくらか」、「どのようにポジショニングしているか」を知りたい場合
このスキルでは行わない(別のスキルを使用)
| 行うべきタスク | 使用するスキル |
|---|---|
| マクロPESTEL、ファイブフォース、業界トレンド | vpd-environment-map |
| カスタマープロファイル、JTBD、Pains/Gains | vpd-customer-profile-builder |
| ビジネスモデルのストレステスト | vpd-bm-stress-test |
| カスタマーインタビューの設計 | vpd-customer-discovery-interview |
| オファーのパッケージング(Hormozi式) | vpd-offer-packaging-alex-homozi |
ワークフロー
モード A — ニッチがすでにある場合、検証が必要(2-3時間)
フェーズ1をスキップ。フェーズ2 → フェーズ4を実行。これが最も一般的なユースケースです。
モード B — ニッチがない場合、発見して選択する必要がある(4-6時間)
フェーズ1 → 2 → 4。1〜2候補に絞り込まない限り、フェーズ3はスキップします。
モード C — 検証済みで、TAM/SAM/SOMの試算が必要な場合(1時間)
フェーズ3のみ。リファレンス tam-sam-som-vn.md を参照。
| フェーズ | 目標 | アウトプット |
|---|---|---|
| 1. 発見 | 5つのソースから50以上の候補キーワード/ニッチをブレインストーミング | シードリスト |
| 2. シグナル | 各候補に対して4つの需要シグナルを測定 | エビデンステーブル |
| 3. 試算 | トップ1〜2ニッチのTAM/SAM/SOM | 試算モデル |
| 4. スコアリングと意思決定 | 100点満点のニッチスコア + Go/No-Go | 意思決定レポート |
ライブリサーチプロトコル(ツールの使用が必須)
モデルにはカットオフがあります。検索ボリューム、競合リスト、価格は四半期ごとに変わります。推測 = 誤り。
ステップ 1 — 各リサーチで、これらの6/10のクエリを必ず実行
$ニッチ をベトナム語と英語のキーワードに置き換えてクロスチェックします。すべてのファインディングには、本日の日付(コンテキストから取得、レポートにハードコードしない)でタイムスタンプを付けます。
"$ニッチ コース vietnam" → 誰かが教えている/コースを販売しているか
"$ニッチ shopee.vn" → マーケットプレイスの活動(売上、レビュー)
"$ニッチ unica.vn OR edumall.vn OR gitiho.vn" → ベトナムのコースプラットフォーム(受講生数、価格)
"$ニッチ tiktok.com vietnam" → TikTokハッシュタグとクリエイター(発見 #1 Gen Z VN 2026)
"$ニッチ threads.net vietnam" → Threads VN(AI/テック系クリエイターが移行中、競合が少ない)
"$ニッチ zalo OR shopee live vietnam" → Zaloミニアプリ + ライブストリーム販売(ベトナム固有チャネル)
"$ニッチ site:reddit.com OR site:facebook.com" → ペインポイント + センチメント
"$ニッチ facebook group vietnam" → コミュニティシグナル
"$ニッチ google trends vietnam" → トレンド方向性
"$ニッチ いくらですか" → 価格ベンチマーク
必須: 1つ以上のクエリはTikTok/Threadsを含めること — これらは2026年のベトナム人バイヤーが多くのニッチ(AIツール、美容、金融、子育て)で実際に情報収集に使うチャネルです。Google検索に頼るだけでは最大の需要シグナルを見逃します。
ステップ 2 — WebFetchで正確な数字を抽出
検索後、具体的なURLを取得して正確なデータを抽出します(言い換えない):
- コースページ → 価格、受講生数、レビュー数、インストラクターの資格
- Shopeeの出品 → 「販売数X」、価格帯、トップセラーストア
- FB Ads Library (facebook.com/ads/library、VNでフィルタ) → アクティブな広告クリエイティブ、広告費シグナル
- 競合の価格ページ → 正確なティア価格、ボーナス、保証
ステップ 3 — 手動ツール(ログインが必要な場合はユーザーをガイド)
| ツール | URL | 取得するもの |
|---|---|---|
| Google Trends VN | trends.google.com (地域: ベトナム) | 5年間のトレンド方向性、関連する急上昇クエリ、地域ホットスポット |
| Google Keyword Planner | ads.google.com (無料アカウント) | 月間検索ボリューム、CPC、競合レベル |
| FB Ads Library | facebook.com/ads/library (国: VN) | アクティブな競合広告、クリエイティブアングル |
| Shopee Sales Filter | shopee.vn → 販売数で並べ替え | トップセラーの売上、価格帯、レビューパターン |
ユーザーの操作が必要な場合、「Xに行き、Yを実行し、テンプレートZに従ってデータをコピーしてください」という形式で出力します。
ステップバイステップの詳細と数字読み取りの閾値: vn-data-sources.md
ニッチスコア 100 — 7つの次元(2026-05-17改訂)
7つの次元、重みは不均等。各スコアにはエビデンスの添付が必須(URLと具体的な数値)、「私の考え」は禁止。
| # | 次元 | 最大値 | 測定対象(1行) |
|---|---|---|---|
| 1 | 問題の深刻度 | 15 | 痛みの強度 × 頻度 × 緊急性 × 失敗試行回数(飢えた群衆) |
| 2 | WTPとユニットエコノミクス | 20 | 直接支払いシグナル + 手数料控除後マージン + LTV / バックエンドラダー + 価格帯の適合性 |
| 3 | 検索需要 | 12 | プライマリーキーワード + ポートフォリオのベトナム語・英語の累積ボリューム |
| 4 | トレンドとタイミング | 10 | 5年間の方向性 + 採用曲線上の位置 |
| 5 | 競合と防御可能性 | 15 | スイートスポット10ポイント(アクティブ vs 停滞) + 不公正優位性/堀 5ポイント |
| 6 | チャネル・マーケットフィット | 15 | 各チャネルのオーディエンス + クリエイターコンテンツのネイティブフィット + 実行可能なCAC (LTV/CAC ≥ 3) |
| 7 | パーソナルアラインメント | 13 | 専門知識 + 持続可能性 + ネットワークアクセス |
| 合計 | 100 |
なぜ再重み付けしたのか(以前の5×20版と比較して): 以前の版では検索需要とトレンドに各20ポイントを与え、スコアの40%を1つの相関したシグナルタイプに集中させており、問題の深刻度/チャネルCAC/防御可能性が大幅に不足していました。新版では、ビジネスモデルの実行可能性に基づいた意思決定を促し、単に「検索している人がいるか」ではありません。WTPとユニットエコノミクスは最も高い重み(20)を維持しています。これは、お金を稼げるかどうかに関する最も真実のシグナルだからです。
ベトナムのボリュームに関する注意: 検索需要の閾値は、アメリカの考え方より約60%低くなります — ベトナムのキーワードボリュームは、同じ概念でアメリカの15〜30%であることがよくあります。オーディエンスがテクノロジーに精通している場合(プログラマー、デザイナー)、英語のボリュームがポートフォリオの50〜70%を占める可能性があります → 両方の言語を累積します。
飽和状態の反転: 総数ではなく「直近12ヶ月のアクティブな競合」をカウントします。Unica/Edumallは50以上のコースを表示することが多いですが、トップコースは18〜24ヶ月前のもので、インストラクターが更新していない場合があります → 事実上のスイートスポットであり、飽和状態ではありません。フィルタ: コース更新 <12ヶ月 + 最終レビュー <6ヶ月 = 「アクティブ」。
総収入から純収入への調整: マーケットプレイスのコース収益 ≠ インストラクターの手取り。Unica/Edumallは収益の30〜50%をシェアします。ベトナムのオンラインコースの返金率は5〜12%。コース充足のためのFB広告費は収益の30〜60%。「トップコース 1.2K × 899K = 10億収益」は実際にはインストラクターに約250〜400Mの純収入です。収益化スコアは総収入ではなく純収入で計算します。
意思決定ティア:
| スコア | 評決 | アクション |
|---|---|---|
| 80-100 | 強いGo | リソースを投入、優先的に進める — ただし、完全構築前に下記のWTPスモークテストゲートを必ず通過すること |
| 60-79 | 確実なGo | 必須: WTPスモークテストゲート + 500万VND以上の構築前に10件のカスタマーインタビューを実施 |
| 40-59 | 限界 | パーソナルアラインメント ≥10 かつ チャネル・マーケットフィット ≥10 の場合のみ進行。ハードマイルストーンと反証トリガーを設定 |
| <40 | パス | フェーズ1に戻り、別のニッチを選択 |
次元別の詳細ルーブリックと実例: niche-scoring-100.md
WTPスモークテストゲート(スコア60-79では必須、80以上では任意)
スコアが高くても、誰もあなたの価格帯でお金を払ったことがなければ = 仮定であり、検証されていません。最も安価なスモークテスト:
- 1ページのランディングページを構築(1〜2日で
ui-ux-pro-maxを使用) — プロミスとCTA「ウェイトリストに登録 / アーリーバード席を確保」のみ、ユーザーが実際に販売したい価格で表示。 - 200〜500のウォームトラフィックを誘導 オーガニックコンテンツ + 50万〜200万VNDのFB広告テスト経由。
- 数字を読む:
- ウェイトリスト登録 ≥ウォームトラフィックの5% = WTPシグナル有効 → MVPに進む
- プリペイ/デポジット ≥1% = 最強のWTPシグナル → 本格ローンチに進む
- 登録 <2% = WTP弱い → 価格を30〜50%下げるか、オファーをピボットするか、中止する
- レポートに数字を文書化 — これはマーケットプレイスデータよりも強力なティアAのエビデンスです。
反証プロトコル(プレモーテム — アウトプットに必須)
スコアリング後、ユーザーに、支出前に事前に中止基準をコミットさせます:
「90日以内に、どの3つのシグナルが現れたら、ダブルダウンする代わりにこのニッチを中止すべきですか?」
トリガーの例:
- 500トラフィック後ウェイトリストコンバージョン <1% = WTP失敗
- 30日以内にオーガニックコンテンツが5Kリーチを達成したものが0 = チャネル・マーケットミスマッチ
- 2つの大規模競合が同時に同じオファーをローンチ = ウィンドウクローズ
- パーソナルコスト: 週40時間超 × 90日間で収益が2000万VND未満 = バーンアウトライン
このプレモーテムはレポートに含める必要があります。プレモーテムなし = 意思決定の規律なし。
ソロプレナー向けTAM/SAM/SOM(ベトナム)
TAM = 総潜在購入者数(VN) × 平均価格
SAM = TAM × 地理% × デモ% × サイコ%
SOM 1年目 = SAM × 現実的なシェア%(ソロクリエイター)
妥当性チェック(レッドフラグ):
- SOM 1年目 < 1億VND → ニッチが小さすぎてソロでは難しい、ピボットまたは価格を上げる
- SOM > 市場シェア1% → 楽観的すぎる、前提を見直す
- TAM/SOM > 1000倍 → 市場が細分化されすぎていて、シェア獲得が困難
実例(AIコース、英語コース、フリーランスコース): tam-sam-som-vn.md
アウトプット — JSONがデータ、HTMLがJSONを読み込む
スキルを実行するたびに、2つのプライマリファイルを output/<slug>/ に生成する必要があります:
01-niche-research.json— 単一の信頼できる情報源(機械可読、ダウンストリームコンシューマー + diff/grep対応)。スキーマは以下を参照。01-niche-research.html—templates/niche-report.htmlをそのままコピーし、編集しない。テンプレートが自動的に./01-niche-research.jsonを取得し、レーダーチャート7次元 + スコア進行バー + TAM/SAM/SOMファネル + ユニットエコノミクスウォーターフォール + ラダー + WTPスモークテスト計画 + プレモーテム + タイムラインを自動レンダリングします。
Markdownレポート(01-niche-research-report.md)はオプション — ユーザーが明示的に要求した場合、またはダウンストリームスキルにgrepワークフローが必要な場合のみ生成します。デフォルトではJSON + HTMLで十分です。
アウトプット生成手順
mkdir -p output/<slug>
cp .claude/skills/market-research/templates/niche-report.html output/<slug>/01-niche-research.html
# スキルは以下のスキーマに従って01-niche-research.jsonを書き込みます(Writeツールを使用)
ユーザーがブラウザでHTMLを開く → JSONを取得 → 自動レンダリング。印刷 → クライアント提出用PDF。
file:// ブラウザに関する注意: ブラウザは file:// での fetch() をブロックします(CORS)。3つの開き方:
- (a)
cd output/<slug> && npx serve .を実行し、http://localhost:3000/01-niche-research.htmlを開く - (b) VSCode Live Server(右クリック → 「Open with Live Server」)
- (c)
file://経由でHTMLを開き、バナー内の「📂 JSONファイルを選択」ボタンをクリックして手動で読み込む
JSONスキーマ (01-niche-research.json)
{
"name": "ニッチ名",
"subtitle": "1行のフレーミング — 範囲 + 地域 + オーディエンスを含む",
"date": "YYYY-MM-DD",
"framework": "Niche Score 7-dim v2026-05-17 · 三角測量 ≥3ソース · WTPスモークテストゲート",
"total": 69,
"tldr": ["1行目の評決 + エビデンス", "2行目のリスク", "3行目の次のアクション"],
"scores": [
{ "key": "problem", "label": "問題の深刻度", "score": 11, "max": 15, "evidence": "...", "url": "..." },
{ "key": "wtp", "label": "WTPとユニットエコノミクス", "score": 14, "max": 20, "evidence": "...", "url": "..." },
{ "key": "search", "label": "検索需要", "score": 9, "max": 12, "evidence": "...", "url": "..." },
{ "key": "trend", "label": "トレンドとタイミング", "score": 7, "max": 10, "evidence": "...", "url": "..." },
{ "key": "competition", "label": "競合と防御可能性", "score": 8, "max": 15, "evidence": "...", "url": "..." },
{ "key": "channel", "label": "チャネル・マーケットフィット", "score": 11, "max": 15, "evidence": "...", "url": "..." },
{ "key": "personal", "label": "パーソナルアラインメント", "score": 9, "max": 13, "evidence": "...", "url": "..." }
],
"keywords": [{ "kw": "...", "vol": 0, "cpc": 0, "trend": "up|flat|down", "intent": "...", "src": "..." }],
"signals": [{ "type": "コースプラットフォーム|マーケットプレイス|コミュニティ|FB広告|TikTok|Googleトレンド", "evidence": "...", "source": "スキームなしのURL", "date": "YYYY-MM-DD" }],
"competition": [{ "name": "...", "pos": "...", "price": "...", "strength": "...", "gap": "..." }],
"unitEcon": { "gross": 990000, "platformFeePct": 0.15, "refundPct": 0.08, "marketingPct": 0.25, "ltvBlended": 2450000, "cacCeiling": 815000 },
"ladder": [{ "tier": "トリップワイヤー|コア|プレミアム|定期", "name": "...", "price_display": "..." }],
"funnel": {
"tam": 72000000000, "sam": 9600000000,
"somLow": 120000000, "somBase": 320000000, "somHigh": 680000000,
"tamNote": "...", "samNote": "...",
"somLowNote": "...", "somBaseNote": "...", "somHighNote": "..."
},
"wtpTest": {
"step1": "...", "step2": "...", "step3": "...", "step4": "...",
"proceedRule": "ウェイトリスト≥5% · プリペイ≥1%",
"iterateRule": "ウェイトリスト2-5% — 価格を30-50%下げるかオファーをピボット",
"killRule": "ウェイトリスト<2% · <7日間トラフィック"
},
"premortem": ["トリガー1", "トリガー2", "..."],
"timeline": [{ "period": "1-2週目", "action": "...", "output": "...", "metric": "..." }]
}
小さな規則:
evidenceはインラインの**太字**をサポート — HTMLレンダリングで<strong>になります。signals[].sourceはスキーム不要 — JSが自動的にhttps://を先頭に追加します。- オプションフィールド(TAMノート、ラダー、wtpTestステップ) — 存在しない場合、HTMLはプレースホルダーをレンダリングするかスキップします。
- 完全な実例: templates/niche-report.sample.json — ニッチ「ベトナム人フリーランスライター向けAIツール」 69/100。
Markdownテンプレート(明示的なリクエストがあった場合のみ生成)
# ニッチリサーチレポート: $ニッチ
**日付:** $YYYY-MM-DD | **ステータス:** [強いGo / 確実なGo / 限界 / パス]
## TL;DR(3-5行)
[評決 + 主要エビデンス1行 + 最大リスク1行 + 推奨される次のアクション]
## キーワードポートフォリオ
| キーワード | ボリューム/月 | CPC | トレンド | 意図 | ソース |
|---|---|---|---|---|---|
| プライマリー: ... | ... | ... | ↑/→/↓ | ... | [キーワードプランナー/トレンド] |
| セカンダリー 1-5 | ... | ... | ... | ... | ...
…
[翻訳のため省略]