posthog-survey-creator について
PostHog を使うプロダクトマネージャー向けの、対話型アンケート設計スキルです。PostHog のデータを活用して質問、対象、タイミングを整理し、作成したアンケートは必ず下書きとして保存します。
主な機能
- 01手順に沿ったアンケート設計
- 02目的に応じたテンプレート選択
- 03イベント、プロパティ、既存アンケートの照会
- 04フィーチャーフラグによる対象設定
- 05確認用の下書き作成
活用シーン
- 01NPS、CSAT、CES アンケートの設計
- 02イベント、プロパティ、ページによる対象設定
- 03類似アンケートを確認してから新規作成
- 04フィーチャーフラグを使ったベータフィードバック収集
MCP 対応
PostHog MCP でイベント定義、プロパティ、既存アンケート、フィーチャーフラグを照会し、アンケートを作成します。MCP が利用できない場合は必要な情報をユーザーに尋ね、作成したアンケートは下書きとして保存します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ posthog/ skills --skill posthog-survey-creatorインストール後、Claude Code で/posthog-survey-creatorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
posthog-survey-creator.skillREADME.md.claude-plugin/plugin.jsonreferences/question-examples.md詳細
PostHog アンケート作成ツール
会話形式のやり取りを通じて、PostHog で効果的なアンケートを作成できるようユーザーをガイドします。対象読者は、アンケートの設計、質問の文言、ターゲティング戦略について支援を必要としているプロダクトマネージャーです。
重要なルール
- 1つのメッセージにつき質問は1つだけです。 次に進む前に、ユーザーの回答を待ちます。
- まず PostHog MCP を使用します。 MCP が利用可能な場合は、ユーザーに尋ねる代わりに PostHog に問い合わせて情報を取得します。見つかった情報は必ず提示し、ユーザーに確認してもらいます。
- ユーザーに尋ねるのは MCP が利用できない場合だけです。 MCP ツールにアクセスできない場合に限り、質問に切り替えます。
- 必ず下書きとして作成します。 すぐに公開する選択肢は提示しません。ユーザーが公開前に PostHog で確認できるよう、アンケートは下書きとして作成します。
PostHog MCP の検出
会話の開始時、または PostHog のデータが必要になったときに、MCP ツールの使用を試みます。
posthog:event-definitions-list— 利用可能なイベントを取得posthog:properties-list— イベントまたは人物のプロパティを取得posthog:surveys-get-all— 既存のアンケートを確認posthog:feature-flag-get-all— 関連付けるフィーチャーフラグを取得
MCP が機能する場合: PostHog のデータを使用し、ユーザーに確認を求めます。 MCP が機能しない/利用できない場合: PostHog の設定についてユーザーに直接尋ねます。
会話の流れ
導入:進め方を示す
ユーザーがアンケートの作成を依頼した場合:
"I'll help you create a survey in PostHog. Here's what we'll figure out together:
1. **Goal** – What do you want to learn?
2. **Questions** – What to ask and how
3. **Audience** – Who should see this?
4. **Timing** – When and how often?
Let's start with the goal. **What do you want to learn from this survey?**"
回答を待ちます。
ステップ 1:目的を理解する
質問:「このアンケートで何を知りたいですか?」
次のキーワードに注目し、該当するテンプレートを選びます。
| キーワード | テンプレート |
|---|---|
| "recommend", "loyalty", "NPS" | NPS |
| "satisfied", "satisfaction" | CSAT |
| "easy", "effort", "friction" | CES |
| "disappointed", "product-market fit" | PMF |
| "why signed up", "jobs to be done" | JTBD |
| "price", "expensive", "value" | 価格 |
| "competitor", "alternatives" | 競合情報 |
| "not using", "adoption" | 機能の利用状況 |
| "beta", "new feature" | ベータ版へのフィードバック |
| "trial", "upgrade" | トライアルからのコンバージョン |
| "new user", "intent" | ウェルカムアンケート |
| "onboarding", "getting started" | アクティベーション |
| "inactive", "churned", "win back" | 休眠ユーザー |
| "cancel", "leaving" | 解約/離脱 |
| "support", "ticket" | サポート CSAT |
回答後: 該当するテンプレートを提示するか、カスタムアンケートについて掘り下げてから、次に進みます。
ステップ 2:テンプレートを提示するか、カスタムアンケートについて掘り下げる
テンプレートが該当する場合:
"Based on what you're describing, a **Customer Effort Score (CES)** survey would work well. It measures how easy a task was—lower effort correlates with higher retention.
The standard approach is:
- Q1: Rating (1-7) – 'How easy was it to [task]?'
- Q2: Open text (for low scores) – 'What made this difficult?'
**Does this approach work for you, or would you like to customize it?**"
該当するテンプレートがない場合:
"This sounds like a custom survey—I'll help you design one.
**What's the single most important thing you want to learn?**"
ステップ 3:質問を確定する
カスタマイズする場合は、質問が決まるまで一度に1つずつ尋ねます。
質問が決まったら、確認します。
"Here's what we have:
[list questions]
**Does this look right?**"
ステップ 4:対象者を定義する(MCP を優先)
ここで PostHog MCP が重要になります。MCP が利用可能な場合、イベントやプロパティについてユーザーに尋ねてはいけません。
PostHog MCP が利用可能な場合:
-
まず、ターゲティングについて大まかな質問をします。
"Now let's decide who sees this survey. **Who should see it?** For example: - All users - Users on a specific page - A specific segment (paid users, new users, etc.) - Users who completed a specific action" -
回答に基づいて PostHog に問い合わせ、選択肢を提示します。
アクション/イベントについて言及された場合:
[Use posthog:event-definitions-list to find matching events] "I found these events in your PostHog that might match: - `report_viewed` (1.2k times this month) - `report_created` (340 times this month) - `report_exported` (89 times this month) **Which event should trigger the survey?**"ユーザーセグメントについて言及された場合:
[Use posthog:properties-list with type="person" to find properties] "I found these person properties you could filter by: - `plan` (values: free, pro, enterprise) - `signed_up_at` - `company_size` **Which property should we use, and what value?**"ページについて言及された場合:
"Got it—I'll target users on that page. **What's the URL or URL pattern?** (e.g., '/reports' or contains 'dashboard')" -
既存の類似アンケートを確認する場合:
[Use posthog:surveys-get-all to check for duplicates] "I noticed you already have an 'NPS Survey' running that targets the dashboard. **Should I create a new one, or would you like to modify the existing survey?**" -
フィーチャーフラグに関連付ける場合:
[Use posthog:feature-flag-get-all if user mentions beta/feature flags] "I found these feature flags that might be relevant: - `new-reporting-feature` (currently 30% rollout) - `beta-dashboard-v2` (10% rollout) **Should the survey only show to users with one of these flags enabled?**"
PostHog MCP が利用できない場合(フォールバック):
MCP ツールが機能しない、または利用できない場合は、ユーザーに直接尋ねます。
"I don't have access to query your PostHog directly.
**Do you know the event name for when users [complete the action]?**
(If not, we can target by page URL instead)"
または、プロパティについて尋ねる場合:
"**What's the property name for [plan/segment] in your PostHog?**
(e.g., 'plan', 'subscription_tier', etc.)"
ステップ 5:タイミングを設定する
質問:
"**Should this survey show once per user, or repeat over time?**
- Once is good for most feedback surveys
- Recurring works for NPS (e.g., every 90 days)"
定期的に実施する場合は、追加で尋ねます。
"**How often should it repeat?**"
ステップ 6:確認して作成する
内容を要約し、最終確認を求めます。
"Here's the survey I'll create:
**Name:** [name]
**Questions:**
1. [Q1]
2. [Q2]
**Audience:** [targeting details]
**Schedule:** [once/recurring]
I'll create this as a draft so you can review and adjust the styling in PostHog before launching.
**Ready to create it?**"
確認を待ってから、start_date: null(下書き)を指定して posthog:survey-create を使用します。
ステップ 7:作成後
"Done! Here's your survey: [link]
It's saved as a draft. From PostHog you can:
- Preview how it looks
- Adjust colors and styling
- Launch when you're ready
**Anything else you'd like help with?**"
MCP のクエリパターン
ターゲティング用のイベントを検索する
1. User says: "Users who created a report"
2. Query: posthog:event-definitions-list with q="report"
3. Present matches: "I found `report_created`, `report_viewed`, `report_shared`. Which one?"
4. User confirms
人物のプロパティを検索する
1. User says: "Paid users only"
2. Query: posthog:properties-list with type="person"
3. Look for: plan, subscription, tier, pricing-related properties
4. Present: "I found a `plan` property with values free/pro/enterprise. Should we target `plan` is not `free`?"
5. User confirms
既存のアンケートを確認する
1. Before creating, query: posthog:surveys-get-all
2. Check for similar names or targeting
3. If found: "You have an existing [survey name] with similar targeting. Create new or modify existing?"
フィーチャーフラグを検索する
1. User mentions beta/feature rollout
2. Query: posthog:feature-flag-get-all
3. Present relevant flags: "I found `beta-feature-x`. Link the survey to this flag?"
会話の例(MCP を使用)
ユーザー:「アンケートを作成したいです」
Claude:「PostHog でアンケートを作成するお手伝いをします。一緒に次のことを決めていきましょう。
- 目的 — 何を知りたいですか?
- 質問 — 何をどのように尋ねますか?
- 対象者 — 誰に表示しますか?
- タイミング — いつ、どのくらいの頻度で表示しますか?
それでは始めましょう。このアンケートで何を知りたいですか?」
ユーザー:「新しいエクスポート機能が使いやすいか知りたいです」
Claude:「いいですね!これは**顧客努力スコア(CES)**アンケートにぴったりです。
標準的な方法は次のとおりです。
- Q1(評価:1~7):「エクスポート機能はどのくらい使いやすかったですか?」
- Q2(自由記述、評価が低い場合):「どのようにすれば、もっと使いやすくなると思いますか?」
この内容でよいですか?それともカスタマイズしますか?」
ユーザー:「それで大丈夫です」
Claude:「よかったです。次に、誰に表示するかを決めましょう。
誰にアンケートを表示しますか? たとえば、次のような対象があります。
- 全員
- エクスポート機能を使ったことがあるユーザー
- 特定のセグメント」
ユーザー:「エクスポート機能を使ったことがある人です」
Claude: [q="export" を指定して posthog:event-definitions-list をクエリ]
「PostHog で次のエクスポート関連イベントが見つかりました。
export_completed(今月 2.3k 回)export_started(今月 2.8k 回)export_failed(今月 145 回)
どのイベントをアンケートのトリガーにしますか? ユーザーが操作を完了しているため、export_completed をおすすめします。」
ユーザー:「はい、export_completed です」
Claude:「わかりました。export_completed の後にアンケートを表示します。
このアンケートはユーザーごとに 1 回表示しますか?それとも、時間をおいて繰り返し表示しますか?」
ユーザー:「1 回だけです」
Claude:「作成するアンケートはこちらです。
名前: エクスポート機能 CES 質問:
- 評価(1~7):『エクスポート機能はどのくらい使いやすかったですか?』
- 自由記述(評価が低い場合):『どのようにすれば、もっと使いやすくなると思いますか?』
対象者: export_completed をトリガーしたユーザー
スケジュール: ユーザーごとに 1 回
PostHog で公開前に確認できるよう、下書きとして作成します。
作成してもよいですか?」
ユーザー:「はい」
Claude: [start_date: null を指定して posthog:survey-create 経由でアンケートを作成]
「完了しました!アンケートはこちらです:[リンク]
下書きとして保存されています。プレビューを確認してスタイルを調整し、準備ができたら公開できます。
ほかにお手伝いできることはありますか?」
会話の例(MCP を使用しない場合)
ユーザー:「エクスポート機能を使ったことがある人です」
Claude: [MCP クエリが失敗、または利用不可]
「PostHog に直接クエリを実行できません。エクスポートの完了を示すイベント名はわかりますか?
わからない場合は、代わりに URL で対象を絞り込むこともできます(例:エクスポートページに表示する)。」
ユーザー:「export_done という名前だと思います」
Claude:「わかりました。トリガーイベントには export_done を使います。
このアンケートはユーザーごとに 1 回表示しますか?それとも繰り返し表示しますか?」
質問設計の参考資料
references/question-examples.md を参照してください。
- 実績のある質問を含む 22 種類のアンケートテンプレート
- アンケートの種類ごとのターゲティングに関する推奨事項
- 分岐ロジックの例