C
Content SOPKnowledge Base
Search
← All topics

Content Gap Analysis: Find What Competitors Rank For That You Don't

runnable

Competitor content gap analysis that identifies topics and keywords competitors rank for that your site doesn't. Covers the 3-competitor extraction method, gap prioritization matrix, and content calendar output. Turns competitive gaps into a 90-day content plan.

content-gapcompetitorkeyword-researchseocontent-strategy
Agent trigger phrases: content gap analysis · what competitors rank for · keyword gap · find content gaps · competitor content gaps · topics I'm missing · content i should write

Content Gap Analysis: Find What Competitors Rank For That You Don't

Content strategy without gap analysis is guesswork. This method extracts competitor rankings, maps the gaps against your content, and produces a priority-ordered production plan.


Step 1: Identify 3 True Competitors

True competitors = sites ranking for the same keywords in the same geography and niche. They are NOT:

  • Industry publications (Angi, HomeAdvisor for local service businesses)
  • National brands if you are local
  • Sites in adjacent niches

Select 3 competitors with the closest keyword overlap to your target site.


Step 2: Extract Competitor Rankings

For each competitor, extract their top-ranking pages and keywords:

Method A: DataForSEO (recommended)

  • Endpoint: GET /v3/serp/competitor/keywords
  • Pull top 100 ranking keywords per competitor
  • Filter: position 1-20, target country, exclude branded terms

Method B: Manual SERP mining

  • Search primary keyword + "site:[competitor-domain]"
  • Review top 20 indexed pages
  • For each page: identify primary keyword, ranking position, estimated monthly visits

Output per competitor:

COMPETITOR: [domain]
Top 20 ranking pages:
1. [URL] | [primary keyword] | [position] | [est. monthly visits]
2. ...

Step 3: Build the Gap Map

Compare competitor rankings against your site's existing content:

Gap categories:

| Category | Definition | Priority | |----------|-----------|---------| | Hard gap | Competitor ranks positions 1-5, you have no content | Highest | | Soft gap | Competitor ranks 1-10, you rank 15-30 | High | | Coverage gap | You have content but it's thinner than competitor | Medium | | Opportunity gap | Competitor doesn't rank it well (position 11-30) | Medium |


Step 4: Gap Prioritization Matrix

Score each gap keyword on 4 factors:

| Factor | Weight | Scoring | |--------|--------|---------| | Search volume | 25% | High=3 / Medium=2 / Low=1 | | Keyword difficulty | 25% | Easy=3 / Medium=2 / Hard=1 | | Commercial intent | 30% | Transactional=3 / Commercial=2 / Informational=1 | | Existing asset | 20% | None=3 / Thin=2 / Solid but needs update=1 |

Priority score: Sum of weighted values. Max = 10.

  • Score 7.5-10: Produce immediately (hard gap + commercial value)
  • Score 5-7.4: Plan for next 90 days
  • Score below 5: Monitor quarterly

Step 5: Content Brief Generation Per Gap

For each prioritized gap, generate a brief:

GAP BRIEF:
- Target keyword: [exact phrase]
- Gap type: [Hard / Soft / Coverage / Opportunity]
- Priority score: [X.X]
- Competitor page: [URL that's outranking]
- Competitor word count: [number]
- Target word count: [competitor + 15%]
- Content type: [article / service page / location page / FAQ / comparison]
- Key sections to cover: [list from competitor H2 structure + gaps they missed]
- CTA goal: [call / form / email / purchase]

Step 6: 90-Day Content Calendar Output

Sort gaps by priority score and fill the calendar:

| Month | Week | Keyword | Content Type | Priority Score | |-------|------|---------|-------------|---------------| | Month 1 | Week 1 | [gap 1] | [type] | [score] | | Month 1 | Week 2 | [gap 2] | [type] | [score] | | Month 1 | Week 3 | [gap 3] | [type] | [score] | | Month 1 | Week 4 | [gap 4] | [type] | [score] | | Month 2 | Week 1 | [gap 5] | [type] | [score] | ...

One new content piece per week = 12 pieces in 90 days. Two per week = 24. Match production capacity to plan.


What to Do With Coverage Gaps

Coverage gaps (you have content but thinner than competitor):

  1. Pull the existing page
  2. Run content-refiner-merge-method workflow
  3. Identify the specific sections competitor has that you don't
  4. Add those sections without rewriting what's working
  5. Update publish date after meaningful additions

Coverage gap updates should take 1-3 hours per page. Full rewrites only if the page is fundamentally wrong in angle or intent.

#content-sop #content-gap #competitor #keyword-research