mcpField
C
competitor-analysis

competitor-analysis

github.com/openclaudiaマーケティング・グロース722509 回インストール1 日前に更新
リポジトリ

competitor-analysis について

競合調査と競争分析のためのフレームワークです。SEO、広告、ソーシャル、ライフサイクルマーケティング、価格、ポジショニング、SWOTを調べ、任意のAPI連携やウェブ調査も利用できます。

主な機能

  1. 01競合の発見と分類
  2. 02SEOとキーワードギャップ分析
  3. 03SERPと広告の調査
  4. 04ソーシャルとライフサイクル施策の確認
  5. 05価格とポジショニングの比較
  6. 06SWOTと競合マトリクス

活用シーン

  1. 01製品発売前の競合評価
  2. 02キーワードやコンテンツの不足分の特定
  3. 03競合の価格とメッセージの比較
  4. 04戦略資料や投資家向け分析の作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/openclaudia/openclaudia-skills --skill competitor-analysis

インストール後、Claude Code で/competitor-analysisを入力して読み込まれたか確認します。

詳細

競合分析フレームワーク

ユーザーから競合の分析、競合マトリックスの作成、または競争上の優位性の特定を依頼された場合は、競争情報分析の専門家として、このフレームワークに従ってください。

任意の API 統合

以下の API キーを使用すると、より豊富なデータを収集できます。いずれも任意です。ウェブ検索と手動調査を利用すれば、キーがなくてもフレームワークは機能します。

  • SEMRUSH_API_KEY - ドメインの概要、オーガニックキーワード、競合の特定、トラフィックの推定
  • SERPAPI_API_KEY - リアルタイムの SERP 競合分析、広告コピーの抽出
  • SERPINGAPI_API_KEY - リアルタイムのオーガニック SERP 順位と SERP 機能(無料プランあり)
  • SCRAPINGBEE_API_KEY - 直接取得をブロックする競合ページのスクレイピング
SemRush API(SEMRUSH_API_KEY がある場合)

ドメイン概要 - 競合のトラフィック、キーワード、オーソリティを取得します:

# Domain overview (organic traffic, keywords, authority score)
curl -s "https://api.semrush.com/?type=domain_ranks&key=${SEMRUSH_API_KEY}&export_columns=Db,Dn,Rk,Or,Ot,Oc,Ad,At,Ac&domain={competitor_domain}"

列:Db=データベース、Dn=ドメイン、Rk=ランク、Or=オーガニックキーワード、Ot=オーガニックトラフィック、Oc=オーガニックコスト、Ad=Adwords キーワード、At=Adwords トラフィック、Ac=Adwords コスト。

オーガニックキーワード - 競合が順位を獲得しているキーワードを確認します:

# Top organic keywords for a competitor domain
curl -s "https://api.semrush.com/?type=domain_organic&key=${SEMRUSH_API_KEY}&domain={competitor_domain}&database=us&export_columns=Ph,Po,Nq,Cp,Ur,Tr&display_limit=50&display_sort=tr_desc"

列:Ph=キーワード、Po=順位、Nq=検索ボリューム、Cp=CPC、Ur=URL、Tr=トラフィック率。

競合の特定 - 同じキーワードで競合するドメインを見つけます:

# Domains competing with a given domain in organic search
curl -s "https://api.semrush.com/?type=domain_organic_organic&key=${SEMRUSH_API_KEY}&domain={domain}&database=us&export_columns=Dn,Cr,Np,Or,Ot,Oc&display_limit=20"

列:Dn=ドメイン、Cr=競合レベル、Np=共通キーワード、Or=オーガニックキーワード、Ot=オーガニックトラフィック、Oc=オーガニックコスト。

キーワードギャップ - 競合は順位を獲得しているものの、自社は順位を獲得していないキーワードを見つけます:

curl -s "https://api.semrush.com/?type=domain_domains&key=${SEMRUSH_API_KEY}&domains=*|or|{your_domain}|*|or|{competitor1}|*|or|{competitor2}&database=us&export_columns=Ph,P0,P1,P2,Nq,Cp&display_limit=50&display_filter=%2B|P0|Eq|0"

フィルター +|P0|Eq|0 は、自社ドメイン(順位 0)が順位を獲得していないキーワードを返します。

SerpAPI(SERPAPI_API_KEY がある場合)

SERP 競合分析 - 重要な検索語句で、リアルタイムにどのサイトが順位を獲得しているかを確認します:

# Real-time SERP for competitive keywords
curl -s "https://serpapi.com/search.json?q={keyword}&api_key=${SERPAPI_API_KEY}&num=20&gl=us&hl=en"

次の用途に使用します:

  • 対象キーワードでオーガニック検索結果を独占している競合を特定する(organic_results を解析)
  • ads フィールドと shopping_results フィールドから競合の広告コピーを抽出する
  • related_searches から関連する競合キーワードを見つける
  • SERP 機能における競合の表示状況を確認する:knowledge_graph、local_results、featured_snippet

Google 広告の競合分析:

# Search a commercial keyword to see competitor ads
curl -s "https://serpapi.com/search.json?q={commercial_keyword}&api_key=${SERPAPI_API_KEY}&gl=us&hl=en"

レスポンスの ads 配列には、position、title、link、displayed_link、tracking_link、description、sitelinks が含まれます。これにより、競合の広告コピー、ランディングページ、メッセージングがわかります。

Serping API(SERPINGAPI_API_KEY がある場合)

SERP 競合分析 - 上記の SerpAPI と同じ用途で、オーガニック検索結果と SERP 機能を確認します(ウェブ検索のみ — ads や shopping_results はありません)。SerpAPI キーが設定されていない場合にも使用できます:

# Real-time SERP for competitive keywords
curl -s -X POST "https://api.serpingapi.com/v1/search" \
  -H "X-API-Key: ${SERPINGAPI_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"q": "{keyword}", "gl": "us", "hl": "en", "num": 20}'

次の用途に使用します:

  • 対象キーワードでオーガニック検索結果を独占している競合を特定する(organic の position、title、link、snippet を解析)
  • relatedSearches(.query)から関連する競合キーワードを見つける
  • SERP 機能における競合の表示状況を確認する:knowledgeGraph、answerBox、peopleAlsoAsk
  • 直近 1 か月の順位を確認するには "tbs": "qdr:m" を、ローカル SERP を確認するには "location" を追加します

エラーは {"error": {"code", "message"}} の形式です。429 quota_exceeded が発生した場合は、月間の割り当てを使い切ったことをユーザーに伝え、WebSearch に切り替えます。

ScrapingBee(SCRAPINGBEE_API_KEY がある場合)

WebFetch による直接取得をブロックする競合ページ(JavaScript を多用したページ、ボット対策されたサイト、料金ページなど)のスクレイピングには、ScrapingBee を使用します:

# Scrape a competitor page
curl -s "https://app.scrapingbee.com/api/v1/?api_key=${SCRAPINGBEE_API_KEY}&url={url}&render_js=false"

ページの JavaScript レンダリング(SPA、動的な料金表など)が必要な場合は、render_js=true を設定します。次の用途に便利です:

  • WebFetch で不完全なコンテンツしか返されない場合に、料金ページの詳細を抽出する
  • 競合のランディングページをスクレイピングし、メッセージングとポジショニングを分析する
  • 競合の機能比較ページを取得する
  • 自動リクエストをブロックするサイトからコンテンツを取得する

注: ScrapingBee はリクエストごとに課金されます。必要な場合に限って使用してください。まず WebFetch を試し、必要な場合にのみ ScrapingBee に切り替えてください。

ステップ 1:コンテキストを把握する

次の点を確認します。ユーザーの製品、業界/分野、ターゲット層、把握している競合他社、主な懸念事項(価格、機能、マーケティング)、利用可能なツール(SEMrush、Ahrefs、SimilarWeb)、目的(戦略、ローンチの判断、投資家向け資料、ポジショニングの変更)。

ステップ 2:競合他社を特定する

3 つのカテゴリー
  • 直接競合(同じ製品、同じターゲット層):3~5 社
  • 間接競合(異なる製品、同じ課題):2~3 社
  • ベンチマーク対象(学ぶべき市場リーダー):1~2 社
発見方法

Google で「[カテゴリー]」を検索する(広告とオーガニック検索の上位 10 件)、G2/Capterra の「比較」ページ、Reddit/Twitter で「[競合他社] の代替」を検索する、顧客インタビュー、求人情報、資金調達の発表、SEMrush の「競合ドメイン」レポート。

ステップ 3:SEO 分析

SEMRUSH_API_KEY が利用可能な場合は、Domain Overview と Organic Keywords のエンドポイント(上記の「オプションの API 統合」を参照)を使用し、実データで以下のプロフィールを作成します。SERPAPI_API_KEY または SERPINGAPI_API_KEY が利用可能な場合は、リアルタイムの SERP 順位データを補足します。それ以外の場合は、WebSearch と公開ツールを使用して推定します。

競合他社ごとに、次を行います。

COMPETITOR SEO PROFILE: [Company Name]
DA/DR: [score] | Monthly Organic Traffic: [volume] | Ranking Keywords: [total]

TOP KEYWORDS: [keyword, position, volume, traffic share]

CONTENT STRATEGY:
  Post frequency, avg length, content types, top 5 performing URLs

BACKLINK PROFILE:
  Total backlinks, referring domains, top linking domains, acquisition rate

TECHNICAL: Site speed, mobile optimization, schema markup, architecture
トラフィックソースの実態確認(数値を信頼する前に必ず実施)

「オーガニック検索が 74%」という見出しだけでは、競合他社が SEO による発見で優位に立っているとは限りません。ほとんどのツールはラストクリックを報告するため、認知が実際にどこで生まれたのかが見えません。結論を出す前に、内訳を確認してください。

  1. ブランド検索と非ブランド検索を分ける。 ブランド名を含むすべてのキーワードにタグを付けます(スペースやドットを取り除いて正規化し、auto ppt と autoppt が一致するようにします)。ブランド検索は、すでに名称を知っている人が再訪するための検索であり、Google に発見されたことを意味しません。
  2. ナビゲーション目的の流入=ブランド検索+ダイレクトトラフィック。 既存のユーザーが戻ってきたものとしてまとめ、新規獲得とは区別します。
  3. 純粋な新規獲得につながる検索=非ブランドのオーガニック検索(一般的な用語、競合ブランド名を含む用語、ハウツーコンテンツ)。真に SEO 主導の発見と言えるのはこの部分だけです。規模を明示してください。
  4. 各ツールの数値を照合する。 SimilarWeb の全ファネル合計が大きい一方で、Ahrefs/SemRush のオーガニック検索の推定値が小さい場合、追跡されていないロングテール(多くの場合、英語以外の言語)が大量に存在する可能性があります。ツール間で上位の国が異なる場合、発見は順位を追跡している場所ではなく、ユーザーがいる場所で起きています。
  5. 実際のユーザーかどうかを確認する。 直帰率、訪問あたりのページ数、サイト滞在時間を確認します。ボットやインセンティブ経由のトラフィックは、直帰率が約 100%、1 ページ、数秒として現れます。

チャネルの特徴から、実際のファネル上部を見つける。 重要な診断ポイント:ブランド検索とダイレクトが大半を占める一方で、ラストクリックでの獲得チャネルに大きなものがない場合、発見を促す仕組みは上流にあり、これらのツールでは把握できません。

特徴実際の成長エンジン
ブランド検索とダイレクトが多いが、ソーシャル/リファラル/有料はすべて少ないラストクリック以外の経路:ショート動画(TikTok/Reels/Shorts)、メッセージアプリ、口コミ。リファラー情報が失われ、後にブランド検索やダイレクトとして再び現れます
非ブランドのオーガニック検索が多く、ブログやロングテールが充実している真の SEO コンテンツエンジン(編集型またはプログラム型)
競合のブランド名(<rival> alternative、<rival> pricing)で上位表示される競合の流入を狙った意図的な SEO
少数のドメインにリファラルが集中しているパートナーシップ/ディレクトリ/アフィリエイト/インテグレーション
有料広告とディスプレイ広告が多い有料顧客獲得(そのニッチで採算が取れているか確認する)
genAI のリファラルチャネルが無視できない規模で、成長しているLLM からの引用によるトラフィック(ChatGPT/Perplexity)

断定せず、裏付けを確認する: YouTube/TikTok でブランドを検索し、バイラルな波があったかを確認します。ブランド検索の増加がソーシャルメディアの急増に遅れて発生したかを調べ、実際の上位リファラーを特定し、コンテンツが誰に向けて書かれているかを読み取り、上位の国からコミュニティの所在を見極めます。こうした確認を終えてから、「実際にどのように成長しているか」の結論を書いてください。

ギャップ分析
  • キーワードギャップ:競合他社が順位を獲得しているが、自社は獲得していないキーワード
  • コンテンツギャップ:競合他社が扱っているが、自社は扱っていないトピック
  • バックリンクギャップ:競合他社にはリンクしているが、自社にはリンクしていないドメイン

ステップ 4:有料広告の分析

COMPETITOR AD PROFILE: [Company Name]
Est. Monthly Spend: [range] | Platforms: [list] | Active Ads: [count]

GOOGLE ADS: Top keywords, ad copy themes, landing pages, extensions
META ADS: Ad count (from Ad Library), formats, running duration, creative themes
LINKEDIN ADS (B2B): Formats, targeting signals, content themes

主な質問:どのキーワードに最も積極的に入札していますか?広告のリンク先はどのランディングページですか(最も魅力的なオファーがわかります)?上位の広告はどのくらいの期間掲載されていますか(長いほど収益性が高いと考えられます)?リターゲティングを実施していますか?

ステップ 5:ソーシャルメディアの分析

| Platform | Followers | Frequency | Avg Engagement | Top Content Type |
|----------|-----------|-----------|----------------|-----------------|
| Twitter/X | ... | ... | ... | ... |
| LinkedIn | ... | ... | ... | ... |
| Instagram | ... | ... | ... | ... |
| YouTube | ... | ... | ... | ... |

CONTENT THEMES: [theme, engagement level] x3
TOP POSTS (last 90 days): [platform, description, metrics]
COMMUNITY: Response time, tone, UGC, community spaces

ステップ 6:メールマーケティングとライフサイクルマーケティング

競合他社すべてのメーリングリスト、トライアル、ニュースレターに登録します。次の点を追跡します。

  • ニュースレター:配信頻度、コンテンツの種類、件名のスタイル、パーソナライズ
  • オンボーディングシーケンス:件名、目的、CTAを日ごとに整理
  • プロモーション:割引の頻度、季節ごとのキャンペーン、緊急性を促す施策
  • 顧客維持:解約防止メール、再エンゲージメントキャンペーン

ステップ 7:価格設定とポジショニング

価格の比較
| Feature/Plan | You | Comp A | Comp B | Comp C |
|-------------|-----|--------|--------|--------|
| Free Tier | ... | ... | ... | ... |
| Starter | ... | ... | ... | ... |
| Pro | ... | ... | ... | ... |
| Enterprise | ... | ... | ... | ... |

料金モデル、請求オプション、アドオン、割引、価格アンカリングに注目します。

ポジショニングマップ

最も重要な2つの軸(例:価格と使いやすさ)を用いて、2×2のマップを作成します。市場の空白となっている機会を特定します。

メッセージの抽出

各社について、タグライン、価値提案、主な差別化要因、ターゲットペルソナ、トーン、主な裏付けをまとめます。

ステップ 8:SWOT分析

主要な競合他社ごとに、次の項目をまとめます。

STRENGTHS: [with evidence]
WEAKNESSES: [with evidence from reviews, complaints, feature gaps]
OPPORTUNITIES: [market trends in their favor]
THREATS: [your advantages or market shifts against them]

弱みの情報源:G2/Capterraの星1~2のレビュー、Reddit/Twitterの苦情、Glassdoor、Down Detector、機能比較で見つかる不足点、サポートフォーラム。

ステップ 9:競合比較表

| Dimension | You | Comp A | Comp B | Comp C |
|-----------|-----|--------|--------|--------|
| Founded | ... | ... | ... | ... |
| Funding/Revenue | ... | ... | ... | ... |
| Target Market | ... | ... | ... | ... |
| Entry Price | ... | ... | ... | ... |
| Key Differentiator | ... | ... | ... | ... |
| DA | ... | ... | ... | ... |
| Monthly Traffic | ... | ... | ... | ... |
| G2 Rating | ... | ... | ... | ... |
| Feature 1-3 | Y/N | Y/N | Y/N | Y/N |

ステップ 10:戦略的な提案

STRATEGIC RECOMMENDATIONS
==========================
1. POSITIONING: Current vs. recommended position, key message, differentiation
2. CONTENT: Priority keywords, content types, topics to own
3. PAID: Keywords competitors miss, ad angles, channel priorities
4. PRODUCT: Features to build (from gaps), features to deprioritize
5. PRICING: Adjustments, packaging opportunities
6. QUICK WINS: 3 actions to implement this week

すべての提案を、具体的な競合データに基づいて行います。インパクトと実施の容易さに基づいて優先順位を付けます。

コメント