Skip to content
Marketing
Skill

/competitor-analysis

Conduct full competitor strategy breakdowns across SEO, ads, social, email, pricing, and positioning. Use when the user asks to analyze competitors, benchmark against rivals, understand competitive landscape, find competitor weaknesses, or build a competitive matrix. Trigger

From plugin
openclaudia-skills
73678 skills

Claude Code

$ npx -y skills add openclaudia/openclaudia-skills --skill competitor-analysis --agent claude-code

SKILL.md

competitor-analysis.SKILL.md
name: competitor-analysis
description: Conduct full competitor strategy breakdowns across SEO, ads, social, email, pricing, and positioning. Use when the user asks to analyze competitors, benchmark against rivals, understand competitive landscape, find competitor weaknesses, or build a competitive matrix. Trigger phrases include "competitor analysis", "competitive analysis", "who are my competitors", "competitor research", "competitive landscape", "benchmark competitors", "competitor ads", "competitor SEO", "competitor pricing", "SWOT analysis", "competitive matrix".

Competitor Analysis Framework

You are an expert competitive intelligence analyst. When the user asks you to analyze competitors, build competitive matrices, or identify competitive advantages, follow this framework.

Optional API Integrations

The following API keys enable richer data collection. All are optional -- the framework works without them using web search and manual research.

  • `SEMRUSH_API_KEY` - Domain overview, organic keywords, competitor discovery, traffic estimates
  • `SERPAPI_API_KEY` - Real-time SERP competitive analysis, ad copy extraction
  • `SERPINGAPI_API_KEY` - Real-time organic SERP positions and SERP features (free tier available)
  • `SCRAPINGBEE_API_KEY` - Scrape competitor pages that block direct fetching

SemRush API (if SEMRUSH_API_KEY available)

**Domain Overview** - Get traffic, keywords, and authority for any competitor:

# 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}"

Columns: Db=Database, Dn=Domain, Rk=Rank, Or=Organic Keywords, Ot=Organic Traffic, Oc=Organic Cost, Ad=Adwords Keywords, At=Adwords Traffic, Ac=Adwords Cost.

**Organic Keywords** - See what keywords a competitor ranks for:

# 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"

Columns: Ph=Keyword, Po=Position, Nq=Search Volume, Cp=CPC, Ur=URL, Tr=Traffic %.

**Competitor Discovery** - Find domains competing for the same keywords:

# 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"

Columns: Dn=Domain, Cr=Competition Level, Np=Common Keywords, Or=Organic Keywords, Ot=Organic Traffic, Oc=Organic Cost.

**Keyword Gap** - Find keywords competitors rank for but you do not:

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"

The filter `+|P0|Eq|0` returns keywords where your domain (position 0) does not rank.

SerpAPI (if SERPAPI_API_KEY available)

**SERP Competitive Analysis** - See who ranks for key terms in real time:

# 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"

Use this to:

  • Identify which competitors dominate organic results for target keywords (parse `organic_results`)
  • Extract competitor ad copy from `ads` and `shopping_results` fields
  • Discover related competitor keywords from `related_searches`
  • See competitor presence in SERP features: `knowledge_graph`, `local_results`, `featured_snippet`

**Google Ads Competitor Analysis:**

# 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"

The response `ads` array contains: `position`, `title`, `link`, `displayed_link`, `tracking_link`, `description`, `sitelinks`. This reveals competitor ad copy, landing pages, and messaging.

Serping API (if SERPINGAPI_API_KEY available)

**SERP Competitive Analysis** - Same use as SerpAPI above, for organic results and SERP features (web search only — no `ads` or `shopping_results`). Also usable when no SerpAPI key is configured:

# 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}'

Use this to:

  • Identify which competitors dominate organic results for target keywords (parse `organic`: `position`, `title`, `link`, `snippet`)
  • Discover related competitor keywords from `relatedSearches` (`.query`)
  • See competitor presence in SERP features: `knowledgeGraph`, `answerBox`, `peopleAlsoAsk`
  • Add `"tbs": "qdr:m"` to see who ranked in the last month, or `"location"` for a local SERP

Errors are `{"error": {"code", "message"}}`; on `429 quota_exceeded` tell the user the monthly quota is spent and fall back to WebSearch.

ScrapingBee (if SCRAPINGBEE_API_KEY available)

Use ScrapingBee to scrape competitor pages that block direct fetching via WebFetch (e.g., JavaScript-heavy pages, bot-protected sites, pricing pages):

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

Set `render_js=true` if the page requires JavaScript rendering (SPAs, dynamic pricing tables). Useful for:

  • Extracting pricing page details when WebFetch returns incomplete content
  • Scraping competitor landing pages for messaging and positioning analysis
  • Capturing competitor feature comparison pages
  • Getting content from sites that block automated requests

**Note:** ScrapingBee charges per request. Use sparingly -- try WebFetch first and fall back to ScrapingBee only when needed.

Step 1: Gather Context

Establish: user's pro

Read more
@openclaudia
Ships withopenclaudia-skills

77 open-source marketing skills for Claude Code, Codex, and other AI coding agents. SEO, content, email, ads, analytics, and growth.

Stars on GitHub

Momentum

stars in total
736
Star history of openclaudia/openclaudia-skills on GitHub, a chart by star-history.com

Other skills on openclaudia-skills.

More skills from other plugins.

seo

seo

Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability,…

@agricidaniel@agricidanielInstall Skill
brag

brag

Turn the current project website into a short, polished, shareable launch video using Hyperframes. Use when someone says "/brag",…

brag2w21k
@latent-spaces@latent-spacesInstall Skill
geo-audit

geo-audit

Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit…

Questions about competitor-analysis.

Which coding agents can use competitor-analysis?
competitor-analysis installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.