# Competitor analysis framework Human Guide

## What This Is For
Conduct full competitor strategy breakdowns across SEO, ads, social, email, pricing, and positioning. It gives the agent a clearer input/output frame for competitive research: what context to ask for, what decisions to make, and what usable artifact to return.

Use this as a human-readable version of the Competitor analysis framework agent skill. It is meant for marketers, operators, founders, and other non-coders who want the workflow without reading agent-specific implementation instructions.

## When To Use This
- Use this when you need a repeatable process for competitor analysis framework.
- Use this when the task needs judgment, examples, constraints, or a clear output format rather than a one-off prompt.
- Use this when you want to hand an AI assistant enough context to produce a usable marketing artifact.

## When Not To Use This
- Do not use this when you only need a quick factual answer.
- Do not use this when the work depends on private data you cannot share with the assistant.
- Do not use this as a replacement for legal, compliance, financial, or medical review.

## What You Need Before Starting
- The goal or business outcome you want.
- The audience, customer segment, or market context.
- Any source material the assistant should respect, such as notes, briefs, examples, URLs, or brand guidance.
- Constraints such as tone, length, channel, deadline, region, or approval requirements.
- A clear definition of what a good final answer should look like.

## Step-By-Step Workflow
1. State the job clearly: "Use the Competitor analysis framework guide to help me with..."
2. Add context: audience, goal, offer, channel, source material, and constraints.
3. Ask the assistant to identify missing inputs before producing the final output.
4. Have the assistant follow the skill-specific guidance below.
5. Review the result against the final checklist and ask for revisions where needed.

## Skill-Specific Guidance
- `SEMRUSH_API_KEY` - Domain overview, organic keywords, competitor discovery, traffic estimates
- `SERPAPI_API_KEY` - Real-time SERP competitive analysis, ad copy extraction
- `SCRAPINGBEE_API_KEY` - Scrape competitor pages that block direct fetching
- 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`
- 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
- **Direct** (same product, same audience): 3-5 competitors

## Decision Points And Nuance
The original skill emphasizes: Optional API Integrations, SemRush API (if SEMRUSH_API_KEY available), SerpAPI (if SERPAPI_API_KEY available), ScrapingBee (if SCRAPINGBEE_API_KEY available), Step 1: Gather Context, Step 2: Competitor Identification, Three Categories, Discovery Methods, Step 3: SEO Analysis, Traffic Source Reality Check (do this BEFORE trusting the numbers).

Use these questions to steer the work:
- What is the intended audience or buyer?
- What source material must be preserved?
- What should the assistant optimize for: clarity, persuasion, accuracy, speed, creativity, or conversion?
- What examples represent the desired quality bar?
- What should the assistant avoid?

## Common Mistakes
- **Keyword Gap** - Find keywords competitors rank for but you do not:
- **Keyword gaps**: Keywords competitors rank for that you do not
- **Content gaps**: Topics competitors cover that you do not
- Create a 2x2 map on the two most important dimensions (e.g., Price vs. Simplicity). Identify white space opportunities.

## Copy-And-Paste Prompt
```text
Use the Competitor analysis framework human guide.

My goal:
[Describe the business outcome]

Audience:
[Describe who this is for]

Context and source material:
[Paste notes, examples, links, or existing copy]

Constraints:
[Tone, length, channel, timeline, must-include items, must-avoid items]

Before producing the final output, ask me for any missing information that would materially improve the result.
```

## Final Checklist
- [ ] The output matches the original goal.
- [ ] The audience and context are reflected in the answer.
- [ ] Important constraints and source material were preserved.
- [ ] The assistant made the relevant decisions explicit.
- [ ] The final artifact is ready to use, review, or hand to the next person.

## Source
This guide was generated from the openclaudia/openclaudia-skills skill entry for `competitor-analysis`.

## Source Skill Notes
These notes preserve the nuance from the original skill. Use them as supporting reference when the workflow above feels too generic.

# 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
- `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:
```bash
# 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:
```bash
# 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:
```bash
# 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:
```bash
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:
```bash
# 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:**
```bash
# 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.

### 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):
```bash
# 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 product, industry/vertical, target audience, known competitors, key concerns (pricing, features, marketing), available tools (SEMrush, Ahrefs, SimilarWeb), goal (strategy, launch decision, investor deck, repositioning).
