seo-competitor-pages について
seo-competitor-pagesは、マーケターやコンテンツチーム向けに、製品比較、代替製品、ベスト製品検索を対象としたランディングページ案を作成するスキルです。SEOとSERPの調査を組み合わせ、機能表、結論、CTAの流れ、構造化データを含む原稿を作成します。
主な機能
- 01比較、代替製品、ベスト製品ページの草案作成
- 02競合キーワードとSERPの調査
- 03ブランド別の機能比較表作成
- 04検索質問からFAQの題材を抽出
- 05JSON-LD形式の構造化データ生成
活用シーン
- 01製品と競合製品の比較ページの草案作成
- 02カテゴリ大手の代替製品ページの準備
- 03特定の読者層向けベスト製品ページの作成
MCP 対応
競合、キーワード、SERPデータの取得にSE Ranking MCP サーバーが必要です。利用可能な場合、Firecrawl MCPで上位ページの確認や競合URLのスクレイピングも行えます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ seranking/ seo-skills --skill seo-competitor-pagesインストール後、Claude Code で/seo-competitor-pagesを入力して読み込まれたか確認します。
詳細
出力例:examples/seo-competitor-pages-linear-vs-jira-20260514/COMPARISON.md
競合比較・代替案ページ
比較検討の意図を持つキーワード(「X vs Y」「X の代替」「Y 向けの最適な X」)をターゲットにした、コンバージョンに最適化されたランディングページを作成します。納品物は、機能比較表、公平な評価、スキーママークアップ、比較検討段階のトラフィックをコンバージョンにつなげる CTA フローを含む、そのまま貼り付けられるページの草案です。
このスキルで作成できるページタイプ
- 「X vs Y」直接比較 — 2 つの製品・サービスを直接比較します。ターゲットキーワード:
[Product A] vs [Product B]。 - 「X の代替案」 — ユーザーの製品をカテゴリのリーダーに代わる N 個の選択肢の 1 つとして紹介する、リスト形式のページです。ターゲットキーワード:
[Competitor] alternativesまたはalternatives to [Competitor]。 - 「Y 向けの最適な X」 — 特定のユースケースや対象者をターゲットにした、用途別のおすすめページです。ターゲットキーワード:
best [category] for [use case]。
前提条件
- SE Ranking MCP サーバーが接続されていること。
- Claude の
WebFetchツールが利用可能であること。 - ユーザーから以下の情報が提供されていること:(a)ユーザーのブランド・製品(ページの主役)、(b)ターゲットとする競合他社(最低 1 社。代替案ページでは最大 5 社まで指定可能)、(c)ページタイプ(ユーザーが指定しない場合はキーワードから自動検出)、(d)ターゲット国(デフォルトは
us)。
プロセス
-
検証とページタイプの判定
- ユーザーの入力から、vs/代替ツール/おすすめを判定します。
- ページタイプが不明確な場合は、ユーザーに確認します。黙って推測してはいけません。
-
競合のコンテキストを取得
DATA_getDomainCompetitors- ユーザーのドメインについて、
common_keywordsの重複度に基づいてオーガニック検索の上位競合を一覧表示します。 - ユーザーが指定した競合が一覧に含まれているか(または近い競合か)を検証します。
- ユーザーのドメインについて、
-
ブランドごとにキーワードデータを取得
DATA_getDomainKeywords- ユーザーのドメインと、指定された各競合について、オーガニック検索キーワードの上位 100 件を取得します。
- 各ブランドが独占的に獲得しているキーワード、両方がランキングされているキーワード、ギャップを特定します。
-
比較対象の SERP を取得
DATA_getSerpResultsおよびDATA_getKeywordQuestions- 「X vs Y」/「X の代替ツール」/「Y 向けのおすすめ X」を対象キーワードとする場合:
- オーガニック検索結果の上位 10 件 — この比較キーワードでほかにランキングされているのはどこか?
- PAA の質問(FAQ セクションのコンテンツに使用します)。
- 強調スニペット(存在する場合は、回答のパターンを記録します)。
- 「X vs Y」/「X の代替ツール」/「Y 向けのおすすめ X」を対象キーワードとする場合:
-
既存の比較ページを取得
WebFetch(必ず実行)+mcp__firecrawl-mcp__firecrawl_scrape(利用可能な場合)- 最初に WebFetch(無料):SERP 上位 3 件の Markdown を取得します。H2 のアウトライン、機能マトリクスの項目、結論のパターン、CTA の配置を抽出します。
- 次に Firecrawl(Firecrawl クレジット 3 件 — 各ページ 1 件):WebFetch の Markdown では確認できない情報を取得します。
<script type="application/ld+json">ブロックからのスキーマタイプ(Product×N、BreadcrumbList、FAQPage、Review、AggregateRating)。metadataのog:title/og:description/og:image/twitter:card。- 実際の HTML からの
<title>とメタディスクリプションの文字数。
- Firecrawl が利用できない場合: WebFetch の処理はそのまま実行します。
evidence/04-existing-pages-teardown.mdの「schema types」の行には(skipped — Firecrawl required for JSON-LD)と記載します。ステップ 8 のスキーマ生成では、上位ページのスキーマを模倣する代わりに、デフォルトのProduct + BreadcrumbList + FAQPageテンプレートを使用します。 - これにより、実際に報酬につながっているパターンに基づいて下書きを作成できます。
5b. 競合を一括スクレイピング mcp__firecrawl-mcp__firecrawl_scrape(任意、オプトイン)
- ユーザーが
--bulk-scrape <urls>を指定するか、(SERP 上位 3 件以外に)直接比較する競合 URL のリストを提供した場合は、Firecrawl で各 URL をスクレイピングします。 - URL ごとに、
<title>、og:*、twitter:*、JSON-LD の@type、ヒーロー画像の有無、料金ブロックの検出($N/mo、€N/moなどの文章内正規表現)、CTA の数、比較表の有無、無料プランへの言及の有無を抽出します。 competitor-elements.csvを出力します — 競合 URL 1 件につき 1 行で、これらのシグナルを記録します。- コスト:URL 1 件につき Firecrawl クレジット 1 件。実行前に見積もりを提示します。
--confirm-costなしで 50 URL を超える場合は実行を拒否します。
-
キーワード比較データを取得
DATA_getDomainKeywordsComparison(ブランドで利用可能な場合)- キーワードの重複を並べて比較します。
-
機能マトリクスを作成
- SERP 上位ページから推定した項目(例:「料金」「無料プラン」「連携」「サポートレベル」「最適な用途」)。
- セルには、✓/✗/一部対応/自動で推定できない項目のプレースホルダー「TBD — PM に確認」を使用します。
- SE Ranking のデータがセルの根拠となる場合(例:「エンタープライズ関連キーワードで X 件ランキング」)、その数値を取得します。
-
統合
COMPARISON.md- ヒーロー(H1 に対象キーワードを含め、バランスの取れたポジショニングにします)。
- TL;DR/結論ボックスを冒頭から 200 語以内に配置します。
- 機能マトリクス。
- 主な項目ごとのセクション(各 H2 が 1 つの項目に対応します)。
- PAA 由来の FAQ(ステップ 4 の質問から上位 3~5 件)。
- 結論/おすすめ。
- CTA の導線。
- スキーマ対応の JSON-LD:
Product(×N)+BreadcrumbList+FAQPage(実際の Q&A がある場合)。
出力形式
以下を含むフォルダー seo-competitor-pages-{target-slug}-{YYYYMMDD}/ を作成します。
seo-competitor-pages-{target-slug}-{YYYYMMDD}/
├── COMPARISON.md (the page draft — primary deliverable)
├── 05-feature-matrix.md (inferred dimensions × brands — load-bearing reference for PMs/writers)
├── schema.jsonld (paste-ready Product + Breadcrumb + FAQ — load-bearing artefact for engineering)
├── 05b-competitor-elements.csv (only if --bulk-scrape ran: competitor URL × on-page-element grid)
└── evidence/
├── 01-competitor-context.md (DATA_getDomainCompetitors — raw step output)
├── 02-keyword-overlap.md (DATA_getDomainKeywords for each brand — raw step output)
├── 03-comparative-serp.md (top 10 + PAA for the target keyword — raw step output)
└── 04-existing-pages-teardown.md (top-3 SERP winners' structure + schema/og — Firecrawl-recovered)
最上位には、COMPARISON.md、05-feature-matrix.md、schema.jsonld を配置します。01~04 のステップファイルには、evidence/ 内に未加工の API/スクレイピング出力を保存します。05b-competitor-elements.csv は、--bulk-scrape を指定した場合にのみ作成されます。
「X vs Y」ページの COMPARISON.md は、次の構成にします。
# {User's Brand} vs {Competitor}: 2026 Comparison
> Updated {YYYY-MM-DD}. Compare {Brand A} and {Brand B} on pricing, features, integrations, and best-fit use case.
## TL;DR
{One paragraph balanced verdict — when to choose A, when to choose B}
## At a glance
| Dimension | {Brand A} | {Brand B} |
|---|---|---|
| Starting price | {$X/mo} | {$Y/mo} |
| Free tier | {✓/✗} | {✓/✗} |
| Best for | {use case} | {use case} |
| Integrations | {n} | {n} |
| Support | {tier} | {tier} |
| ... | | |
## {Dimension 1 header — e.g., Pricing}
{Side-by-side detail, balanced. Avoid hyperbole.}
## {Dimension 2 header — e.g., Features}
{...}
## {Dimension 3 header — e.g., Integrations}
{...}
## {Dimension 4 header — e.g., Support}
{...}
## When to choose {Brand A}
- {scenario 1}
- {scenario 2}
- {scenario 3}
## When to choose {Brand B}
- {scenario 1}
- {scenario 2}
- {scenario 3}
## FAQ
**{PAA question 1}**
{Answer}
**{PAA question 2}**
{Answer}
**{PAA question 3}**
{Answer}
## Get started
{Brand A} CTA — {link}
{Brand B} CTA — {link if balanced; otherwise drop}
## Schema
See `schema.jsonld` — paste into `<head>`.
ヒント
- バランスがコンバージョンにつながります。 ユーザーの製品が常に優れていると装うページは、信頼とランキングを損ないます。公平な評価のほうが、偏った評価より効果的です。
- レート制限を守ってください。ステップ 5(SERP 上位 3 件の取得)では、3 回の WebFetch 呼び出しに加えて、それ以前の MCP クエリも実行します。
- コストの目安:通常は SE Ranking クレジットが約 15~25、ステップ 5 のスキーマ/og ベンチマーク用に Firecrawl クレジットが 3、ステップ 5b で URL ごとに Firecrawl クレジットが 1(オプションの場合のみ)です。
--no-firecrawlを指定すると、両方の Firecrawl ステップをスキップできます。 - スキーマ: 比較ページでは両製品に
Productを使用し、さらにBreadcrumbListを追加します。FAQ セクションが実際の質疑応答である場合(作為的なものでない場合)は、FAQPageも追加します。 - 「X の代替製品」ページでは、ユーザーの製品を第 1 位としてではなく、N 件の選択肢の 1 つとして位置付けます(通常は 5~10 件)。順位付きのリスト記事は、自己宣伝的な代替製品ページよりコンバージョンにつながります。
- 「Y に最適な X」ページでは、ユースケースを明確に分けます。「個人開発者に最適」と「エンタープライズチームに最適」のように分けることで、複数のロングテールキーワードで上位表示を狙えます。
- 公開から 30 日後に
seo-pageを実行し、ランキングの推移を追跡します。 seo-content-auditと組み合わせて、公開前にドラフトの E-E-A-T を確認します。- ステップ 4 で PAA から抽出される FAQ は非常に有用です。実際にユーザーが検索している質問なので、ページ内で回答すると、AIO で引用されやすくなります。
- 自動公開はしないでください。事実確認とブランドボイスの調整のため、ドラフトをライターまたは PM に渡してください。