aa-segment-performance-comparator について
aa-segment-performance-comparatorは、Adobe Analyticsの利用者向けに、複数のオーディエンスセグメントの主要指標を比較するスキルです。訪問数の背景情報も示し、指標ごとの上位・下位と差の幅を算出します。
主な機能
- 01最大4セグメントの比較
- 02最大6指標の比較
- 03セグメント別訪問数と割合の表示
- 04指標ごとの上位・下位の特定
- 05差の算出と有意な差の表示
活用シーン
- 01モバイルとデスクトップの訪問者比較
- 02新規訪問者とリピーターの分析
- 03流入元ごとの指標差の評価
MCP 対応
Adobe AnalyticsのMCPツールを使ってレポートスイートを選び、セグメントと指標を検索し、指標値と訪問数の背景を得るレポートを実行します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ adobe/ skills --skill aa-segment-performance-comparatorインストール後、Claude Code で/aa-segment-performance-comparatorを入力して読み込まれたか確認します。
同梱ファイルevals/evals.jsontemplate.html
詳細
セグメントパフォーマンスの比較(Adobe Analytics)
主要な指標について、2つ以上のオーディエンスセグメントのパフォーマンスを並べて比較し、訪問者グループごとの行動の違いを把握します。セグメント同士を直接比較して、各指標の勝者、敗者、差を判定し、セグメントの規模を示す別個のコンテキストパネルも表示します。
AA の呼び出し予算: AA の
runReportでは、1 回の呼び出しにつきsegmentIdを 1 つだけ指定できます。N 個のセグメント × M 個の指標を比較するには、N×M 回の呼び出しに加え、セグメント規模のコンテキストパネル用にベースライン呼び出しが 1 回必要です。3 セグメント × 5 指標の場合、呼び出し回数は 16 回です。実用的なパフォーマンスを保つため、セグメントは最大 4 個、指標は最大 6 個に制限してください。開始前に、必ずセグメントと指標の一覧をユーザーに確認してください。
使用する AA MCP ツール
findReportSuites— レポートスイートを選択しますsetSessionDefaults— セッションコンテキストを設定します(reportSuiteId + globalCompanyId)findSegments— 比較対象のセグメントを検索して選択しますfindMetrics— 指標 ID を解決しますrunReport— セグメントごと、指標ごとに 1 回呼び出し、規模のコンテキスト用にセグメントを指定しない呼び出しを 1 回行います
フェーズ 0 — セットアップ
findReportSuites/setSessionDefaultsでレポートスイートを確認します。
findReportSuites(globalCompanyId: "<gcid>", page: 0, limit: 10)
setSessionDefaults(globalCompanyId: "<gcid>", reportSuiteId: "<rsid>")
フェーズ 1 — セグメントの選択
比較するセグメントをユーザーに尋ねます。指定がない場合は、次のように質問します。
「どの訪問者オーディエンスを比較しますか? たとえば、モバイルとデスクトップ、新規とリピーター、有料検索とオーガニック、またはライブラリ内の特定の名前付きセグメントなどがあります。」
各セグメントを検索して確認します。
findSegments(page: 0, limit: 50)
# Filter locally by name. Built-in IDs: "Paid_Search", "Purchasers", "Return_Visits"
注:
findSegmentsはsearchTermパラメーターを受け付けません。すべてのセグメントを取得し、名前でローカルに絞り込んでください。組み込みのテンプレートセグメントには "Paid_Search" のような短い ID があり、runReportのsegmentIdsに直接渡せます。
ユーザーが名前で存在しないセグメントを指定した場合は、まず aa-segment-builder スキルを使って作成するか、検索結果から最も近い既存のセグメントを提案してください。
制限:1 回の比較で使用できるセグメントは最大 4 個です。この制限は事前に伝えてください。
フェーズ 2 — 指標の選択
比較する指標をユーザーに尋ねます。バランスの取れた組み合わせを提案してください。
- ボリューム:
metrics/visits - エンゲージメント:
metrics/pageviews、metrics/bouncerate、metrics/pagespervisit - コンバージョン:
metrics/orders、計算指標として算出するコンバージョン率 - 収益:
metrics/revenue
findMetrics を呼び出して各指標 ID を解決します。
findMetrics(expansions: "componentType,categories", page: 0, limit: 200)
# Filter locally by name. Key IDs: metrics/visits, metrics/revenue, metrics/orders, metrics/bouncerate
制限:指標は最大 6 個です。最終的な一覧をユーザーに確認します。
「5 つの指標について、3 つのセグメントを比較します。この場合、レポート呼び出しが 16 回必要です(3 セグメント × 5 指標 + 規模算出の呼び出し 1 回)。進めてもよいですか?」
フェーズ 3 — 期間の選択
分析期間を尋ねるか、確認します。
- 直近 7 日間(手早く比較する場合に適しています)
- 直近 30 日間(推奨されるデフォルト)
- 直近 90 日間(季節変動を平滑化する場合)
- カスタム期間
フェーズ 4 — 比較レポートの実行
4.1 セグメント規模(コンテキストのみ)
セグメントを指定しない metrics/visits の呼び出しを 1 回実行して全体の母集団規模を取得し、その後、各セグメントについて metrics/visits の呼び出しを 1 回ずつ実行し、全体に占める各セグメントの割合を算出します。これらの規模の値はコンテキストパネルに表示するものであり、比較マトリックスには使用しません。
runReport(
dimensionId: "variables/page",
metricIds: "metrics/visits",
startDate: "<start>",
endDate: "<end>",
limit: 1
)
# allVisitorVisits = summaryData.totals[0]
runReport(
dimensionId: "variables/page",
metricIds: "metrics/visits",
segmentIds: "<segmentId>",
startDate: "<start>",
endDate: "<end>",
limit: 1
)
# segmentVisits = summaryData.totals[0]; shareOfTotal = segmentVisits / allVisitorVisits × 100
metrics/visitsがすでに比較指標に含まれている場合は、その結果を再利用してください。
4.2 セグメントごと、指標ごとの処理
セグメント × 指標の組み合わせごとに、次を実行します。
runReport(
dimensionId: "variables/page",
metricIds: "<metricId>", # note: "metricIds" not "metricId"
segmentIds: "<segmentId>", # note: "segmentIds" not "segmentId"
startDate: "<start>",
endDate: "<end>",
limit: 1
)
# Total = summaryData.totals[0]
合計値は
rows[]ではなくsummaryData.totals[0]から読み取ってください。dimensionIdは必須です。集計値を取得するには、limit: 1を指定して任意のディメンションを使用してください。セグメント ID にはfindSegmentsの生のidフィールドを使用します。
進行状況を追跡します。「セグメント 2/3、指標 3/5 を取得中…」
フェーズ 5 — 比較マトリックスを作成する
マトリックスでは、セグメント同士を直接比較します。ベースライン列はありません。
各指標の行について、次の値を計算します。
| 計算値 | 数式 |
|---|---|
| セグメント値 | runReport の生データ |
| 勝者 | この指標で最良の値を持つセグメント |
| 敗者 | この指標で最悪の値を持つセグメント |
| 差 | (最大値 − 最小値) / 最大値 × 100 |
| 有意? | 差 > 10% の場合は true |
値が低いほど良い指標(直帰率、顧客獲得単価)では、 勝者と敗者の判定を逆にします。最も低い値のセグメントが 勝者です。これらの指標はレポート内で明確に示してください。
5.1 セグメントプロファイルの概要
各セグメントについて、全体的なパフォーマンスプロファイルを計算します。
- 勝利数: このセグメントが1位の指標数
- 敗北数: このセグメントが最下位の指標数
- 最大の優位性: このセグメントが他のセグメントを最も大きな差で上回る指標
- 訪問シェア: コンテキストパネルの総訪問数に占める割合
フェーズ 6 — HTML 比較レポートを生成する
比較レポートをインラインで作成し、
/tmp/aa_segment_comparator_report_<YYYY-MM-DD_HHMMSS>.html に書き込みます。
HTML テンプレート
template.html を読み込み、そのまま使用してください。HTML 構造や CSS を独自に変更せず、
{PLACEHOLDER} トークン({ORG_NAME}、
{DATE_RANGE}、{REPORT_SUITE}、{GENERATED_DATE}、{SEGMENT_NAMES_SUMMARY}、
{SEGMENT_NAME}、{COLOR}、{VISITOR_COUNT}、{NUM_SEGMENTS}、{NUM_METRICS}、
{NUM_SIGNIFICANT}、{OVERALL_WINNER}、{METRIC_NAME}、{VALUE}、
{WINNER_SEGMENT}、{SPREAD}、{INSIGHT_TEXT})を埋め込み、セグメントチップ、
マトリックスの行、インサイトボックスをデータ項目ごとに繰り返すだけにしてください。フェーズ 5 の勝者/敗者ルールに従い、
cell-winner/
cell-loser クラスを使用してください。
セクションタイトル — フェーズ番号なし: HTML レポート内のセクション見出しには、フェーズ番号を 含めないでください。セクション名のみを使用してください(例:「フェーズ 2 — セグメント比較」ではなく「セグメント比較」、 「フェーズ 3 — 指標の詳細」ではなく「指標の詳細」)。
/tmp/aa_segment_comparator_report_<YYYY-MM-DD_HHMMSS>.html に書き込み、開きます。
open /tmp/aa_segment_comparator_report_<YYYY-MM-DD_HHMMSS>.html
インラインの概要(必ず提示)
HTML レポートの後には、必ずテキストの概要を提示してください。
Segment Comparison — [Date Range] | Report Suite: [Name]
Segment Context: Mobile 48,200 visits (38.7%) Desktop 72,400 (58.2%)
Mobile Desktop Winner Spread
──────────────── ─────── ──────── ───────── ──────
Visits 48,200 72,400 Desktop 33%
Bounce Rate 61.4% 40.1% ✓ Desktop 35% ✦
Conversion Rate 1.2% 3.1% ✓ Desktop 61% ✦
Revenue $9,400 $31,200 Desktop 70% ✦
✦ = spread > 10% ✓ = winner
Key findings:
- Desktop converts 2.6× better (3.1% vs 1.2%). Prioritize mobile checkout.
- Paid Search (not shown) has highest CVR at 4.8% — most efficient channel.
ガードレール
- 開始前に、セグメントと指標をユーザーに確認してください。呼び出し 回数は N×M となり、すぐに増える可能性があります。
- 直帰率などの「値が低いほど良い」指標では、勝者の判定を逆にし、 最も低い値のセグメントを勝者とします。レポート内でこれらの指標を 明確に示してください(例:「↓ 低いほど良い」)。
- セグメントの訪問数が非常に少ない場合(< 1,000)、結果の統計的信頼性が 低い可能性があることを記載してください。
- 比較マトリックスにベースラインとの差分率(セグメント対 All Visitors) を表示しないでください。セグメントは総母集団の一部であるため、 件数指標の差分は常にマイナスとなり、誤解を招きます。セグメントの規模には コンテキストパネルを使用してください。
やり取りの例
「コンバージョン指標について、モバイル訪問者とデスクトップ訪問者を比較してください。」
- レポートスイートを確認します。
- セグメントを探します:「モバイルデバイス」と「デスクトップ」(または作成を提案します)。
- 指標を確認します:訪問数、直帰率、注文数、コンバージョン率、売上高。
- 期間:過去30日間。
- 事前確認:「2セグメント × 5指標 + 規模確認1回 = レポート11件です。続行しますか?」
- すべてのレポートを実行し、進捗を知らせます。
- コンテキスト:モバイル = 訪問数48.2k(38.7%)、デスクトップ = 訪問数72.4k(58.2%)。
- マトリックス:デスクトップは5指標中3指標で勝利。コンバージョン率の差は61%。
- HTML レポートを生成して開きます。
- インサイト:「デスクトップは主要なコンバージョンエンジンです。モバイルは訪問数の 39%を占めますが、コンバージョン率は1.2%で、デスクトップの3.1%に対して61%の差があります。 コンバージョンを最も大きく伸ばせる機会として、モバイルのチェックアウト最適化を優先してください。」