vs-and-alternatives について
vs-and-alternativesは、製品チーム向けにリポジトリ内の競合比較、代替製品、ペルソナ別リストページを作るコンテンツ作成スキルです。検証済みの根拠を示し、競合製品が適する状況も説明します。
主な機能
- 01乗り換え理由の収集と検証
- 02比較、代替製品、ペルソナ別ページの作成
- 03価格計算と移行手順の追加
- 04競合情報の出典と確認日の記録
- 05ルート作成とナビゲーションへの追加
- 06AI検索向けプロンプト追跡の計画
活用シーン
- 01失注につながる競合との比較ページ作成
- 02具体的な根拠に基づく代替製品ページの公開
- 03技術スタックや購入者像に沿った選定リストの作成
MCP 対応
READMEでは、ChatGPT、Perplexity、Geminiで比較・代替製品のプロンプトが引用される状況を追跡するAI SEO TrackerのMCPエンドポイントを紹介しています。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ illyism/ seo-skills --skill vs-and-alternativesインストール後、Claude Code で/vs-and-alternativesを入力して読み込まれたか確認します。
詳細
VS と代替ツール
購入検討者が乗り換える具体的な理由を見つけられ、AI アシスタントが引用できる具体的な事実を示す比較ページを作成します。出力は、ユーザーのリポジトリに追加され、ナビゲーションに組み込まれる新しいルートです。ルートがないプランは実行失敗です。
一般的な比較ページが失敗する理由
「どちらのツールも優れており、ニーズによって異なります」と書かれたページでは、誰も購入に至りません。購入検討者は、両方のツールが存在することをすでに知っています。/vs/ にたどり着いたのは、現在使っているツールに不満があるからですが、そのページは不満の内容を明示していません。
同じページは AI 検索でも失敗します。ChatGPT、Perplexity、Gemini は、具体的で検証可能な説明を引用します。「BillStack の無料プランでは、アクティブなクライアントは最大 5 件です」「invoicekit.io はすべての請求書を CSV と UBL でエクスポートできます」などです。両方に緑のチェックマークが付いた機能比較表には、引用できる事実がひとつもないため、モデルは他のページを引用します。
このスキルで作成するすべてのページには、競合に関する、出典付きの具体的な事実を少なくとも 5 件、競合のほうが適している状況を少なくとも 3 件含める必要があります。
収集する入力情報
PRODUCT: name, domain, pricing page URL, seat model
COMPETITORS: 3-8 names the user loses deals to (ask; do not guess from memory)
REPO: framework (Next.js app/pages, Astro, Hugo, plain MDX), content dir, nav + footer component paths
EXISTING: any current /vs/, /compare/, /alternatives/ routes (consolidate, never duplicate)
リポジトリに比較ページがすでにある場合は、まずそのうち 1 つを読み、コンポーネント、フロントマター、CTA のスタイルを合わせてください。
判断ツリー:作成するページの種類を選ぶ
Competitor X
├── Buyers search "[X] alternative" or "[X] alternatives" (check SERP or keyword tool)
│ └── Ship /[x]-alternative (buyer is leaving X; lead with switching triggers + migration)
├── Buyers search "[You] vs [X]" or "[X] vs [You]"
│ └── Ship /vs/[x] (buyer is choosing; lead with the 2-sentence verdict + pricing math)
├── Both queries have demand
│ └── Ship both. /vs/ = head-to-head. /-alternative = list of 4-7 options with you at the position you honestly earn.
├── Neither query has demand AND X is a minor player
│ └── Skip. Fold X into a persona listicle row instead.
└── You lose to X on every trigger you found
└── Do not ship. Fix the product or pick a different competitor. A dishonest page gets caught in one Reddit thread.
ステップ 1:公開情報から不満や乗り換えのきっかけを探る
乗り換えのきっかけとは、顧客がツールを使わなくなる、繰り返し発生し、検証可能な理由です。公開されている情報のみから収集してください。
情報源(優先順)
- G2、Capterra、Trustpilot: 過去 12 か月の 1 つ星と 2 つ星のレビューに絞り込みます。
- GitHub Issues(開発者向けツールやオープンコア製品の場合):リアクション数の多い順に並べ替え、
is:openとbugまたはfeature requestのラベルで絞り込みます。 - Reddit:
site:reddit.com "[X]" (switched OR leaving OR alternative OR "moved away")。 - 競合自身の料金ページ、変更履歴、ドキュメント: 制限や料金の一次情報です。
調査する乗り換えのきっかけのカテゴリ
PRICING seat minimums, per-seat jumps at 5/10/25, forced annual billing, surprise overage fees
LOCK-IN auto-renewal with 60-90 day cancel windows, no data export, proprietary formats
LIMITS API rate limits, monthly send/request caps, row limits, storage caps
SUPPORT ticket-only support on lower tiers, multi-day response times
PRODUCT missing integration, abandoned feature, breaking API changes, slow UI
検証条件(ページに乗り換えのきっかけを載せる前に、すべて満たす必要があります)
- 繰り返し発生していること: 過去 12 か月以内に、独立した不満の声が少なくとも 3 件あること。怒りのこもったレビューが 1 件だけでは単なる逸話であり、掲載すると訂正依頼を招きます。
- 最新であること: 今日の時点で、競合の公開料金ページまたはドキュメントを確認してください。競合は問題を修正することがあり、古い情報はページの信頼性を損ないます。
- 感情ではなく事実であること: 「サポートはひどい」を、「Starter プランのサポートはメールのみです(出典:料金ページ、確認日:2026-11-12)」のように書き換えてください。
- 出典があること: すべての主張について、URL と確認日を記録してください。
下書きを作成する前に、調査結果を seo/competitors/[x].md に記録してください。
# [X] switching triggers
Checked: 2026-11-12
| Trigger | Category | Evidence (URL) | Count (12 mo) | Verified on live page |
| --- | --- | --- | --- | --- |
| 3-seat minimum on Team plan | PRICING | [pricing page] | 7 reviews | yes |
| No CSV export on Starter | LOCK-IN | [docs], [G2 x4] | 4 reviews | yes |
Where X wins (keep these honest):
- Larger template library
- SOC 2 Type II report available on request
- Native Salesforce sync
ステップ 2:誠実な比較ページを作成する
/vs/[x] の必須セクション順
-
H1:
[You] vs [X]:[一行で示す違い]。例:invoicekit.io vs BillStack:定額料金とクライアントごとの料金体系。 -
最初の50語以内に、2文で結論を述べます。 1文目では、どのような場合にXが適しているかを述べます。2文目では、どのような場合に自社製品が適しているかを述べます。競合製品の強みから始めると、ページ全体の信頼性が高まり、AI検索では冒頭の語句が最も重視されます。
組み込みの給与計算機能とモバイルの勤怠トラッカーが必要なら、BillStackを選びましょう。10社を超えるクライアントに請求し、定額料金、CSVおよびUBLへのエクスポート、すべてのプランで使えるAPIを求めるなら、invoicekit.ioを選びましょう。
-
乗り換えのきっかけをまとめた表(ステップ1から、4~8行):
きっかけ | [X] | [You] | 出典。 -
1、5、25席での料金計算(または、クライアント数、送信数、イベント数など、製品の実際の単位)。各チーム規模で強制的に選ぶことになるプランの月額料金を示します。
チーム規模 [X] のプラン+月額料金 [You] のプラン+月額料金 年間の差額 1席 Starter、$19 Solo、$12 $84 5席 Team(最低3席)、$95 Team、$40 $660 25席 Business、$625 Team、$150 $5,700 表の下に、料金ページのURLと確認日を脚注として記載します。競合にも自社にも有利になるように、金額を丸めてはいけません。
-
「[X] から10分で乗り換える」: Xでの正確なエクスポート手順と、自社製品でのインポート手順を含む番号付きの移行ステップを記載します。10分でインポートできない場合は、実際にかかる時間を記載します。
-
[X] のほうが適している場合:「Xが優れている点」のリストから3項目以上の箇条書きを記載します。このセクションは必須です。
-
FAQ: Redditやレビューの調査から抽出した質問を3~5個、購入者が尋ねるような言い回しで記載します。
-
CTA: 一般的な
Get startedではなく、移行内容に合った主要なアクション([X] からインポート)にします。
/[x]-alternative の違い
- まず、乗り換えの主なきっかけを2~3個、平易な言葉で述べてからリストを続けます。
- 実際の代替製品を4~7個リストアップします。対象ページのきっかけに照らして、自社製品が適切な順位に来るようにします。
- 各項目は、結論、最適な用途、トレードオフ、開始価格を含む、単独で完結したブロックにします。ブロックを個別に完結させることで、LLMが別のツールの欠点を自社製品のものと誤って結び付けるのを防げます。
厳守事項
- 出典のない競合製品についての主張は一切しません。料金が確認できない場合は、料金ページへのリンクを付けて「[X] の料金ページを確認してください」と記載します。
- 競合製品のロゴやアプリUIのスクリーンショットは使いません。テキストと自社製品のスクリーンショットを使用します。理由:競合製品のロゴやUIのスクリーンショットは、商標権侵害による削除要請の原因となり、競合がUIを更新するたびに古くなります。
- 執筆当日にドキュメントを確認せず、競合製品に機能がないと主張してはいけません。
titleは60文字以下、descriptionは140~160文字とし、どちらにも[You] vs [X]または[X] alternativeを含めます。理由:60文字を超えるタイトルは、Googleの検索結果で違いを示す部分が省略されます。
ステップ3:マイクロペルソナ別リスティクルへの展開
効果がある理由
AIアシスタントは、購入者のチャットを検索前に複数の絞り込まれた検索クエリへ書き換えます。「Next.jsでインディーSaaSを作っていて、パスワードリセットメールを送りたい」と入力する創業者が検索するのは、「最適なメールAPI」よりも「Next.jsのインディーSaaS向け最適なトランザクションメールAPI」に近いクエリです。広範なクエリでは、実績あるリスティクルが50件も競合しています。一方、絞り込まれたクエリには専用ページがないことも多く、正直で具体的なリスティクルを1つ作るだけで、数週間以内に検索で取得され、引用される可能性があります。
ペルソナの選定手順
- 登録データ、営業電話、オンボーディング時の回答から、実際の購入者の状況を特定します。技術スタック、チーム規模、業界、予算、コンプライアンス要件などを確認します。
- 情報を組み合わせて、
[カテゴリ]:[ペルソナ/技術スタック] 向けのおすすめの候補を作成します。例:静的なAstroサイト向けのおすすめフォームバックエンド(formspark.dev)EUのフリーランス開発者向けのおすすめ請求書ソフトウェア(invoicekit.io)Railsのサイドプロジェクト向けのおすすめデプロイプラットフォーム(deployfast.dev)
- 各候補を次の条件で判定します。
Candidate persona listicle
├── You are a top-3 honest pick for this persona
│ ├── No dedicated page ranks for the exact phrase → SHIP (highest priority)
│ └── 1-3 thin pages rank → SHIP, out-specific them with stack-level detail
├── You are a fit but not top-3
│ └── Ship only if you can name a sub-case where you win; otherwise skip
└── You are not a real fit
└── Skip. A listicle that ranks you #1 for a persona you don't serve gets you cited once and churned forever.
- 1回につき、ペルソナ別リスティクルを4~6件公開します。1回の公開数が6件を超えると、それぞれに必要な調査の質が薄れます。
ペルソナ別リスト記事の構成
- H1 はペルソナのフレーズと完全に一致させます。
- 導入段落:このペルソナにとって最適なツールと、その理由を示す1文の結論を記載します。
- 4〜7個のツールを、上記の自己完結したブロック形式でそれぞれ紹介し、ツールごとにペルソナに特化した詳細を1つ記載します(例:
SDKなしで Next.js Server Actions と連携できます)。 - このペルソナにとって重要な3〜5個の基準を列挙する「選定方法」セクションを設けます。
ステップ4:ルートを追加する
リポジトリのフレームワークに合わせます。Next.js App Router リポジトリでの標準的な構成:
content/vs/[x].mdx # one file per competitor
content/alternatives/[x].mdx
content/best/[persona-slug].mdx
app/vs/[competitor]/page.tsx # generateStaticParams over content/vs/*
app/[slug]/page.tsx # or app/alternatives/[x]/page.tsx if the repo avoids root catch-alls
app/best/[slug]/page.tsx
各比較ファイルのフロントマター:
---
title: "invoicekit.io vs BillStack: Flat Pricing vs Per-Client Tiers"
description: "BillStack wins on payroll. invoicekit.io wins on flat pricing, CSV and UBL export, and API access on every plan. Pricing math at 1, 5, and 25 seats."
competitor: BillStack
competitorUrl: https://billstack.io
checkedAt: 2026-11-12
sources:
- https://billstack.io/pricing
---
続いて、ページを見つけられるようにします。
- フッターに
Compare列を追加し、すべての/vs/ページと/-alternativeページへのリンクを掲載します。フッターのリンクにより、サイト内のどの URL からもすべての比較ページをクロールできるようになります。 - 各比較ページの1行の結論を掲載した
/vsインデックスページを追加します。 /pricingページから、価格差が最も大きい比較ページへの文脈に沿ったリンクを1つ追加します。- リポジトリでサイトマップを手動生成している場合は、新しい URL をそれぞれ追加します。
- リポジトリをビルドし、引き継ぐ前に壊れたルートや MDX エラーを修正します。
出力
実行のたびに、以下を含めます。
-
出典と確認日を記載した
seo/competitors/[x].mdトリガーファイル。 -
承認された各
/vs/、/-alternative、/best/ページの新しい MDX ファイルとルートファイル。 -
フッター、
/vsインデックス、/pricingのリンク編集。 -
チャット内のサマリーテーブル:
| Route | Target query | Facts cited | Where competitor wins (count) | Status |
追跡して効果を高める
- AI SEO Tracker(MCP:
https://aiseotracker.com/api/agent/mcp):[You] vs [X]、[X] alternative、およびBest [Category] for [Persona]のフレーズを追跡対象のプロンプトとして追加し、ChatGPT、Perplexity、Gemini が新しいページを引用し始める時期や、代わりにどのサードパーティーのリストを引用するかを確認します。 - LinkDR(
https://linkdr.com/SKILL.md):AI の回答がすでに引用している独立した「[X] alternatives」リスト記事に、自社製品を掲載してもらいます。自社の/[x]-alternativeページも情報源の1つですが、独立した5つのリストに掲載されることが、モデルに標準で推奨されるための鍵です。
してはいけないこと
- 「どちらのツールも優れています」と書いたり、勝者を挙げない結論を出したりしない
- 確認した日より古い競合他社についての主張を公開しない
- 対象としていないペルソナ向けのリスト記事で、自社を1位にしない
- 「[X] のほうが優れている点」セクションのない比較ページを公開しない
- ルートファイルを作成せず、コンテンツ計画だけで終わらせない