Skip to main content
skill CX Codex

content-gap-analysis · aaron-he-zhu — Claude Code skill

Compares your site coverage with competitors and turns missing topics into a ranked content plan. Use it when you have your domain and competitor domains.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add aaron-he-zhu/aaron-marketing-skills --skill content-gap-analysis -a claude-code
Open on GitHub

What content-gap-analysis does

This skill compares your site with competitors across topics, keywords, content formats, and audience-journey stages. It produces a prioritised gap brief organised into Quick Wins, Strategic Builds, and Long-term work, with a content-calendar entry for each Quick Win.

It needs your domain or content inventory plus competitor domains. The skill stops to request them when they are unavailable, because a gap needs a coverage comparison. Bring 1-3 competitor domains before starting.

Optional sources include SEO tools, Search Console, analytics, and AI monitoring. Metrics are labelled Measured, User-provided, or Estimated, so estimates are kept distinct from tool data. Research is written under memory/research/content-gap-analysis/, while lasting priorities go to memory/hot-cache.md.

What it helps with

  • compare site topics against competitor coverage
  • find keywords missing from current content
  • spot gaps in content formats
  • rank coverage gaps by priority
  • build a content calendar for Quick Wins

Example prompts for the agent

  • Find content gaps between my site [URL] and competitor sites [URL].
  • What topics are we missing compared with 3 competitors?
  • Compare our topic cluster coverage for [topic] against competitors.

How to install content-gap-analysis

1Skills CLI (Vercel)

npx skills add aaron-he-zhu/aaron-marketing-skills --skill content-gap-analysis -a claude-code

2Manually: put the files in place

~/.claude/skills/content-gap-analysis/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/content-gap-analysis/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about content-gap-analysis

How do I install content-gap-analysis in Claude Code?

Run npx skills add aaron-he-zhu/aaron-marketing-skills --skill content-gap-analysis -a claude-code. The skill file is placed at ~/.claude/skills/content-gap-analysis/SKILL.md.

What does content-gap-analysis do?

It compares your domain's content with competitor coverage to find missing topics, keywords, and formats. It then ranks the gaps and creates a publication plan.

What is required for a content gap analysis?

Provide your domain or a content inventory, plus competitor domains. SEO tools, Search Console, analytics, and AI monitoring can also be used as optional sources.

Source text

SKILL.md · Apache-2.0
---
name: content-gap-analysis
slug: content-gap-analysis
displayName: "Content Gap Analysis · 内容缺口"
summary: "内容缺口/选题规划"
description: 'Use when the user asks to "find content gaps", "竞品写了什么", or "还应该写什么"; builds a competitor-relative coverage map of missing topics, keyword gaps, and editorial-calendar opportunities. Not for raw keyword demand discovery — use keyword-research. 内容缺口/选题规划'
version: "20.1.0"
license: Apache-2.0
compatibility: "Claude Code and compatible agent-skill hosts"
homepage: "https://github.com/aaron-he-zhu/aaron-marketing-skills"
when_to_use: "Use when finding content gaps between two domains, discovering missing topics, or identifying coverage holes versus competitors."
argument-hint: "<your domain> <competitor domain>"
metadata: {"author": "aaron-he-zhu", "version": "20.1.0", "discipline": "seo-geo", "phase": "survey", "geo-relevance": "medium", "hermes": {"tags": ["marketing", "seo-geo", "survey"], "category": "seo-geo"}, "openclaw": {"emoji": "🔍", "homepage": "https://github.com/aaron-he-zhu/aaron-marketing-skills"}}
---

# Content Gap Analysis

Identifies content opportunities by comparing your site against competitors and scoring the gaps worth closing first.

## Quick Start

```
Find content gaps between my site [URL] and [competitor URLs]
```

```
What content am I missing compared to my top 3 competitors?
```

## Skill Contract

**Expected output**: a prioritized gap brief plus the standard handoff summary for `memory/research/`.

- **Reads**: your domain, competitor domains, topic/content-type focus, audience, business goals, and any user-provided or tool content inventory.
- **Writes**: a user-facing analysis and reusable summary.
- **Promotes**: durable keyword priorities, competitor facts, and pending strategy decisions to `memory/hot-cache.md`, `memory/open-loops.md`, and `memory/research/`.
- **Done when**: each prioritized gap names the competitor(s) that cover it and you don't; gaps are bucketed into Quick Wins / Strategic Builds / Long-term; and the deliverable includes a dated content calendar entry per Quick Win.
- **Primary next skill**: [content-writer](../../implement/content-writer/SKILL.md) when the prioritized gap list is approved.

### Handoff Summary

> Emit the standard shape from [skill-contract.md §Handoff Summary Format](../../../references/skill-contract.md).

## Data Sources

Optional integrations: ~~SEO tool, ~~search console, ~~analytics, ~~AI monitor. Without tools, ask for site URL, content inventory, competitor URLs, and business goals. See [CONNECTORS.md](../../../CONNECTORS.md).

**Trend-scout as a gap-discovery input (keyless)**: feed the multi-source trend scout — Google Trends RSS plus Hacker News and Reddit, via [`scripts/connectors/rss_monitor.py`](../../../scripts/connectors/rss_monitor.py) — to surface rising topics your competitors and you may both miss. Treat each hit as a candidate gap, then check it against your and competitor coverage in steps 5-7. Mark these signals **Estimated**. See [CONNECTORS.md](../../../CONNECTORS.md) `~~trend database`.

**Keyless competitor-coverage inventory**: `python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/firecrawl.py" map <competitor-domain> --search "<topic>" --limit 1000` lists a competitor's URLs ordered by relevance to the topic — a fast **Measured** coverage inventory for steps 5-7 — and `firecrawl.py scrape <url>` reads any candidate page as rendered markdown. robots.txt is pre-flighted locally; a Disallow is refused per [SECURITY.md §Scraping Boundaries](../../../SECURITY.md). Firecrawl keyless free tier (~1,000 credits/mo). See [scripts/connectors/README.md](../../../scripts/connectors/README.md).

## Decision Gates

**Stop and ask** — gap analysis is competitor-relative and cannot run on demand alone:

1. No competitor domains given and none inferable from `CLAUDE.md` or prior research → ask the user to name 1-3 competitors, OR offer to switch to [keyword-research](../keyword-research/SKILL.md) for demand-side discovery instead.
2. Your own domain/content inventory is unavailable and cannot be fetched → ask for the site URL or a content list, since "gap" requires knowing current coverage.

**Continue silently** — do not stop for: which 3-5 named competitors to deep-dive (pick the closest); missing optional tool data (mark Estimated/N/A and proceed); ambiguous topic scope (analyze the full overlap and flag the broadest clusters).

## Instructions

When a user requests content gap analysis:

1. **Define Analysis Scope** — confirm your site, competitors, topic focus, content types, audience, and business goals.
2. **Audit Your Existing Content** — map indexed pages, content types, topic clusters, winners, and weaknesses.
3. **Analyze Competitor Content** — compare content volume, traffic, type mix, topic coverage, and unique assets.
4. **Identify Keyword Gaps** — group gaps into High Priority, Quick Wins, and Long-term based on volume, difficulty, and relevance.
5. **Map Topic Gaps** — compare topic-cluster coverage and recommend pillar / cluster approaches for missing themes.
6. **Identify Content Format Gaps** — compare guides, tutorials, comparisons, case studies, tools, templates, video, and research.
7. **Analyze GEO / AI Gaps** — identify missing Q&A, definition, and comparison content that competitors get cited for.
8. **Map to Audience Journey** — compare Awareness, Consideration, Decision, and Retention coverage.
9. **Prioritize and Create Action Plan** — deliver an Executive Summary, Prioritized Gap List (Quick Wins / Strategic Builds / Long-term), Content Calendar, and Success Metrics.

Label every metric **Measured** (tool/export), **User-provided**, or **Estimated** (model inference); never present an estimate as measured; if a required metric is unavailable, mark it N/A — do not invent it.

**Quality bar**: every gap names the competitor that covers it, its volume or traffic estimate, and why it is worth closing — never list a bare topic without that evidence.

> **Reference**: See [Analysis Templates](references/analysis-templates.md) for the compact templates used in each step.

## Example

See [references/example-report.md](references/example-report.md) for a full SaaS marketing sample.

## Advanced Analysis

### Competitive Cluster Comparison

```
Compare our topic cluster coverage for [topic] vs top 5 competitors
```

### Temporal Gap Analysis

```
What content have competitors published in the last 6 months that we haven't covered?
```

### Intent-Based Gaps

```
Find gaps in our [commercial/informational] intent content
```

## Save Results

Write path: `memory/research/content-gap-analysis/YYYY-MM-DD-<topic>.md`; promote durable gap priorities and competitor facts to `memory/hot-cache.md`. See [Skill Contract](../../../references/skill-contract.md) §Save Results Template.

## Reference Materials

- [Analysis Templates](references/analysis-templates.md) — Gap-analysis templates
- [Gap Analysis Frameworks](references/gap-analysis-frameworks.md) — Audit and prioritization frameworks
- [Example Report](references/example-report.md) — Worked sample

## Next Best Skill

Primary: [content-writer](../../implement/content-writer/SKILL.md).

© aaron-he-zhu · Apache-2.0 · aaron-he-zhu/aaron-marketing-skills

Similar skills

Everything for SEO and GEO →

content-gap-analysis by other authors comes first.

content-gap-analysis aaron-he-zhu A skill that finds gaps in your content by comparing topics and surfacing what is missing. Installs from the aaron-marketing-skills bundle. CX Codex +1 5,100installs content-gap-analysis OpenClaudia Compares your website content and search queries against 2-3 competitors using sitemaps and Semrush API. Useful for finding missing topic clusters, formats, and AI search visibility gaps. CX Codex +1 453installs beat-competitors calm-north Turns competitor keyword data into a ranked attack plan: where you are a few spots behind, which topics you missed, what to do first. CX Codex +1 2,100installs competitor-research kostja94 Guides competitor research for SEO, content, backlinks, and positioning. It identifies keyword gaps and analyzes top-ranking articles before publishing. CX Codex +1 1,300installs competitor-analysis every-app A skill for analyzing one competitor's organic footprint: keywords, content themes, backlinks, and gaps. Delivers a report with a winnable action plan. CX Codex +1 6,600installs founder-marketing-skills reason-machines A set of skills for social search audits, keyword research, growth strategy, and competitor analysis. Use it to explore marketing options for a business with an agent. CX Codex +1 951installs shopify-content jezweb Creates and updates Shopify store content through the Admin API or browser automation. Use it for pages, blog posts, menus, redirects, and SEO fields. CX Codex +1 1,200installs seo-competitor-pages AgriciDaniel Builds "X vs Y" and "alternatives to X" pages with feature matrices, schema.org markup and conversion-focused layouts. CX Codex +1 7,600installs

From the same set113

keyword-research A skill that discovers keywords for a topic, scores volume and difficulty, groups them into clusters and returns a content plan. CX Codex +1 1,900installs content-writer Generates search-focused drafts from scratch and audits declining pages to plan content refreshes. Fits blog posts and landing pages. CX Codex +1 1,800installs geo-content-optimizer Audits and rewrites a page so ChatGPT, Perplexity, Gemini and AI Overviews are more likely to quote it. Handy when search clicks are sliding. CX Codex +1 1,700installs competitor-analysis Benchmarks competitor keywords, backlinks, traffic share, and AI citations. It generates comparison tables and a prioritized SEO action plan. CX Codex +1 1,500installs content-quality-auditor Scores a draft or live page against 80 CORE-EEAT items and returns a SHIP, FIX, BLOCK or UNDECIDED verdict before you publish. CX Codex +1 1,500installs short-video-scripter Builds timestamped 9:16 beat-sheet scripts for TikTok, Reels, Shorts, and Douyin. It helps retain viewers in the opening seconds using structured drop-off gates. CX Codex +1 1,500installs site-structure-optimizer A skill that plans site structure and untangles internal linking: page hierarchy, URLs, hub clusters, orphan pages. It returns a structure score out of 100. CX Codex +1 1,400installs serp-markup-builder Builds the document head: title and description options, an Open Graph and Twitter Card block, and validated JSON-LD for rich results. CX Codex +1 1,400installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor