competitor-analysis · aaron-he-zhu — Claude Code skill: what it does, how to install
Benchmarks competitor keywords, backlinks, traffic share, and AI citations. It generates comparison tables and a prioritized SEO action plan.
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a claude-codeWhat competitor-analysis does
The skill audits competitor SEO and GEO strategies across organic search and AI citations. It evaluates backlink profiles and keyword footprints for three to five rival domains. Every metric is explicitly tagged as Measured, User-provided, or Estimated, so inferred estimates never pass as real measurements.
Data gathering can run through the bundled firecrawl.py connector script. It renders target pages into markdown while respecting target robots.txt rules. If competitor domains are missing and cannot be inferred from project files, the agent stops and asks for targets.
Results are saved to memory/research/ alongside an immediate, short-term, and long-term action plan. This skill handles competitive domain benchmarking. If you need a direct pairwise topic gap audit, switch to the dedicated content-gap-analysis skill instead.
What it helps with
- benchmark keyword rankings and backlink profiles across competing domains
- evaluate competitor citations inside generative AI search answers
- build a phased SEO action plan based on rival weaknesses
- inspect competitor site structure and pages while respecting
robots.txt
Example prompts for the agent
- Analyze SEO strategy for <competitor-domain>
- Compare my site against <competitor-1> and <competitor-2>
- Check AI citations and backlinks for <competitor-domain>
How to install competitor-analysis
1Skills CLI (Vercel)
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a claude-code2Manually: put the files in place
~/.claude/skills/competitor-analysis/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/competitor-analysis/
1Skills CLI (Vercel)
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a codex2Manually: put the files in place
.agents/skills/competitor-analysis/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a cursor2Manually: put the files in place
.cursor/skills/competitor-analysis/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install aaron-he-zhu/aaron-marketing-skills competitor-analysis2Manually: put the files in place
.github/skills/competitor-analysis/SKILL.md1Skills CLI (Vercel)
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a gemini-cli2Platform CLI
gemini skills install https://github.com/aaron-he-zhu/aaron-marketing-skills --path seo-geo/survey/competitor-analysisManually: put the files in place
.devin/skills/competitor-analysis/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about competitor-analysis
How to install competitor-analysis in Claude Code?
Run npx skills add aaron-he-zhu/aaron-marketing-skills --skill competitor-analysis -a claude-code in your terminal. Once completed, Claude Code can invoke the skill directly.
What does competitor-analysis do?
It benchmarks three to five competitor domains across keywords, backlinks, traffic share, and AI citations. The skill synthesizes findings into a comparison table and a phased action plan.
When should I use content-gap-analysis instead of this skill?
Use this skill for broad domain-level benchmarking and strategy. Switch to content-gap-analysis when you need a pairwise topic coverage gap audit between two sites.
Source text
SKILL.md · Apache-2.0
---
name: competitor-analysis
slug: competitor-analysis
displayName: "Competitor Analysis · 竞品分析"
summary: "竞品分析/竞争对手"
description: '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. 竞品分析/竞争对手'
version: "20.1.0"
license: Apache-2.0
compatibility: "Claude Code and compatible agent-skill hosts"
homepage: "https://github.com/aaron-he-zhu/aaron-marketing-skills"
when_to_use: "Use when analyzing competitor SEO strategy, comparing domains, benchmarking against competitors, or finding competitor keywords and content gaps."
argument-hint: "<competitor URL or domain>"
metadata: {"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"}}
---
# 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](../content-gap-analysis/SKILL.md) when the competitive landscape is clear.
### Handoff Summary
> Emit the standard shape from [skill-contract.md §Handoff Summary Format](../../../references/skill-contract.md).
## Data Sources
Optional integrations: ~~SEO tool, ~~analytics, ~~AI monitor. Without tools, ask for competitor URLs, your site metrics, and industry context. See [CONNECTORS.md](../../../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](../../../SECURITY.md). See [scripts/connectors/README.md](../../../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](../serp-analysis/SKILL.md) 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](references/analysis-templates.md) for the compact templates used at each step.
## Example
See [references/example-report.md](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](../content-gap-analysis/SKILL.md) — 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](../../../references/platforms/youtube.md).
### Link Intersection
```
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](../../../references/skill-contract.md) §Save Results Template.
## Reference Materials
- [Analysis Templates](references/analysis-templates.md) — Step-by-step analysis templates
- [Battlecard Template](references/battlecard-template.md) — Quick-reference battlecard format
- [Positioning Frameworks](references/positioning-frameworks.md) — Positioning and differentiation frameworks
- [Example Report](references/example-report.md) — Worked sample
- [platforms/youtube.md](../../../references/platforms/youtube.md) — YouTube outlier and title-packaging benchmarks for video-heavy competitors
## Next Best Skill
Primary: [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).
© aaron-he-zhu · Apache-2.0 · aaron-he-zhu/aaron-marketing-skills
Similar skills
Everything for SEO and GEO →competitor-analysis by other authors comes first.