skills-101/superpowers

competitor-teardown

Structured competitive analysis with feature matrices, SWOT, positioning maps, and UX review.

View source
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Install the belt CLI skill: npx skills add belt-sh/cli

Competitor Teardown

Structured competitive analysis with research and screenshots via inference.sh CLI.

Quick Start

Requires inference.sh CLI (belt). Install instructions
bash
belt login

# Research competitor landscape
belt app run tavily/search-assistant --input '{
  "query": "top project management tools comparison 2024 market share"
}'

# Screenshot competitor's website
belt app run infsh/agent-browser --input '{
  "url": "https://competitor.com",
  "action": "screenshot"
}'

Teardown Framework

The 7-Layer Analysis

LayerWhat to AnalyzeData Source
1. ProductFeatures, UX, qualityScreenshots, free trial
2. PricingPlans, pricing model, hidden costsPricing page, sales call
3. PositioningMessaging, tagline, ICPWebsite, ads
4. TractionUsers, revenue, growthWeb search, press, funding
5. ReviewsStrengths, weaknesses from usersG2, Capterra, App Store
6. ContentBlog, social, SEO strategyWebsite, social profiles
7. TeamSize, key hires, backgroundLinkedIn, About page

Research Commands

Company Overview

bash
# General intelligence
belt app run tavily/search-assistant --input '{
  "query": "CompetitorX company overview funding team size 2024"
}'

# Funding and financials
belt app run exa/search --input '{
  "query": "CompetitorX funding round series valuation investors"
}'

# Recent news
belt app run tavily/search-assistant --input '{
  "query": "CompetitorX latest news announcements 2024"
}'

Product Analysis

bash
# Feature comparison
belt app run exa/search --input '{
  "query": "CompetitorX vs alternatives feature comparison review"
}'

# Pricing details
belt app run tavily/extract --input '{
  "urls": ["https://competitor.com/pricing"]
}'

# User reviews
belt app run tavily/search-assistant --input '{
  "query": "CompetitorX reviews G2 Capterra pros cons 2024"
}'

UX Screenshots

bash
# Homepage
belt app run infsh/agent-browser --input '{
  "url": "https://competitor.com",
  "action": "screenshot"
}'

# Pricing page
belt app run infsh/agent-browser --input '{
  "url": "https://competitor.com/pricing",
  "action": "screenshot"
}'

# Signup flow
belt app run infsh/agent-browser --input '{
  "url": "https://competitor.com/signup",
  "action": "screenshot"
}'

Feature Matrix

Structure

markdown
| Feature | Your Product | Competitor A | Competitor B | Competitor C |
|---------|:---:|:---:|:---:|:---:|
| Real-time collaboration | ✅ | ✅ | ❌ | ✅ |
| API access | ✅ | Paid only | ✅ | ❌ |
| SSO/SAML | ✅ | Enterprise | ✅ | Enterprise |
| Custom reports | ✅ | Limited | ✅ | ❌ |
| Mobile app | ✅ | iOS only | ✅ | ✅ |
| Free tier | ✅ (unlimited) | ✅ (3 users) | ❌ | ✅ (1 project) |
| Integrations | 50+ | 100+ | 30+ | 20+ |

Rules

  • ✅ = Full support
  • ⚠️ or "Partial" = Limited or conditional
  • ❌ = Not available
  • Note conditions: "Paid only", "Enterprise tier", "Beta"
  • Lead with features where YOU win
  • Be honest about competitor strengths — credibility matters

Pricing Comparison

Structure

markdown
| | Your Product | Competitor A | Competitor B |
|---------|:---:|:---:|:---:|
| **Free tier** | Yes, 5 users | Yes, 3 users | No |
| **Starter** | $10/user/mo | $15/user/mo | $12/user/mo |
| **Pro** | $25/user/mo | $30/user/mo | $29/user/mo |
| **Enterprise** | Custom | Custom | $50/user/mo |
| **Billing** | Monthly/Annual | Annual only | Monthly/Annual |
| **Annual discount** | 20% | 15% | 25% |
| **Min seats** | 1 | 5 | 3 |
| **Hidden costs** | None | Setup fee $500 | API calls metered |

What to Look For

  • Minimum seat requirements
  • Annual-only billing (reduces flexibility)
  • Feature gating between tiers
  • Overage charges
  • Setup/onboarding fees
  • Contract lock-in periods

SWOT Analysis

Create a SWOT for each competitor:

markdown
### Competitor A — SWOT

| Strengths | Weaknesses |
|-----------|------------|
| • Strong brand recognition | • Slow feature development |
| • Large integration ecosystem | • Complex onboarding (30+ min) |
| • Enterprise sales team | • No free tier |

| Opportunities | Threats |
|--------------|---------|
| • AI features not yet shipped | • New AI-native competitors |
| • Expanding into mid-market | • Customer complaints about pricing |
| • International markets untapped | • Key engineer departures (LinkedIn) |

Positioning Map

A 2x2 matrix showing where competitors sit on two meaningful dimensions.

Choose Meaningful Axes

Good AxesBad Axes
Simple ↔ ComplexGood ↔ Bad
SMB ↔ EnterpriseCheap ↔ Expensive (too obvious)
Self-serve ↔ Sales-ledOld ↔ New
Specialized ↔ GeneralSmall ↔ Large
Opinionated ↔ Flexible

Template

                    Enterprise
                        │
           Competitor C │  Competitor A
                ●       │       ●
                        │
  Simple ──────────────────────────── Complex
                        │
            You ●       │  Competitor B
                        │       ●
                        │
                      SMB

Generating the Visual

bash
# Create positioning map with Python
belt app run infsh/python-executor --input '{
  "code": "import matplotlib.pyplot as plt\nimport matplotlib\nmatplotlib.use(\"Agg\")\n\nfig, ax = plt.subplots(figsize=(10, 10))\n\n# Competitors\ncompetitors = {\n    \"You\": (-0.3, -0.3),\n    \"Competitor A\": (0.5, 0.6),\n    \"Competitor B\": (0.6, -0.4),\n    \"Competitor C\": (-0.4, 0.5)\n}\n\nfor name, (x, y) in competitors.items():\n    color = \"#22c55e\" if name == \"You\" else \"#6366f1\"\n    size = 200 if name == \"You\" else 150\n    ax.scatter(x, y, s=size, c=color, zorder=5)\n    ax.annotate(name, (x, y), textcoords=\"offset points\", xytext=(10, 10), fontsize=12, fontweight=\"bold\")\n\nax.axhline(y=0, color=\"grey\", linewidth=0.5)\nax.axvline(x=0, color=\"grey\", linewidth=0.5)\nax.set_xlim(-1, 1)\nax.set_ylim(-1, 1)\nax.set_xlabel(\"Simple ← → Complex\", fontsize=14)\nax.set_ylabel(\"SMB ← → Enterprise\", fontsize=14)\nax.set_title(\"Competitive Positioning Map\", fontsize=16, fontweight=\"bold\")\nax.grid(True, alpha=0.3)\nplt.tight_layout()\nplt.savefig(\"positioning-map.png\", dpi=150)\nprint(\"Saved\")"
}'

Review Mining

Where to Find Reviews

PlatformBest ForURL Pattern
G2B2B SaaSg2.com/products/[product]/reviews
CapterraBusiness softwarecapterra.com/software/[id]/reviews
App StoreiOS appsapps.apple.com
Google PlayAndroid appsplay.google.com
Product HuntLaunchesproducthunt.com/posts/[product]
RedditHonest opinionsreddit.com/r/[relevant-sub]

What to Extract

CategoryLook For
Most praisedWhat features do happy users mention most?
Most complainedWhat do unhappy users say? (= your opportunity)
Switching reasonsWhy do users leave? What triggers switching?
Feature requestsWhat's missing that users want?
Comparison mentionsWhen users compare, what do they say?
bash
# Mine G2 reviews
belt app run tavily/search-assistant --input '{
  "query": "CompetitorX G2 reviews complaints issues 2024"
}'

# Reddit sentiment
belt app run exa/search --input '{
  "query": "reddit CompetitorX alternative frustration switching"
}'

Deliverable Formats

Executive Summary (1 page)

markdown
## Competitive Landscape Summary

**Market:** [Category] — $[X]B market growing [Y]% annually

**Key competitors:** A (leader), B (challenger), C (niche)

**Our positioning:** [Where you sit and why it matters]

**Key insight:** [One sentence about the biggest opportunity]

| Metric | You | A | B | C |
|--------|-----|---|---|---|
| Users | X | Y | Z | W |
| Pricing (starter) | $X | $Y | $Z | $W |
| Rating (G2) | X.X | Y.Y | Z.Z | W.W |

Detailed Report (per competitor)

  1. Company overview (size, funding, team)
  2. Product analysis (features, UX screenshots)
  3. Pricing breakdown
  4. SWOT analysis
  5. Review analysis (top praised, top complained)
  6. Positioning vs. you
  7. Opportunity summary

Comparison Grid Visual

bash
# Stitch competitor screenshots into comparison
belt app run infsh/stitch-images --input '{
  "images": ["your-homepage.png", "competitorA-homepage.png", "competitorB-homepage.png"],
  "direction": "horizontal"
}'

Common Mistakes

MistakeProblemFix
Only looking at featuresMisses positioning, pricing, tractionUse the 7-layer framework
Biased analysisLoses credibilityBe honest about competitor strengths
Outdated dataWrong conclusionsDate all research, refresh quarterly
Too many competitorsAnalysis paralysisFocus on top 3-5 direct competitors
No "so what"Data without insightEnd each section with implications for you
Feature-only comparisonDoesn't show positioningInclude pricing, reviews, positioning map

Related Skills

bash
npx skills add inference-sh/skills@web-search
npx skills add inference-sh/skills@prompt-engineering

Browse all apps: belt app list

from this repository

More skills

All skills
skills-101
Community

ai-video-generation

Generate AI videos with Google Veo, Seedance 2.0, HappyHorse, Wan, Grok and 40+ models via inference.sh CLI. Models: Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Capabilities: text-to-video, image-to-video, reference-to-video, video editing, lipsync, avatar animation, video upscaling, foley sound. Use for: social media videos, marketing content, explainer videos, product demos, AI avatars. Triggers: video generation, ai video, text to video, image to video, veo, animate image, video from image, ai animation, video generator, generate video, t2v, i2v, ai video maker, create video with ai, runway alternative, pika alternative, sora alternative, kling alternative, seedance, happyhorse

installs
478,4 mil
GitHub stars
11
Updated
3 ago
skills-101
Community

ai-avatar-video

Create AI avatar and talking head videos via inference.sh CLI. Recommended: P-Video-Avatar (fastest, cheapest, built-in TTS). Also: OmniHuman, Fabric, PixVerse. Audio: Inworld TTS-2 (100+ languages, emotion steering for characters), ElevenLabs, Kokoro. Capabilities: audio-driven avatars, text-to-avatar, lipsync videos, talking head generation, virtual presenters, UGC content. Use for: AI presenters, explainer videos, virtual influencers, dubbing, marketing videos, UGC ads, gaming avatars, NPC dialogue. Triggers: ai avatar, talking head, lipsync, avatar video, virtual presenter, ai spokesperson, audio driven video, heygen alternative, synthesia alternative, talking avatar, lip sync, video avatar, ai presenter, digital human, ugc, ugc video, ugc ad, avatar ugc

installs
477,8 mil
GitHub stars
11
Updated
3 ago
skills-101
Community

ai-image-generation

Generate AI images with GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve and 50+ models via inference.sh CLI. Models: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capabilities: text-to-image, image-to-image, inpainting, LoRA, image editing, upscaling, text rendering. Use for: AI art, product mockups, concept art, social media graphics, marketing visuals, illustrations. Triggers: flux, image generation, ai image, text to image, stable diffusion, generate image, ai art, midjourney alternative, dall-e alternative, text2img, t2i, image generator, ai picture, create image with ai, generative ai, ai illustration, grok image, gemini image, gpt image, openai image, chatgpt image

installs
477,9 mil
GitHub stars
11
Updated
3 ago
skills-101
Community

twitter-automation

Automate Twitter/X with posting, engagement, and user management via inference.sh CLI. Apps: x/post-tweet, x/post-create (with media), x/post-like, x/post-retweet, x/dm-send, x/user-follow. Capabilities: post tweets, schedule content, like posts, retweet, send DMs, follow users, get profiles. Use for: social media automation, content scheduling, engagement bots, audience growth, X API. Triggers: twitter api, x api, tweet automation, post to twitter, twitter bot, social media automation, x automation, tweet scheduler, twitter integration, post tweet, twitter post, x post, send tweet

installs
477,7 mil
GitHub stars
11
Updated
3 ago