Compares a draft or outline against the pages already ranking for its target query and outputs the missing subtopics, entities, and questions as a prioritized gap table - each gap classified must-have, differentiator, or skip. Use when someone asks "compare my draft against the top ranking pages", "what is my draft missing compared to the pages that rank", "run a content gap analysis on my draft", or has a target query plus 3-5 ranking URLs and wants to close coverage gaps before publishing. Do NOT use for a page that already ranks and is decaying over time - use content-refresh-auditor. Do NOT use for rewriting sections into citable answer blocks for AI engines or featured snippets - use aeo-answer-blockifier. Do NOT use for grouping a keyword list into page-level topics - use keyword-cluster-builder.
Click to play with sound.
---
name: SERP Gap Analyzer
description: Compares a draft or outline against the pages already ranking for its target query and outputs the missing subtopics, entities, and questions as a prioritized gap table - each gap classified must-have, differentiator, or skip. Use when someone asks "compare my draft against the top ranking pages", "what is my draft missing compared to the pages that rank", "run a content gap analysis on my draft", or has a target query plus 3-5 ranking URLs and wants to close coverage gaps before publishing. Do NOT use for a page that already ranks and is decaying over time - use content-refresh-auditor. Do NOT use for rewriting sections into citable answer blocks for AI engines or featured snippets - use aeo-answer-blockifier. Do NOT use for grouping a keyword list into page-level topics - use keyword-cluster-builder.
---
# SERP Gap Analyzer
Compare a draft against the pages that already rank for its target query and report which subtopics, entities, and questions it omits - ranked by whether closing each gap is worth it. The costly mistake this prevents is publishing a page that reads well but silently skips the coverage the query demands, then wondering why it stalls on page two: the ranking pages collectively define what "complete" means for this query, and a draft that ignores that consensus competes blind.
## Operating procedure
Order matters: the coverage map (step 2) feeds entity and question extraction, and classification (step 6) is meaningless before consensus is counted.
### Step 1: gather inputs
Collect before analyzing. If the ranking URLs are not supplied, ask for them - never invent rankings or competitor content.
- The target query (one query; a second query means a second analysis).
- The draft or its outline. An outline is acceptable; depth assessment (step 5) will be presence-only.
- 3-5 URLs currently ranking for the query. Default to the top organic results, excluding ads and aggregator pages that serve a different intent.
- The draft's target intent (informational, comparison, transactional). If unstated, infer it from the query and label the inference as a guess.
### Step 2: build the coverage map
Pull the H2/H3 outline from each ranking URL. Aggregate into one master subtopic list. Count consensus per subtopic: covered by a majority of competitors (3+ of 5, or 2+ of 3) = table stakes; covered by exactly one = optional differentiator signal.