Competitor analysis skill

Use when the user asks to "analyze competitors" or "竞品分析".

by aaron-he-zhu·Apache-2.0 license·★ 2,858 Stars on the repo·GitHub ↗

Use now

Files of Competitor analysis

aaron-he-zhu/main1 file shown
SKILL.md
Show the full text124 lines

Competitor Analysis

Analyzes competitor SEO and GEO strategies to reveal repeatable wins, weak spots, and market gaps.

Quick Start

Analyze SEO strategy for [competitor URL]
Compare my site [URL] against [competitor 1], [competitor 2], [competitor 3]

Skill Contract

Expected output: a prioritized competitor brief plus the standard handoff summary for memory/research/.

  • Reads: competitor URLs/domains, your own site metrics, business model, target audience, industry context, and any user-provided or tool data.
  • Writes: a user-facing analysis and reusable summary.
  • Promotes: durable competitor facts, keyword priorities, entity candidates, and pending strategy decisions to memory/hot-cache.md, memory/open-loops.md, and memory/research/.
  • Done when: 3-5 competitors are benchmarked across keywords, backlinks, and traffic share in one comparison table; each strength-to-learn and weakness-to-exploit cites evidence; and the deliverable closes with an Immediate / Short-term / Long-term plan.
  • Primary next skill: content-gap-analysis when the competitive landscape is clear.
Handoff Summary

Emit the standard shape from skill-contract.md §Handoff Summary Format.

Data Sources

Optional integrations: ~~SEO tool, ~~analytics, ~~AI monitor. Without tools, ask for competitor URLs, your site metrics, and industry context. See CONNECTORS.md.

Zero-dependency competitor fetch (keyless): python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/firecrawl.py" scrape <competitor-url> returns the rendered page as LLM-ready markdown (JavaScript-heavy pages included), firecrawl.py map <competitor-domain> --limit 500 inventories their URL surface fast, and firecrawl.py search "<brand or topic>" --tbs qdr:m finds their fresh coverage — all on Firecrawl's keyless free tier (~1,000 credits/mo). The connector pre-flights the target's robots.txt locally and refuses on a Disallow per SECURITY.md §Scraping Boundaries. See scripts/connectors/README.md.

Decision Gates

Stop and ask — when the competitor set cannot be established:

  1. No competitors named and none inferable from CLAUDE.md, prior research, or the user's niche → ask the user to name 2-5 competitors, OR offer to infer them from a target keyword via serp-analysis first.

Continue silently — do not stop for: which 3-5 of a longer list to deep-dive (pick the closest direct competitors and note the rest); missing your-own-site metrics (benchmark competitors against each other and mark your row N/A); missing optional tool data (label Estimated and proceed).

Instructions

When a user requests competitor analysis:

  1. Identify Competitors — separate direct competitors, indirect alternatives, and content competitors if the user has not named them already.
  2. Gather Competitor Data — capture URL, domain age, estimated traffic, domain authority, business model, target audience, and key offerings.
  3. Analyze Keyword Rankings — document total rankings, top 10/top 3 counts, high-value keywords, intent mix, and keyword gaps.
  4. Audit Content Strategy — review content volume, top performers, publishing patterns, themes, and success factors.
  5. Analyze Backlink Profile — review backlink totals, quality mix, top linking domains, link acquisition patterns, and linkable assets.
  6. Technical SEO Assessment — evaluate Core Web Vitals, mobile-friendliness, architecture, internal linking, URL structure, and standout strengths/weaknesses.
  7. GEO / AI Citation Analysis — test which queries cite competitors, what formats get cited, and where competitors still leave openings.
  8. Synthesize Competitive Intelligence — deliver an Executive Summary, comparison table, CITE comparison, strengths to learn from, weaknesses to exploit, keyword opportunities, content recommendations, and an Immediate / Short-term / Long-term plan.

Label every metric Measured (tool/export), User-provided, or Estimated (model inference); never present an estimate as measured; if a required metric is unavailable, mark it N/A — do not invent it.

Quality bar: every strength or weakness ties to a labeled metric and a named competitor — a specific ranking or backlink figure for a named domain, not "strong content presence".

Reference: See Analysis Templates for the compact templates used at each step.

Example

See references/example-report.md for a full sample analyzing HubSpot's marketing keyword dominance.

Advanced Analysis Types

Content Gap Analysis

For a pairwise topic-coverage gap map ("content [competitor] has that I don't, sorted by traffic potential"), hand off to content-gap-analysis — that is its dedicated job.

Video Benchmarking

When a competitor invests in video, benchmark their YouTube outliers (views >=2x their channel average) and the title/thumbnail packaging that drives those wins — those patterns show what topics and framing earn reach. See platforms/youtube.md.

Find sites linking to [competitor 1] AND [competitor 2] but not me
SERP Feature Analysis
What SERP features do competitors win? (Featured snippets, PAA, etc.)
Historical Tracking
How has [competitor]'s SEO strategy evolved over the past year?

Save Results

Write path: memory/research/competitor-analysis/YYYY-MM-DD-<topic>.md; promote durable competitor facts and entity candidates to memory/hot-cache.md. See Skill Contract §Save Results Template.

Reference Materials

Next Best Skill

Primary: content-gap-analysis. Also: serp-analysis and offsite-signal-analyzer. If the goal is a head-to-head "us vs them" page, hand the vetted competitor set to page-play-builder.

1---
2name: competitor-analysis
3slug: competitor-analysis
4displayName: "Competitor Analysis · 竞品分析"
5summary: "竞品分析/竞争对手"
6description: 'Use when the user asks to "analyze competitors" or "竞品分析"; benchmarks competitor keywords, content, backlinks, AI citations, and traffic share into strengths, weaknesses, and an action plan. Not for a pairwise topic-coverage gap map — use content-gap-analysis. 竞品分析/竞争对手'
7version: "20.1.0"
8license: Apache-2.0
9compatibility: "Claude Code and compatible agent-skill hosts"
10homepage: "https://github.com/aaron-he-zhu/aaron-marketing-skills"
11when_to_use: "Use when analyzing competitor SEO strategy, comparing domains, benchmarking against competitors, or finding competitor keywords and content gaps."
12argument-hint: "<competitor URL or domain>"
13metadata: {"author": "aaron-he-zhu", "version": "20.1.0", "discipline": "seo-geo", "phase": "survey", "geo-relevance": "medium", "hermes": {"tags": ["marketing", "seo-geo", "survey"], "category": "seo-geo"}, "openclaw": {"emoji": "🔍", "homepage": "https://github.com/aaron-he-zhu/aaron-marketing-skills"}}
14---
15 
16# Competitor Analysis
17 
18Analyzes competitor SEO and GEO strategies to reveal repeatable wins, weak spots, and market gaps.
19 
20## Quick Start
21 
22```
23Analyze SEO strategy for [competitor URL]
24```
25 
26```
27Compare my site [URL] against [competitor 1], [competitor 2], [competitor 3]
28```
29 
30## Skill Contract
31 
32**Expected output**: a prioritized competitor brief plus the standard handoff summary for `memory/research/`.
33 
34- **Reads**: competitor URLs/domains, your own site metrics, business model, target audience, industry context, and any user-provided or tool data.
35- **Writes**: a user-facing analysis and reusable summary.
36- **Promotes**: durable competitor facts, keyword priorities, entity candidates, and pending strategy decisions to `memory/hot-cache.md`, `memory/open-loops.md`, and `memory/research/`.
37- **Done when**: 3-5 competitors are benchmarked across keywords, backlinks, and traffic share in one comparison table; each strength-to-learn and weakness-to-exploit cites evidence; and the deliverable closes with an Immediate / Short-term / Long-term plan.
38- **Primary next skill**: [content-gap-analysis](../content-gap-analysis/SKILL.md) when the competitive landscape is clear.
39 
40### Handoff Summary
41 
42> Emit the standard shape from [skill-contract.md §Handoff Summary Format](../../../references/skill-contract.md).
43 
44## Data Sources
45 
46Optional integrations: ~~SEO tool, ~~analytics, ~~AI monitor. Without tools, ask for competitor URLs, your site metrics, and industry context. See [CONNECTORS.md](../../../CONNECTORS.md).
47 
48**Zero-dependency competitor fetch (keyless)**: `python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/firecrawl.py" scrape <competitor-url>` returns the rendered page as LLM-ready markdown (JavaScript-heavy pages included), `firecrawl.py map <competitor-domain> --limit 500` inventories their URL surface fast, and `firecrawl.py search "<brand or topic>" --tbs qdr:m` finds their fresh coverage — all on Firecrawl's keyless free tier (~1,000 credits/mo). The connector pre-flights the target's robots.txt locally and refuses on a Disallow per [SECURITY.md §Scraping Boundaries](../../../SECURITY.md). See [scripts/connectors/README.md](../../../scripts/connectors/README.md).
49 
50## Decision Gates
51 
52**Stop and ask** — when the competitor set cannot be established:
53 
541. No competitors named and none inferable from `CLAUDE.md`, prior research, or the user's niche → ask the user to name 2-5 competitors, OR offer to infer them from a target keyword via [serp-analysis](../serp-analysis/SKILL.md) first.
55 
56**Continue silently** — do not stop for: which 3-5 of a longer list to deep-dive (pick the closest direct competitors and note the rest); missing your-own-site metrics (benchmark competitors against each other and mark your row N/A); missing optional tool data (label Estimated and proceed).
57 
58## Instructions
59 
60When a user requests competitor analysis:
61 
621. **Identify Competitors** — separate direct competitors, indirect alternatives, and content competitors if the user has not named them already.
632. **Gather Competitor Data** — capture URL, domain age, estimated traffic, domain authority, business model, target audience, and key offerings.
643. **Analyze Keyword Rankings** — document total rankings, top 10/top 3 counts, high-value keywords, intent mix, and keyword gaps.
654. **Audit Content Strategy** — review content volume, top performers, publishing patterns, themes, and success factors.
665. **Analyze Backlink Profile** — review backlink totals, quality mix, top linking domains, link acquisition patterns, and linkable assets.
676. **Technical SEO Assessment** — evaluate Core Web Vitals, mobile-friendliness, architecture, internal linking, URL structure, and standout strengths/weaknesses.
687. **GEO / AI Citation Analysis** — test which queries cite competitors, what formats get cited, and where competitors still leave openings.
698. **Synthesize Competitive Intelligence** — deliver an Executive Summary, comparison table, CITE comparison, strengths to learn from, weaknesses to exploit, keyword opportunities, content recommendations, and an Immediate / Short-term / Long-term plan.
70 
71Label every metric **Measured** (tool/export), **User-provided**, or **Estimated** (model inference); never present an estimate as measured; if a required metric is unavailable, mark it N/A — do not invent it.
72 
73**Quality bar**: every strength or weakness ties to a labeled metric and a named competitor — a specific ranking or backlink figure for a named domain, not "strong content presence".
74 
75> **Reference**: See [Analysis Templates](references/analysis-templates.md) for the compact templates used at each step.
76 
77## Example
78 
79See [references/example-report.md](references/example-report.md) for a full sample analyzing HubSpot's marketing keyword dominance.
80 
81## Advanced Analysis Types
82 
83### Content Gap Analysis
84 
85For a pairwise topic-coverage gap map ("content [competitor] has that I don't, sorted by traffic potential"), hand off to [content-gap-analysis](../content-gap-analysis/SKILL.md) — that is its dedicated job.
86 
87### Video Benchmarking
88 
89When a competitor invests in video, benchmark their YouTube outliers (views >=2x their channel average) and the title/thumbnail packaging that drives those wins — those patterns show what topics and framing earn reach. See [platforms/youtube.md](../../../references/platforms/youtube.md).
90 
91### Link Intersection
92 
93```
94Find sites linking to [competitor 1] AND [competitor 2] but not me
95```
96 
97### SERP Feature Analysis
98 
99```
100What SERP features do competitors win? (Featured snippets, PAA, etc.)
101```
102 
103### Historical Tracking
104 
105```
106How has [competitor]'s SEO strategy evolved over the past year?
107```
108 
109## Save Results
110 
111Write path: `memory/research/competitor-analysis/YYYY-MM-DD-<topic>.md`; promote durable competitor facts and entity candidates to `memory/hot-cache.md`. See [Skill Contract](../../../references/skill-contract.md) §Save Results Template.
112 
113## Reference Materials
114 
115- [Analysis Templates](references/analysis-templates.md) — Step-by-step analysis templates
116- [Battlecard Template](references/battlecard-template.md) — Quick-reference battlecard format
117- [Positioning Frameworks](references/positioning-frameworks.md) — Positioning and differentiation frameworks
118- [Example Report](references/example-report.md) — Worked sample
119- [platforms/youtube.md](../../../references/platforms/youtube.md) — YouTube outlier and title-packaging benchmarks for video-heavy competitors
120 
121## Next Best Skill
122 
123Primary: [content-gap-analysis](../content-gap-analysis/SKILL.md). Also: [serp-analysis](../serp-analysis/SKILL.md) and [offsite-signal-analyzer](../../evaluate/offsite-signal-analyzer/SKILL.md). If the goal is a head-to-head "us vs them" page, hand the vetted competitor set to [page-play-builder](../../implement/page-play-builder/SKILL.md).
124 

Discussion

Alternatives

Company valuationEstimate the intrinsic value of a public company using DCF, relative (peer multiple) and sum-of-parts (SOTP) methods, then triangulate to an implied share price with upside/downside versus the current market price. Use this skill whenever the user asks: what is AAPL worth", "valuation of NVDA", "fair value of TSLA", "intrinsic value", DCF for MSFT", "build a DCF", "discounted cash flow", "WACC", "terminal value", implied share price", "upside to fair value", "is X overvalued/undervalued", relative valuation", "peer comparison valuation", "EV/EBITDA target", "SOTP", sum of the parts", "how much is [company] worth", "price target from fundamentals", value this company", or any ticker in the context of computing intrinsic or relative valuation. Default to running ALL three methods (DCF + relative + SOTP-if-applicable) and presenting a blended implied price with a sensitivity table. Do not answer valuation questions from memory — always run the workflow. · MITCompetitor gapFind keywords a competitor ranks for that the user's site doesn't — the content gap, prioritized by volume and winnability. Use when asked "what does competitor.com rank for", "keyword gap vs X", "steal competitor keywords", or "why do they outrank us".Business & ops · MITAd angle minerMine the highest-converting ad angles from customer reviews, Reddit complaints, support tickets, and competitor ads. Extracts actual pain language, competitor weaknesses, and outcome phrases that real buyers use. Outputs a ranked angle bank with proof quotes and recommended ad formats per angle.Business & ops · MITX audience insightsRead your X (Twitter) audience and niche from real data. Pull a handle's recent tweets (yours or a competitor's) with likes, replies, and views, see which formats and hooks are working, read the repliers on a tweet (X gates likers, so repliers are the signal), and scan a niche query for top tweets. Powered by Apify, no login. Triggers on "analyze my tweets", "what is working on X", "read the replies", "competitor tweets", "who is engaging". Not for writing a tweet (use x-post-writer).Marketing · MIT