New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Competitor Page Gap Analysis

by nowork-studio · MIT license · ★ 3,853 on GitHub · updated Sep 24

Competitor Page Gap Analysis cover

Competitor page gap analysis — take a query you want to win and the pages currently outranking you, and produce a concrete brief on what to add or change to compete. Compares content depth and coverage (subtopics they cover that you…

---
name: competitor-pages
argument-hint: "<your page URL + 1-3 competitor URLs ranking for the same query>"
description: >
  Competitor page gap analysis — take a query you want to win and the pages
  currently outranking you, and produce a concrete brief on what to add or change
  to compete. Compares content depth and coverage (subtopics they cover that you
  don't), structure (headings, format, tables, media), search-intent match, E-E-A-T
  signals, schema/rich-result eligibility, internal linking, and on-page
  optimization — across your page vs. the top-ranking competitors. Use this skill
  whenever the user wants to know why a competitor outranks them on a specific
  query, what a top-ranking page does better, a content-gap analysis against
  specific competitor URLs, or a brief to beat a specific SERP. Trigger on:
  "why does competitor X outrank me", "content gap analysis", "competitor page
  analysis", "what does the top result have that I don't", "how do I beat this
  page", "analyze competitor pages", "SERP gap", "compete for [keyword]". For seed
  keyword discovery use /keyword-research; for a content calendar use
  /content-planner.

Overview

You are a senior SEO content strategist. Your job is to compare a target page against the pages outranking it for a specific query, find the concrete gaps, and hand back a brief that closes them.

Manual install (npx, ZIP)
Claude Codenpx skills add nowork-studio/notfair-plugin --skill competitor-pages -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/nowork-studio/notfair-plugin/tar.gz/5229d2163795 \ | tar -xz -C ~/.claude/skills --strip-components=2 notfair-plugin-5229d2163795/seo/competitor-pages
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/762b5fdb2917aab58742/competitor-pages.zip" -OutFile "$env:TEMP\competitor-pages.zip"; Expand-Archive "$env:TEMP\competitor-pages.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md3.4 KB
Read the files here
nowork-studio/5229d211 file
Shared references1SKILL.md reads these from elsewhere in the repo. Not in the ZIP.Get them on GitHub ↗
SKILL.md
Show the full text74 lines

Competitor Page Gap Analysis

You are a senior SEO content strategist. Your job is to compare a target page against the pages outranking it for a specific query, find the concrete gaps, and hand back a brief that closes them.

Credit: capability inspired by the open-source claude-seo project (MIT, Agrici Daniel). Implementation is original to NotFair.


Step 0 — Scope

Collect: the target query, the user's page URL (if it exists yet), and 1–3 competitor URLs that rank for the query. If the user gives only the query, ask which competitors to compare against (or note the top organic results).

Phase 0 — Preflight & data

Read and follow ../shared/preamble.md. If GSC connected, pull the user's current position / impressions for the query to ground the gap (striking distance vs. far behind).

Phase 1 — Crawl all pages

Fetch the user's page and each competitor page. For each, extract: title/H1, heading outline (H2/H3), word count, subtopics covered, media (images/video/ tables/tools), schema types present, internal/external link counts, publish/update date, and author/E-E-A-T signals.

Phase 2 — Intent & coverage comparison

  • Search intent — what format do the winners take (guide / listicle / comparison / tool / product)? Does the user's page match? Intent mismatch is often the whole story.
  • Coverage matrix — list every subtopic/heading the competitors cover; mark which the user's page covers (✅/❌). The ❌ rows are the content gaps.
  • Depth & format — word count, tables, examples, original data, media richness.
  • Freshness — are competitors recently updated while the user's page is stale?

Phase 3 — Signals comparison

  • E-E-A-T — author bios, citations, first-hand experience, credentials.
  • Schema / rich results — what schema do winners have that earns SERP features (FAQ, HowTo, Review stars) that the user's page lacks?
  • On-page — internal links pointing to the page, keyword placement in title/H1.

Phase 4 — Brief

Produce a "to beat this SERP" brief: the recommended format/angle, the exact missing subtopics to add (with suggested H2s), depth/media targets, schema to add, E-E-A-T additions, and internal links to build. Make it directly handable to /content-writer. Write in the user's language.

1---
2name: competitor-pages
3argument-hint: "<your page URL + 1-3 competitor URLs ranking for the same query>"
4description: >
5 Competitor page gap analysis — take a query you want to win and the pages
6 currently outranking you, and produce a concrete brief on what to add or change
7 to compete. Compares content depth and coverage (subtopics they cover that you
8 don't), structure (headings, format, tables, media), search-intent match, E-E-A-T
9 signals, schema/rich-result eligibility, internal linking, and on-page
10 optimization — across your page vs. the top-ranking competitors. Use this skill
11 whenever the user wants to know why a competitor outranks them on a specific
12 query, what a top-ranking page does better, a content-gap analysis against
13 specific competitor URLs, or a brief to beat a specific SERP. Trigger on:
14 "why does competitor X outrank me", "content gap analysis", "competitor page
15 analysis", "what does the top result have that I don't", "how do I beat this
16 page", "analyze competitor pages", "SERP gap", "compete for [keyword]". For seed
17 keyword discovery use /keyword-research; for a content calendar use
18 /content-planner.
19---
20 
21# Competitor Page Gap Analysis
22 
23You are a senior SEO content strategist. Your job is to compare a target page
24against the pages outranking it for a specific query, find the concrete gaps, and
25hand back a brief that closes them.
26 
27> Credit: capability inspired by the open-source `claude-seo` project
28> (MIT, Agrici Daniel). Implementation is original to NotFair.
29 
30---
31 
32## Step 0 — Scope
33 
34Collect: the **target query**, the **user's page URL** (if it exists yet), and
35**1–3 competitor URLs** that rank for the query. If the user gives only the query,
36ask which competitors to compare against (or note the top organic results).
37 
38## Phase 0 — Preflight & data
39 
40Read and follow `../shared/preamble.md`. If GSC connected, pull the user's current
41position / impressions for the query to ground the gap (striking distance vs. far
42behind).
43 
44## Phase 1 — Crawl all pages
45 
46Fetch the user's page and each competitor page. For each, extract: title/H1,
47heading outline (H2/H3), word count, subtopics covered, media (images/video/
48tables/tools), schema types present, internal/external link counts, publish/update
49date, and author/E-E-A-T signals.
50 
51## Phase 2 — Intent & coverage comparison
52 
53- **Search intent** — what format do the winners take (guide / listicle /
54 comparison / tool / product)? Does the user's page match? Intent mismatch is
55 often the whole story.
56- **Coverage matrix** — list every subtopic/heading the competitors cover; mark
57 which the user's page covers (✅/❌). The ❌ rows are the content gaps.
58- **Depth & format** — word count, tables, examples, original data, media richness.
59- **Freshness** — are competitors recently updated while the user's page is stale?
60 
61## Phase 3 — Signals comparison
62 
63- **E-E-A-T** — author bios, citations, first-hand experience, credentials.
64- **Schema / rich results** — what schema do winners have that earns SERP features
65 (FAQ, HowTo, Review stars) that the user's page lacks?
66- **On-page** — internal links pointing to the page, keyword placement in title/H1.
67 
68## Phase 4 — Brief
69 
70Produce a **"to beat this SERP" brief**: the recommended format/angle, the exact
71missing subtopics to add (with suggested H2s), depth/media targets, schema to add,
72E-E-A-T additions, and internal links to build. Make it directly handable to
73`/content-writer`. Write in the user's language.
74 
View all files on GitHub →

Details

Updated
Sep 24, 2026
License
MIT
Stars on the repo
★ 3,853
Checked
Source
nowork-studio/notfair-plugin ↗
Creator
nowork-studio · 61 listings
View creator

Similar skills

See all →
SkillEstimate the intrinsic value of a public company using DCFCompany valuationhimself65/finance-skills · by himself65Estimate the intrinsic value of a public company using DCF, relative (peer multiple) and sum-of-parts (SOTP) methods, then triangulate to an implied share price with upside/downside versus the current market price. Use this skill whenever the user asks: what is AAPL worth", "valuation of NVDA", "fair value of TSLA", "intrinsic value", DCF for MSFT", "build a DCF", "discounted cash flow", "WACC", "terminal value", implied share price", "upside to fair value", "is X overvalued/undervalued", relative valuation", "peer comparison valuation", "EV/EBITDA target", "SOTP", sum of the parts", "how much is [company] worth", "price target from fundamentals", value this company", or any ticker in the context of computing intrinsic or relative valuation. Default to running ALL three methods (DCF + relative + SOTP-if-applicable) and presenting a blended implied price with a sensitivity table. Do not answer valuation questions from memory — always run the workflow.★ 3.3k GitHub starsSkillFind keywords a competitor ranks for that the user's siteCompetitor gapRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentFind keywords a competitor ranks for that the user's site doesn't — the content gap, prioritized by volume and winnability. Use when asked "what does competitor.com rank for", "keyword gap vs X", "steal competitor keywords", or "why do they outrank us".★ 3.1k GitHub starsSkillMine the highest-converting ad angles from customer reviewsAd angle minergooseworks-ai/goose-skills · by gooseworks-aiMine the highest-converting ad angles from customer reviews, Reddit complaints, support tickets, and competitor ads. Extracts actual pain language, competitor weaknesses, and outcome phrases that real buyers use. Outputs a ranked angle bank with proof quotes and recommended ad formats per angle.★ 1.2k GitHub starsSkillAnalyze competitor content coverageCompetitor content intelligencesandbaseai/sandbase-skills · by sandbaseaiAnalyze competitor content coverage and uncover differentiated content opportunities using web search, page extraction, and DataForSEO content analysis. Use when asked for competitor content research, editorial gap analysis, content brief inputs, or topic whitespace.★ 203 GitHub starsSkillCreates competitive battlecards for sales deal conversationsgrowthack88/growth-marketing-os · by growthack88Creates competitive battlecards for sales deal conversations. Produces win themes, landmines to plant, objection handlers, and competitive positioning per competitor. Outputs a structured markdown battlecard with quick-reference sections for live sales calls. Depends on competitor-research for competitive intelligence and consumes product-messaging, win-loss-analysis, and positioning for framing. Feeds into sales-deck, outreach-emails, and demo-script. Triggered by "battlecard", "competitive intel", "win against [competitor]", or "how do we beat [competitor]".★ 117 GitHub starsSkillRead your X audience and niche from real dataX audience insightssergebulaev/x-skills · by sergebulaevRead your X (Twitter) audience and niche from real data. Pull a handle's recent tweets (yours or a competitor's) with likes, replies, and views, see which formats and hooks are working, read the repliers on a tweet (X gates likers, so repliers are the signal), and scan a niche query for top tweets. Powered by Apify, no login. Triggers on "analyze my tweets", "what is working on X", "read the replies", "competitor tweets", "who is engaging". Not for writing a tweet (use x-post-writer).★ 95 GitHub stars

More from nowork-studio

SkillConnect a CMS to notfair SEO tools/setup-cmsnowork-studio/notfair-plugin · by nowork-studioConnect a CMS to notfair SEO tools. Guides users through configuring WordPress, Strapi, Contentful, or Ghost — tests the connection, and writes credentials to .env.local. Once set up, seo-analysis automatically cross- references CMS content against Google Search Console data. Use whenever the user says "connect my CMS", "set up WordPress", "configure Strapi", "add Contentful", "connect Ghost", or "CMS setup". Also trigger if the user asks why no CMS data appears in a seo-analysis report.★ 3.9k GitHub starsSkillGenerate and A/B test Google Ads copyAd Copy Generator + A/B Testernowork-studio/notfair-plugin · by nowork-studioGenerate and A/B test Google Ads copy. Use when asked to write ad copy, headlines, descriptions, create ad variants, test ad messaging, improve CTR, or generate RSA (Responsive Search Ad) components. Trigger on "ad copy", "write ads", "headlines", "descriptions", "RSA", "responsive search ad", "ad text", "ad creative", "improve CTR", "ad A/B test", "ad variants", "write me an ad", "ad variation experiment", or when the user wants to improve click-through rate on existing ads.★ 3.9k GitHub starsSkillPlan and review Amazon Ads with margin-aware ACoS, productAmazon Ads Planningnowork-studio/notfair-plugin · by nowork-studioPlan and review Amazon Ads with margin-aware ACoS, product, and search-term guardrails. Use for Amazon advertising, Sponsored Products, Sponsored Brands, Sponsored Display, ASIN targeting, Amazon ACoS, or Amazon Ads performance exports.★ 3.9k GitHub starsSkillBacklink / Off-Page SEO Auditnowork-studio/notfair-plugin · by nowork-studioBacklink / off-page SEO audit. Works WITHOUT a paid tool by default — it uses the Google Search Console Links report (your top linking sites, most-linked pages, and anchor text) plus any backlink export the user provides (Ahrefs / Semrush / Majestic / DataForSEO CSV). Analyzes referring-domain profile, anchor-text distribution (over-optimized / spammy patterns), most-linked pages vs. money pages (internal-linking opportunity), toxic/spam link signals, and link-building priorities. Use this skill when the user asks about backlinks, link building, off-page SEO, referring domains, anchor text, toxic/spam links, disavow, or their link profile. Trigger on: "backlinks", "backlink audit", "link building", "off- page SEO", "referring domains", "anchor text", "toxic links", "spam links", disavow file", "who links to me", "link profile", "domain authority". NOTE: rich third-party metrics (DR/DA, full link index) require a paid data source; this skill is explicit about what it can and can't see without one.★ 3.9k GitHub starsSkillScans a website to find broken linksBroken link checkernowork-studio/notfair-plugin · by nowork-studioScans a website to find broken links (404s, 500s). Crawls internal pages, identifies broken outbound links, and reports source pages for easy fixing. Use this when the user asks to "check for broken links", "find 404s", audit my links", or "is my site healthy".★ 3.9k GitHub starsSkillPlan and review ChatGPT Ads experiments without assuming adChatGPT Ads Planningnowork-studio/notfair-plugin · by nowork-studioPlan and review ChatGPT Ads experiments without assuming ad inventory, account access, or platform capabilities. Use for ChatGPT advertising, OpenAI ads, conversational ad concepts, ChatGPT campaign plans, or performance reviews from a verified export.★ 3.9k GitHub stars