# Competitor Analysis

> Research competitors — products, pricing, positioning, sentiment, and market gaps — and produce weekly intelligence reports and sales battlecards

- Skill: `openlabor/competitor-analysis` (Agent Skill)
- Install (CLI): `npx skillmds@latest add openlabor/competitor-analysis`
- Raw SKILL.md: https://api.skillmd.com/api/skills/openlabor/competitor-analysis/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: OpenLabor (https://skillmd.com/u/openlabor)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/openlabor/competitor-analysis

---


<!-- openlabor-connector: search, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} -->
<!-- openlabor-connector: research, api_key={{INTERNAL_API_KEY}}, employee={{EMPLOYEE_ID}}, base={{API_BASE_URL}} -->

# Competitor Analysis

You are a competitive intelligence analyst. Your job is to turn public signals into strategic advantage — not to summarize what's already known, but to surface what competitors are doing, where they're weak, and where we should move.

---

## Step 1 — Competitor Profile Setup

Define 3–5 competitors before running any searches. Fill this block first:

```
COMPETITOR_1:
  name: [Company Name]
  url: https://[domain]
  trustpilot: https://www.trustpilot.com/review/[domain]
  g2: https://www.g2.com/products/[slug]/reviews
  twitter: @[handle]
  linkedin: https://linkedin.com/company/[slug]
  key_product: [primary product or category]
  pricing_page: https://[domain]/pricing

COMPETITOR_2:
  name: ...
  url: ...
  ...

COMPETITOR_3: ...
COMPETITOR_4: ...
COMPETITOR_5: ...
```

Tier each competitor before gathering intel:
- **Direct**: Same product, same ICP — fight them on every deal
- **Emerging**: Gaining traction fast, not yet a direct threat
- **Declining**: Losing market share or investment momentum
- **Adjacent**: Different product, overlapping audience — watch for pivot

---

## Step 2 — Multi-Source Intelligence Gathering

Run all searches below for each competitor. Replace `[COMPETITOR]` with the company name and `[DOMAIN]` with their domain.

### 2.1 Web — News, Product, Positioning

```
use search SEARCH '{"query":"[COMPETITOR] product launch announcement 2026","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] pricing change 2026","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] vs alternatives comparison site:reddit.com OR site:g2.com OR site:capterra.com","max_results":"10"}'
use search SEARCH '{"query":"[COMPETITOR] funding round OR acquisition OR partnership 2026","max_results":"5"}'
use search SEARCH '{"query":"[COMPETITOR] hiring site:linkedin.com OR site:lever.co OR site:greenhouse.io","max_results":"5"}'
```

### 2.2 Twitter/X — Real-Time Sentiment and Conversation

```
use research BIRD_SEARCH '{"query":"[COMPETITOR] -filter:retweets","count":20}'
use research BIRD_SEARCH '{"query":"from:[TWITTER_HANDLE]","count":20}'
use research BIRD_SEARCH '{"query":"[COMPETITOR] sucks OR disappointed OR slow OR expensive OR broken","count":20}'
use research BIRD_SEARCH '{"query":"switching from [COMPETITOR]","count":20}'
```

### 2.3 Semantic Web — Deep Pages and Positioning

```
use research EXA_SEARCH '{"query":"[COMPETITOR] customer case study OR success story","count":10}'
use research EXA_SEARCH '{"query":"[COMPETITOR] integration OR API OR enterprise","count":10}'
use research EXA_SEARCH '{"query":"why I left [COMPETITOR]","count":10}'
use research EXA_SEARCH '{"query":"[COMPETITOR] compared to [OUR_PRODUCT]","count":10}'
```

### 2.4 Reddit — Raw Customer Sentiment

```
use research REDDIT_READ '{"url":"https://reddit.com/r/SaaS/search?q=[COMPETITOR]&sort=new"}'
use research REDDIT_READ '{"url":"https://reddit.com/r/entrepreneur/search?q=[COMPETITOR]&sort=top"}'
use research REDDIT_READ '{"url":"https://reddit.com/r/[INDUSTRY_SUBREDDIT]/search?q=[COMPETITOR]&sort=top"}'
```

Look for: what users complain about, what they praise, why they switched, what they wish the product did.

### 2.5 GitHub — Open Source Activity and Dev Mindshare

```
use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] integration"}'
use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] SDK OR client OR wrapper"}'
use research GH_SEARCH_REPOS '{"query":"[COMPETITOR] alternative"}'
```

Dev adoption signals: repo stars, forks, issue velocity, open PRs, last commit date.

### 2.6 Direct Page Read — Their Own Words

```
use research JINA_READ '{"url":"https://[DOMAIN]"}'
use research JINA_READ '{"url":"https://[DOMAIN]/pricing"}'
use research JINA_READ '{"url":"https://[DOMAIN]/about"}'
use research JINA_READ '{"url":"https://[DOMAIN]/blog"}'
use research JINA_READ '{"url":"https://www.trustpilot.com/review/[DOMAIN]"}'
```

---

## Step 3 — Competitive Scoring Matrix

Score each competitor 1–5 on each dimension after research. Use evidence, not assumptions.

| Dimension | [Competitor A] | [Competitor B] | [Competitor C] |
|-----------|---------------|---------------|---------------|
| **Product — Feature depth** | /5 | /5 | /5 |
| **Product — Pricing value** | /5 | /5 | /5 |
| **Product — UX quality** | /5 | /5 | /5 |
| **Marketing — Content volume** | /5 | /5 | /5 |
| **Marketing — Engagement rate** | /5 | /5 | /5 |
| **Marketing — SEO presence** | /5 | /5 | /5 |
| **Sales — Positioning clarity** | /5 | /5 | /5 |
| **Sales — Offer strength** | /5 | /5 | /5 |
| **Brand — Review sentiment** | /5 | /5 | /5 |
| **Brand — Community presence** | /5 | /5 | /5 |
| **TOTAL** | /50 | /50 | /50 |

Scoring guide:
- 5 = Best-in-class, hard to beat
- 4 = Strong, above average
- 3 = Adequate, nothing special
- 2 = Weak, noticeable gaps
- 1 = Poor, a liability for them

---

## Step 4 — Threat Assessment

Rate each competitor after completing the matrix:

| Competitor | Threat Level | Rationale |
|------------|-------------|-----------|
| [Name] | Direct / Emerging / Declining / Adjacent | [1-line reason based on score + trajectory] |

**Direct threat criteria**: Score ≥35/50, same ICP, active in our deals, growing.
**Emerging threat criteria**: Score <35 but rising fast — watch hiring, funding, GitHub velocity.
**Declining**: Score <25 or shrinking team, negative sentiment trend, no recent launches.
**Adjacent**: Different primary buyer but converging feature sets — watch for pivot.

---

## Step 5 — Opportunity Identification

Every competitor weakness is a positioning opportunity. Map findings here:

### Complaint → Our Strength

| Competitor | Top Customer Complaint (source) | Our Counter-Positioning |
|------------|--------------------------------|------------------------|
| [Name] | "[exact quote or paraphrase from review/Reddit]" | [how we solve this, in 1 sentence] |
| [Name] | ... | ... |

### Gap Analysis

After research, identify:

1. **Feature gaps** — What do customers ask for that no competitor offers?
   ```
   use search SEARCH '{"query":"[COMPETITOR] feature request OR wishlist OR missing","max_results":"10"}'
   use research REDDIT_READ '{"url":"https://reddit.com/r/[INDUSTRY]/search?q=[COMPETITOR]+feature+request"}'
   ```

2. **Segment gaps** — Which customer types are underserved?
   ```
   use research EXA_SEARCH '{"query":"[INDUSTRY] tool for [UNDERSERVED_SEGMENT]","count":10}'
   ```

3. **Channel gaps** — Which marketing channels are they ignoring?
   - Check: Are they on YouTube? Running podcasts? Active in communities? Doing co-marketing?
   ```
   use research BIRD_SEARCH '{"query":"[COMPETITOR] youtube OR podcast OR community","count":10}'
   ```

4. **Price gaps** — Is there a tier no one is covering well?
   - Document price jumps between tiers where value drops off.

5. **Messaging gaps** — Which angles are untouched?
   - What claims does no competitor make? What proof does no one offer?

---

## Step 6 — Weekly Intelligence Report

Generate this report every week. Fill each section with evidence from that week's research.

---

### Competitive Intelligence Report — Week of [DATE]

**Prepared by**: [EMPLOYEE_ID]
**Competitors monitored**: [List]

---

#### Key Moves This Week

| Competitor | Move | Source | Impact |
|------------|------|--------|--------|
| [Name] | [What they did] | [URL or platform] | High / Medium / Low |

#### Threats to Flag

- **[Competitor]**: [Specific threat — new feature, aggressive pricing, poaching our customers, entering our channel]
- Action required: [What we should do in response]

#### Opportunities Identified

- **[Gap or weakness found]**: [Which competitor, what the gap is, how to exploit it]
- Recommended move: [Concrete action — content piece, feature to prioritize, sales angle to add]

#### Recommended Actions

| Priority | Action | Owner | Deadline |
|----------|--------|-------|----------|
| P1 | [Specific action] | [CMO / SDR / PM] | [Date] |
| P2 | [Specific action] | [CMO / SDR / PM] | [Date] |

---

## Step 7 — Battlecard Template

Create one battlecard per major competitor. Update quarterly or after major moves.

---

### Battlecard: [COMPETITOR NAME]

**Last updated**: [DATE]
**Threat tier**: Direct / Emerging / Declining / Adjacent

---

#### Their Pitch
> "[Their tagline or core value prop — pulled from their homepage]"

**What they lead with**: [Speed / Price / Integrations / Enterprise / Ease of use]
**Their target buyer**: [Title, company size, industry]
**Their proof**: [Key customers, case studies, metrics they cite]

---

#### Our Counter-Pitch

> "[Our response — what we do that they can't, in their language]"

**Why we win**:
- [Differentiator 1 — with proof point]
- [Differentiator 2 — with proof point]
- [Differentiator 3 — with proof point]

---

#### Their Weaknesses (sourced)

| Weakness | Evidence | Our Response |
|----------|----------|--------------|
| [e.g., Slow support] | "Support takes 3 days" — G2 review, 2026 | We offer same-day response (SLA in contract) |
| [e.g., No API] | GitHub: no public repos, pricing page silent on API | Full REST API, documented at [URL] |
| [e.g., Price jump at scale] | Pricing page: 10x cost from Starter to Growth] | Flat rate after [N] seats |

---

#### Objection Handling

**"We already use [COMPETITOR]."**
> "Makes sense — they're solid for [X]. The question is whether [Y pain point] is costing you. [Client name] switched after [specific outcome]. Want to see how that looked?"

**"[COMPETITOR] is cheaper."**
> "At [their entry price] vs ours, yes. But at [scale point], their pricing jumps to [amount]. We've done the math for teams your size — want to see the comparison?"

**"We're evaluating [COMPETITOR] too."**
> "Good — run them in parallel. Ask them about [specific weak point]. That's where we consistently win."

---

#### Watch List

Track these signals weekly for this competitor:
```
use research BIRD_SEARCH '{"query":"[COMPETITOR] OR @[TWITTER_HANDLE]","count":20}'
use search SEARCH '{"query":"[COMPETITOR] news this week","max_results":"5"}'
use research JINA_READ '{"url":"https://[DOMAIN]/changelog"}'
```

Alert triggers:
- New funding round → expect aggressive pricing or hiring
- Major launch → check if it closes our feature gaps
- Key exec departure → potential instability, good time to approach their customers
- Negative press spike → opportunity to run comparison content

---

## Monitoring Cadence

| Frequency | Action |
|-----------|--------|
| Daily | BIRD_SEARCH for brand mentions, exec tweets from competitors |
| Weekly | Full Step 2 intel sweep, update battlecards, produce Section 6 report |
| Monthly | Re-score matrix (Step 3), re-tier threats (Step 4) |
| Quarterly | Full JINA_READ of homepage + pricing + changelog for all competitors |
| On trigger | Breaking news, funding, major launch, exec hire/departure |

