user-deep-dive について
顧客との面談準備に使う、PostHog ユーザー調査スキルです。イベントクエリと Vitally の CRM 情報を組み合わせ、製品の利用状況や連絡時の話題をまとめます。
主な機能
- 01メールアドレスと期間で活動を分析
- 02ページ閲覧とインサイト利用を確認
- 03リプレイとエラー追跡の活動を調査
- 04PostHog AI の利用と状況を集計
- 05Vitally でユーザー情報を照合
活用シーン
- 01顧客面談前のブリーフ作成
- 02よく使われる製品領域の把握
- 03連絡に役立つ利用傾向の発見
MCP 対応
PostHog MCP の query-run ツールで分析クエリを実行し、Vitally のツールで CRM 情報を取得します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ posthog/ skills --skill user-deep-diveインストール後、Claude Code で/user-deep-diveを入力して読み込まれたか確認します。
同梱ファイルREADME.md
詳細
メールアドレスで PostHog のユーザーを詳しく分析します。どのような行動をしているか、どこで時間を費やしているか、どの製品を利用しているかを分析します。
入力:$ARGUMENTS(メールアドレス。例:[email protected])
プロセス
ステップ 0:期間を確認する
クエリを実行する前に、ユーザーに次のように尋ねます。
"どの期間を分析しますか?(デフォルト:直近14日間)"
回答がない場合、または「default」と回答した場合は、14日間を使用します。回答を使用して、以下すべてのクエリの {days} を設定します。
ステップ 1:クエリを並行して実行する
query-run MCP ツールを使用して、以下のクエリをすべて同時に実行します。
1. アクティビティの概要 — イベントの内訳(PostHog 内部イベントを除く):
SELECT event, count() as cnt
FROM events
WHERE person.properties.email = '{email}'
AND timestamp >= now() - interval {days} day
AND event NOT IN (
'$feature_flag_called',
'$ai_span',
'$ai_trace',
'$autocapture',
'$web_vitals',
'react_framerate',
'spinner_unloaded',
'replay_parse_timing',
'$dead_click'
)
GROUP BY event
ORDER BY cnt DESC
LIMIT 30
2. ページビュー — 時間を費やしている場所:
SELECT properties.$current_url as url, count() as cnt
FROM events
WHERE person.properties.email = '{email}'
AND event = '$pageview'
AND timestamp >= now() - interval {days} day
GROUP BY url
ORDER BY cnt DESC
LIMIT 25
3. インサイトの詳細 — 閲覧したインサイト/ダッシュボード:
SELECT properties.insight as insight_type, properties.insight_name as name, count() as views
FROM events
WHERE person.properties.email = '{email}'
AND event = 'insight viewed'
AND timestamp >= now() - interval {days} day
GROUP BY insight_type, name
ORDER BY views DESC
LIMIT 20
4. セッションリプレイの閲覧 — 視聴したリプレイ:
SELECT
properties.session_id as session_id,
properties.$current_url as url,
timestamp
FROM events
WHERE person.properties.email = '{email}'
AND event = '$recording_viewed'
AND timestamp >= now() - interval {days} day
ORDER BY timestamp DESC
LIMIT 20
5. エラートラッキングの利用状況 — PostHog のエラートラッキングとの関わり方:
SELECT event, properties.issue_id as issue_id, properties.issue_name as issue_name, count() as cnt
FROM events
WHERE person.properties.email = '{email}'
AND event IN ('error tracking issue viewed', 'error tracking issue resolved', 'error tracking issue assigned', 'error tracking issue suppressed', 'error tracking list viewed')
AND timestamp >= now() - interval {days} day
GROUP BY event, issue_id, issue_name
ORDER BY cnt DESC
LIMIT 20
6. PostHog AI の利用状況 — Max とインサイト分析の回数:
SELECT event, count() as cnt
FROM events
WHERE person.properties.email = '{email}'
AND event IN ('$ai_generation', '$conversations_loaded', 'insight analyzed', 'chat with data opened')
AND timestamp >= now() - interval {days} day
GROUP BY event
ORDER BY cnt DESC
7. Max を開いた場所 — Max を利用したページ/コンテキスト:
SELECT
properties.$current_url as url,
count() as cnt
FROM events
WHERE person.properties.email = '{email}'
AND event = '$conversations_loaded'
AND timestamp >= now() - interval {days} day
AND properties.$current_url LIKE '%posthog.com/project%'
GROUP BY url
ORDER BY cnt DESC
LIMIT 20
ステップ 2:Vitally と照合する
Vitally ツールを使用して、メールアドレスからユーザーを検索し、役職、肩書き、アカウント名、および利用可能な CRM データを取得します。
出力形式
エグゼクティブサマリー
このユーザーがどのような人物か、主に PostHog を何に利用しているか、利用状況から分かる最も興味深い点、または次のアクションにつながる点を盛り込んだ2~3文でまとめます。このユーザーとの通話前に誰かへ概要を伝えるような書き方にします。
プロフィール
- 氏名、メールアドレス、役職/肩書き、LinkedIn(利用可能な場合)
- 所在地(タイムゾーンまたは地域データから)
- 所属アカウント
アクティビティの概要(直近 {days} 日間)
- イベントの合計数、主なイベントの種類
- 実行したクエリ数、閲覧したインサイト数、確認したダッシュボード数、実行したエクスポート数
時間を費やしている場所
- PostHog のプロジェクト(URL からプロジェクト ID を抽出)
- 製品領域(分析、リプレイ、フラグ、LLM 分析、データ管理、エラートラッキングなど)
- 繰り返し閲覧している具体的なダッシュボードやインサイト
ユーザーの行動
- インサイトの名前やパターンを解釈し、どのようなビジネス上の疑問に答えようとしているかを説明します。
- 作成(インサイト、アクション、デスティネーションなど)しているか、利用(ダッシュボードの閲覧、エクスポートなど)しているかを判断します。
- エラートラッキングについて、エラーの解決、割り当て、抑制などを積極的に行っているか、それとも閲覧しているだけかを確認します。
セッション録画
- このユーザーに絞り込んだ PostHog セッションリプレイへの直接リンク:
https://us.posthog.com/replay?filters={"type":"AND","values":[{"type":"AND","values":[{"key":"email","value":["{email}"],"operator":"exact","type":"person"}]}]} - 視聴したリプレイ(クエリ 4)から分かるパターンを要約します。製品のどの部分か、どのくらい最近のものかを記載します。
PostHog AI の利用状況
- Max を開いた回数(
$conversations_loadedの件数)と AI 呼び出し回数($ai_generationの件数)はどのくらいですか? - インサイト分析(
insight analyzed)を利用していますか? - Max を開いた場所は? — クエリ 7 の URL を要約します。URL ごとに製品領域を抽出し(例:
/dashboard/→ 「ダッシュボード」、/sql→ 「SQL エディター」、/insights/→ 「インサイト」、/persons/→ 「ユーザープロフィール」)、件数とともに上位のコンテキストを列挙します。これにより、ユーザーがどのようなサポートを求めているかが分かります。 - LLM Analytics を利用していますか?
アウトリーチの切り口
- 利用状況に基づいて、ユーザーへのアウトリーチで使える話題を2~3個提案します。
- 問題点(クエリの失敗、怒りのクリック、エラートラッキングの急増など)があれば指摘します。
- 関連性があるにもかかわらず利用していない製品があれば記載します。
重要
- クエリを実行する前に、必ず期間を確認してください。
- curl ではなく、PostHog MCP の
query-runツールを使用してください。MCP が利用できない場合に限り、curl にフォールバックしてください。 - Vitally の
lastSeenTimestampデータは古いため、アクティビティの確認には使用しないでください。必ず PostHog のイベントデータを使用してください。 - 時間を節約するため、PostHog のクエリはすべて並列で実行してください。
- PostHog が 503(ビジー)を返した場合は、少し待ってから一度だけ再試行してから、そのクエリを断念してください。
- セッションリプレイのリンクでは、フィルターパラメーターにユーザーの実際のメールアドレスを指定してください。