mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-25 00:36:31 +02:00
feat: enhance SurfSense with new skills, blog section, and improve SEO metadata
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`. - Introduced `fuzzy-search` dependency in package.json for improved search functionality. - Updated pnpm-lock.yaml to include the new `fuzzy-search` package. - Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility. - Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
This commit is contained in:
parent
61b3f0d7e3
commit
7ea840dbb2
120 changed files with 25729 additions and 352 deletions
287
.cursor/skills/content-gap-analysis/SKILL.md
Normal file
287
.cursor/skills/content-gap-analysis/SKILL.md
Normal file
|
|
@ -0,0 +1,287 @@
|
|||
---
|
||||
name: content-gap-analysis
|
||||
description: 'Find content gaps: topics and keywords competitors cover that you don''t, with editorial calendar. 内容缺口/选题规划'
|
||||
version: "6.0.0"
|
||||
license: Apache-2.0
|
||||
compatibility: "Claude Code ≥1.0, skills.sh marketplace, ClawHub marketplace, Vercel Labs skills ecosystem. No system packages required. Optional: MCP network access for SEO tool integrations."
|
||||
homepage: "https://github.com/aaron-he-zhu/seo-geo-claude-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: "6.0.0"
|
||||
geo-relevance: "medium"
|
||||
tags:
|
||||
- seo
|
||||
- geo
|
||||
- content-gaps
|
||||
- topic-analysis
|
||||
- content-strategy
|
||||
- editorial-calendar
|
||||
- competitive-gap
|
||||
- content-opportunities
|
||||
- 内容缺口
|
||||
- コンテンツギャップ
|
||||
- 콘텐츠갭
|
||||
- brechas-contenido
|
||||
triggers:
|
||||
# EN-formal
|
||||
- "find content gaps"
|
||||
- "content opportunities"
|
||||
- "topic analysis"
|
||||
- "content strategy gaps"
|
||||
- "editorial calendar"
|
||||
- "untapped topics"
|
||||
# EN-casual
|
||||
- "what am I missing"
|
||||
- "topics to cover"
|
||||
- "what do competitors write about"
|
||||
- "what should I cover next"
|
||||
- "topics I haven't written about"
|
||||
- "they cover this but I don't"
|
||||
# EN-question
|
||||
- "what topics am I missing"
|
||||
- "what content should I create"
|
||||
# ZH-pro
|
||||
- "内容缺口分析"
|
||||
- "选题规划"
|
||||
- "内容机会"
|
||||
- "竞品话题"
|
||||
# ZH-casual
|
||||
- "缺什么内容"
|
||||
- "竞品写了什么"
|
||||
- "还应该写什么"
|
||||
# JA
|
||||
- "コンテンツギャップ"
|
||||
- "コンテンツ機会"
|
||||
# KO
|
||||
- "콘텐츠 갭 분석"
|
||||
- "콘텐츠 기회"
|
||||
# ES
|
||||
- "brechas de contenido"
|
||||
- "oportunidades de contenido"
|
||||
# PT
|
||||
- "lacunas de conteúdo"
|
||||
# Misspellings
|
||||
- "content gab analysis"
|
||||
---
|
||||
|
||||
# Content Gap Analysis
|
||||
|
||||
|
||||
> **[SEO & GEO Skills Library](https://github.com/aaron-he-zhu/seo-geo-claude-skills)** · 20 skills for SEO + GEO · [ClawHub](https://clawhub.ai/u/aaron-he-zhu) · [skills.sh](https://skills.sh/aaron-he-zhu/seo-geo-claude-skills)
|
||||
> **System Mode**: This research skill follows the shared [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md) and [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md).
|
||||
|
||||
|
||||
Identifies content opportunities by analyzing gaps between a site's content and competitors'. Surfaces missing topics, untapped keywords, and content formats worth creating.
|
||||
|
||||
**System role**: Research layer skill. It turns market signals into reusable strategic inputs for the rest of the library.
|
||||
|
||||
## When This Must Trigger
|
||||
|
||||
Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:
|
||||
|
||||
Use this whenever the task needs reusable market intelligence that should influence strategy, not just an ad hoc answer.
|
||||
|
||||
- Planning content strategy and editorial calendar
|
||||
- Finding quick-win content opportunities
|
||||
- Understanding where competitors outperform you
|
||||
- Identifying underserved topics in your niche
|
||||
- Expanding into adjacent topic areas
|
||||
- Prioritizing content creation efforts
|
||||
- Finding GEO opportunities competitors miss
|
||||
|
||||
## What This Skill Does
|
||||
|
||||
1. **Keyword Gap Analysis**: Finds keywords competitors rank for that you don't
|
||||
2. **Topic Coverage Mapping**: Identifies topic areas needing more content
|
||||
3. **Content Format Gaps**: Reveals missing content types (videos, tools, guides)
|
||||
4. **Audience Need Mapping**: Matches gaps to audience journey stages
|
||||
5. **GEO Opportunity Detection**: Finds AI-answerable topics you're missing
|
||||
6. **Priority Scoring**: Ranks gaps by impact and effort
|
||||
7. **Content Calendar Creation**: Plans gap-filling content schedule
|
||||
|
||||
## Quick Start
|
||||
|
||||
Start with one of these prompts. Finish with a short handoff summary using the repository format in [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md).
|
||||
|
||||
### Basic Gap Analysis
|
||||
|
||||
```
|
||||
Find content gaps between my site [URL] and [competitor URLs]
|
||||
```
|
||||
|
||||
```
|
||||
What content am I missing compared to my top 3 competitors?
|
||||
```
|
||||
|
||||
### Topic-Specific Analysis
|
||||
|
||||
```
|
||||
Find content gaps in [topic area] compared to industry leaders
|
||||
```
|
||||
|
||||
```
|
||||
What [content type] do competitors have that I don't?
|
||||
```
|
||||
|
||||
### Audience-Focused
|
||||
|
||||
```
|
||||
What content gaps exist for [audience segment] in my niche?
|
||||
```
|
||||
|
||||
## Skill Contract
|
||||
|
||||
**Expected output**: a prioritized research brief, evidence-backed findings, and a short handoff summary ready for `memory/research/`.
|
||||
|
||||
- **Reads**: user goals, target market inputs, available tool data, and prior strategy from [CLAUDE.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CLAUDE.md) and the shared [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md) when available.
|
||||
- **Writes**: a user-facing research deliverable plus a reusable summary that can be stored under `memory/research/`.
|
||||
- **Promotes**: durable keyword priorities, competitor facts, entity candidates, and strategic decisions to `CLAUDE.md`, `memory/decisions.md`, and `memory/research/`; hand canonical entity work to `entity-optimizer`.
|
||||
- **Next handoff**: use the `Next Best Skill` below when the findings are ready to drive action.
|
||||
|
||||
## Data Sources
|
||||
|
||||
> **Note:** All integrations are optional. This skill works without any API keys — users provide data manually when no tools are connected.
|
||||
|
||||
> See [CONNECTORS.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CONNECTORS.md) for tool category placeholders.
|
||||
|
||||
**With ~~SEO tool + ~~search console + ~~analytics + ~~AI monitor connected:**
|
||||
Automatically pull your site's content inventory from ~~search console and ~~analytics (indexed pages, traffic per page, keywords ranking), competitor content data from ~~SEO tool (ranking keywords, top pages, backlink counts), and AI citation patterns from ~~AI monitor. Keyword overlap analysis and gap identification can be automated.
|
||||
|
||||
**With manual data only:**
|
||||
Ask the user to provide:
|
||||
1. Your site URL and content inventory (list of published content with topics)
|
||||
2. Competitor URLs (3-5 sites)
|
||||
3. Your current traffic and keyword performance (if available)
|
||||
4. Known content strengths and weaknesses
|
||||
5. Industry context and business goals
|
||||
|
||||
Proceed with the full analysis using provided data. Note in the output which metrics are from automated collection vs. user-provided data.
|
||||
|
||||
## Instructions
|
||||
|
||||
When a user requests content gap analysis:
|
||||
|
||||
1. **Define Analysis Scope**
|
||||
|
||||
Clarify parameters:
|
||||
|
||||
```markdown
|
||||
### Analysis Parameters
|
||||
|
||||
**Your Site**: [URL]
|
||||
**Competitors to Analyze**: [URLs or "identify for me"]
|
||||
**Topic Focus**: [specific area or "all"]
|
||||
**Content Types**: [blogs, guides, tools, videos, or "all"]
|
||||
**Audience**: [target audience]
|
||||
**Business Goals**: [traffic, leads, authority, etc.]
|
||||
```
|
||||
|
||||
2. **Audit Your Existing Content**
|
||||
|
||||
Document total indexed pages, content by type and topic cluster, top performing content, and content strengths/weaknesses.
|
||||
|
||||
3. **Analyze Competitor Content**
|
||||
|
||||
For each competitor: document content volume, monthly traffic, content distribution by type, topic coverage vs. yours, and unique content they have.
|
||||
|
||||
4. **Identify Keyword Gaps**
|
||||
|
||||
Find keywords competitors rank for that you do not. Categorize into High Priority (high volume, achievable difficulty), Quick Wins (lower volume, low difficulty), and Long-term (high volume, high difficulty). Include keyword overlap analysis.
|
||||
|
||||
5. **Map Topic Gaps**
|
||||
|
||||
Create a topic coverage comparison matrix across all competitors. For each missing topic cluster, document business relevance, competitor coverage, opportunity size, sub-topics, and recommended pillar/cluster approach.
|
||||
|
||||
6. **Identify Content Format Gaps**
|
||||
|
||||
Compare format distribution (guides, tutorials, comparisons, case studies, tools, templates, video, infographics, research) against competitors and industry averages. For each gap, assess effort and expected impact.
|
||||
|
||||
7. **Analyze GEO/AI Gaps**
|
||||
|
||||
Identify topics where competitors get AI citations but you do not. Document missing Q&A content, definition/explanation content, and comparison content. Score each by traditional SEO value and GEO value.
|
||||
|
||||
8. **Map to Audience Journey**
|
||||
|
||||
Compare funnel stage coverage (Awareness, Consideration, Decision, Retention) against competitor averages. Detail specific gaps at each stage.
|
||||
|
||||
9. **Prioritize and Create Action Plan**
|
||||
|
||||
Produce a final report with: Executive Summary, Prioritized Gap List (Tier 1 Quick Wins, Tier 2 Strategic Builds, Tier 3 Long-term), Content Calendar, and Success Metrics.
|
||||
|
||||
> **Reference**: See [references/analysis-templates.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/research/content-gap-analysis/references/analysis-templates.md) for detailed templates for each step.
|
||||
|
||||
## Validation Checkpoints
|
||||
|
||||
### Input Validation
|
||||
- [ ] Your content inventory is complete or representative sample provided
|
||||
- [ ] Competitor URLs identified (minimum 2-3 competitors)
|
||||
- [ ] Analysis scope defined (specific topics or comprehensive)
|
||||
- [ ] Business goals and priorities clarified
|
||||
|
||||
### Output Validation
|
||||
- [ ] Every recommendation cites specific data points (not generic advice)
|
||||
- [ ] Gap analysis compares like-to-like content (topic clusters to topic clusters)
|
||||
- [ ] Priority scoring based on measurable criteria (volume, difficulty, business fit)
|
||||
- [ ] Content calendar maps gaps to realistic timeframes
|
||||
- [ ] Source of each data point clearly stated (~~SEO tool data, ~~analytics data, ~~AI monitor data, user-provided, or estimated)
|
||||
|
||||
## Example
|
||||
|
||||
> **Reference**: See [references/example-report.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/research/content-gap-analysis/references/example-report.md) for a complete example analyzing SaaS marketing blog gaps vs. HubSpot and Drift.
|
||||
|
||||
## 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
|
||||
```
|
||||
|
||||
## Tips for Success
|
||||
|
||||
1. **Focus on actionable gaps** - Not all gaps are worth filling
|
||||
2. **Consider your resources** - Prioritize based on ability to execute
|
||||
3. **Quality over quantity** - Better to fill 5 gaps well than 20 poorly
|
||||
4. **Track what works** - Measure gap-filling success
|
||||
5. **Update regularly** - Gaps change as competitors publish
|
||||
6. **Include GEO opportunities** - Don't just optimize for traditional search
|
||||
|
||||
|
||||
|
||||
### Save Results
|
||||
|
||||
After delivering findings to the user, ask:
|
||||
|
||||
> "Save these results for future sessions?"
|
||||
|
||||
If yes, write a dated summary to `memory/research/content-gap-analysis/YYYY-MM-DD-<topic>.md` containing:
|
||||
- One-line headline finding
|
||||
- Top 3-5 actionable items
|
||||
- Open loops or blockers
|
||||
- Source data references
|
||||
|
||||
If any findings should influence ongoing strategy, recommend promoting key conclusions to `memory/hot-cache.md`.
|
||||
|
||||
## Reference Materials
|
||||
|
||||
- [Analysis Templates](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/research/content-gap-analysis/references/analysis-templates.md) — Detailed templates for each analysis step (inventory, competitor content, keyword gaps, topic gaps, format gaps, GEO gaps, journey, prioritized report)
|
||||
- [Gap Analysis Frameworks](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/research/content-gap-analysis/references/gap-analysis-frameworks.md) — Content audit matrices, funnel mapping, and gap prioritization scoring methodologies
|
||||
- [Example Report](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/research/content-gap-analysis/references/example-report.md) — Complete example analyzing SaaS marketing blog gaps vs. HubSpot and Drift
|
||||
|
||||
## Next Best Skill
|
||||
|
||||
- **Primary**: [seo-content-writer](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/seo-content-writer/SKILL.md) — turn missing topics into a draft or content roadmap.
|
||||
|
|
@ -0,0 +1,335 @@
|
|||
# Content Gap Analysis — Analysis Templates
|
||||
|
||||
Templates for each step of the content gap analysis workflow. Use these to structure your output.
|
||||
|
||||
## Content Inventory Template
|
||||
|
||||
```markdown
|
||||
## Your Content Inventory
|
||||
|
||||
**Total Indexed Pages**: [X]
|
||||
**Content by Type**:
|
||||
- Blog posts: [X]
|
||||
- Landing pages: [X]
|
||||
- Resource pages: [X]
|
||||
- Tools/calculators: [X]
|
||||
- Case studies: [X]
|
||||
|
||||
**Content by Topic Cluster**:
|
||||
|
||||
| Topic | Articles | Keywords Ranking | Traffic |
|
||||
|-------|----------|------------------|---------|
|
||||
| [topic 1] | [X] | [X] | [X] |
|
||||
| [topic 2] | [X] | [X] | [X] |
|
||||
| [topic 3] | [X] | [X] | [X] |
|
||||
|
||||
**Top Performing Content**:
|
||||
1. [Title] - [traffic] visits - [keywords] keywords
|
||||
2. [Title] - [traffic] visits - [keywords] keywords
|
||||
3. [Title] - [traffic] visits - [keywords] keywords
|
||||
|
||||
**Content Strengths**:
|
||||
- [Strength 1]
|
||||
- [Strength 2]
|
||||
|
||||
**Content Weaknesses**:
|
||||
- [Weakness 1]
|
||||
- [Weakness 2]
|
||||
```
|
||||
|
||||
## Competitor Content Analysis Template
|
||||
|
||||
```markdown
|
||||
## Competitor Content Analysis
|
||||
|
||||
### Competitor 1: [Name/URL]
|
||||
|
||||
**Content Volume**: [X] pages
|
||||
**Monthly Traffic**: [X] visits
|
||||
|
||||
**Content Distribution**:
|
||||
| Type | Count | Est. Traffic |
|
||||
|------|-------|--------------|
|
||||
| Blog posts | [X] | [X] |
|
||||
| Guides | [X] | [X] |
|
||||
| Tools | [X] | [X] |
|
||||
| Videos | [X] | [X] |
|
||||
|
||||
**Topic Coverage**:
|
||||
| Topic | Articles | Your Coverage |
|
||||
|-------|----------|---------------|
|
||||
| [topic] | [X] | [X or "None"] |
|
||||
|
||||
**Unique Content They Have**:
|
||||
1. [Content piece] - [traffic] - [why it works]
|
||||
2. [Content piece] - [traffic] - [why it works]
|
||||
|
||||
[Repeat for each competitor]
|
||||
```
|
||||
|
||||
## Keyword Gap Analysis Template
|
||||
|
||||
```markdown
|
||||
## Keyword Gap Analysis
|
||||
|
||||
### Keywords Competitors Rank For (You Don't)
|
||||
|
||||
**High Priority Gaps** (High volume, achievable difficulty)
|
||||
|
||||
| Keyword | Volume | Difficulty | Competitor | Their Position |
|
||||
|---------|--------|------------|------------|----------------|
|
||||
| [kw 1] | [vol] | [diff] | [comp] | [pos] |
|
||||
| [kw 2] | [vol] | [diff] | [comp] | [pos] |
|
||||
| [kw 3] | [vol] | [diff] | [comp] | [pos] |
|
||||
|
||||
**Quick Win Gaps** (Lower volume, low difficulty)
|
||||
|
||||
| Keyword | Volume | Difficulty | Competitor | Their Position |
|
||||
|---------|--------|------------|------------|----------------|
|
||||
| [kw 1] | [vol] | [diff] | [comp] | [pos] |
|
||||
|
||||
**Long-term Gaps** (High volume, high difficulty)
|
||||
|
||||
| Keyword | Volume | Difficulty | Competitor | Their Position |
|
||||
|---------|--------|------------|------------|----------------|
|
||||
| [kw 1] | [vol] | [diff] | [comp] | [pos] |
|
||||
|
||||
### Keyword Overlap Analysis
|
||||
|
||||
```
|
||||
Venn Diagram Representation:
|
||||
|
||||
You Competitor 1
|
||||
○ ○
|
||||
/ \ / \
|
||||
/ \ / \
|
||||
/ A \ B / C \
|
||||
/ \ / \
|
||||
○─────────○─────○─────────○
|
||||
Competitor 2
|
||||
|
||||
A: Keywords only you rank for: [X]
|
||||
B: Overlap with Comp 1: [X]
|
||||
C: Keywords all competitors share: [X]
|
||||
Gap: Keywords they all have, you don't: [X]
|
||||
```
|
||||
|
||||
**Unique Keywords (Your Advantage)**:
|
||||
| Keyword | Your Position | Volume |
|
||||
|---------|---------------|--------|
|
||||
| [kw] | [pos] | [vol] |
|
||||
```
|
||||
|
||||
## Topic Gap Analysis Template
|
||||
|
||||
```markdown
|
||||
## Topic Gap Analysis
|
||||
|
||||
### Topic Coverage Comparison
|
||||
|
||||
| Topic Area | You | Comp 1 | Comp 2 | Comp 3 | Gap? |
|
||||
|------------|-----|--------|--------|--------|------|
|
||||
| [Topic 1] | ✅ [X] | ✅ [X] | ✅ [X] | ✅ [X] | No |
|
||||
| [Topic 2] | ❌ 0 | ✅ [X] | ✅ [X] | ✅ [X] | **Yes** |
|
||||
| [Topic 3] | ✅ [X] | ✅ [X] | ❌ 0 | ✅ [X] | Partial |
|
||||
| [Topic 4] | ❌ 0 | ✅ [X] | ✅ [X] | ❌ 0 | **Yes** |
|
||||
|
||||
### Missing Topic Clusters
|
||||
|
||||
#### Gap 1: [Topic Area]
|
||||
|
||||
**Why it matters**: [Business relevance]
|
||||
**Competitor coverage**: [Who covers it and how]
|
||||
**Opportunity size**: [Traffic/keyword potential]
|
||||
|
||||
**Sub-topics to cover**:
|
||||
1. [Sub-topic] - [X] search volume
|
||||
2. [Sub-topic] - [X] search volume
|
||||
3. [Sub-topic] - [X] search volume
|
||||
|
||||
**Recommended approach**:
|
||||
- Pillar content: [topic]
|
||||
- Cluster articles: [list]
|
||||
- Supporting content: [list]
|
||||
```
|
||||
|
||||
## Content Format Gap Template
|
||||
|
||||
```markdown
|
||||
## Content Format Gap Analysis
|
||||
|
||||
### Format Distribution Comparison
|
||||
|
||||
| Format | You | Comp 1 | Comp 2 | Industry Avg |
|
||||
|--------|-----|--------|--------|--------------|
|
||||
| Long-form guides | [X] | [X] | [X] | [X] |
|
||||
| Tutorials | [X] | [X] | [X] | [X] |
|
||||
| Comparison posts | [X] | [X] | [X] | [X] |
|
||||
| Case studies | [X] | [X] | [X] | [X] |
|
||||
| Tools/calculators | [X] | [X] | [X] | [X] |
|
||||
| Templates | [X] | [X] | [X] | [X] |
|
||||
| Video content | [X] | [X] | [X] | [X] |
|
||||
| Infographics | [X] | [X] | [X] | [X] |
|
||||
| Original research | [X] | [X] | [X] | [X] |
|
||||
|
||||
### Format Gaps to Fill
|
||||
|
||||
#### Gap: [Format Type]
|
||||
|
||||
**Current state**: You have [X], competitors average [Y]
|
||||
**Best examples**: [Competitor content examples]
|
||||
**Opportunity**: [Description]
|
||||
**Effort to create**: [Low/Medium/High]
|
||||
**Expected impact**: [Low/Medium/High]
|
||||
|
||||
**Recommended first project**:
|
||||
[Specific content idea]
|
||||
```
|
||||
|
||||
## GEO Content Gap Template
|
||||
|
||||
```markdown
|
||||
## GEO Content Gap Analysis
|
||||
|
||||
### AI-Answerable Topics Assessment
|
||||
|
||||
**Topics where competitors get AI citations (you don't)**:
|
||||
|
||||
| Topic | AI Cites | Why They're Cited | Your Gap |
|
||||
|-------|----------|-------------------|----------|
|
||||
| [topic 1] | [Comp] | [reason] | [what you need] |
|
||||
| [topic 2] | [Comp] | [reason] | [what you need] |
|
||||
|
||||
### GEO-Optimized Content Gaps
|
||||
|
||||
**Missing Q&A Content**:
|
||||
| Question | Search Volume | Currently Answered By |
|
||||
|----------|---------------|----------------------|
|
||||
| [question] | [vol] | [competitor] |
|
||||
|
||||
**Missing Definition/Explanation Content**:
|
||||
| Term | Search Volume | Best Current Source |
|
||||
|------|---------------|---------------------|
|
||||
| [term] | [vol] | [source] |
|
||||
|
||||
**Missing Comparison Content**:
|
||||
| Comparison | Search Volume | Best Current Source |
|
||||
|------------|---------------|---------------------|
|
||||
| [A vs B] | [vol] | [source] |
|
||||
|
||||
### GEO Opportunity Score
|
||||
|
||||
| Topic | Traditional SEO Value | GEO Value | Combined Priority |
|
||||
|-------|----------------------|-----------|-------------------|
|
||||
| [topic] | [score] | [score] | [priority] |
|
||||
```
|
||||
|
||||
## Audience Journey Gap Template
|
||||
|
||||
```markdown
|
||||
## Audience Journey Gap Analysis
|
||||
|
||||
### Funnel Stage Coverage
|
||||
|
||||
| Stage | Your Content | Competitor Avg | Gap |
|
||||
|-------|--------------|----------------|-----|
|
||||
| Awareness | [X] articles | [X] articles | [+/-X] |
|
||||
| Consideration | [X] articles | [X] articles | [+/-X] |
|
||||
| Decision | [X] articles | [X] articles | [+/-X] |
|
||||
| Retention | [X] articles | [X] articles | [+/-X] |
|
||||
|
||||
### Journey Gap Details
|
||||
|
||||
#### Awareness Stage Gaps
|
||||
- Missing: [topics/content]
|
||||
- Opportunity: [description]
|
||||
|
||||
#### Consideration Stage Gaps
|
||||
- Missing: [topics/content]
|
||||
- Opportunity: [description]
|
||||
|
||||
#### Decision Stage Gaps
|
||||
- Missing: [topics/content]
|
||||
- Opportunity: [description]
|
||||
```
|
||||
|
||||
## Prioritized Report Template
|
||||
|
||||
```markdown
|
||||
# Content Gap Analysis Report
|
||||
|
||||
## Executive Summary
|
||||
|
||||
**Analysis Date**: [Date]
|
||||
**Sites Analyzed**: [Your site] vs [Competitors]
|
||||
|
||||
**Key Findings**:
|
||||
1. [Most significant gap]
|
||||
2. [Second significant gap]
|
||||
3. [Third significant gap]
|
||||
|
||||
**Total Opportunity**:
|
||||
- Keywords gaps identified: [X]
|
||||
- Estimated traffic opportunity: [X]/month
|
||||
- Quick wins available: [X] pieces
|
||||
|
||||
---
|
||||
|
||||
## Prioritized Gap List
|
||||
|
||||
### Tier 1: Quick Wins (Do Now)
|
||||
|
||||
| Content to Create | Target Keyword | Volume | Difficulty | Impact |
|
||||
|-------------------|----------------|--------|------------|--------|
|
||||
| [Title idea] | [keyword] | [vol] | [diff] | High |
|
||||
| [Title idea] | [keyword] | [vol] | [diff] | High |
|
||||
|
||||
**Why prioritize**: Low effort, immediate ranking potential
|
||||
|
||||
### Tier 2: Strategic Builds (This Quarter)
|
||||
|
||||
| Content to Create | Target Keyword | Volume | Difficulty | Impact |
|
||||
|-------------------|----------------|--------|------------|--------|
|
||||
| [Title idea] | [keyword] | [vol] | [diff] | High |
|
||||
|
||||
**Why prioritize**: High value, requires more resources
|
||||
|
||||
### Tier 3: Long-term Investments (This Year)
|
||||
|
||||
| Content to Create | Target Keyword | Volume | Difficulty | Impact |
|
||||
|-------------------|----------------|--------|------------|--------|
|
||||
| [Title idea] | [keyword] | [vol] | [diff] | High |
|
||||
|
||||
**Why prioritize**: Builds authority, competitive differentiator
|
||||
|
||||
---
|
||||
|
||||
## Content Calendar Recommendation
|
||||
|
||||
### Month 1
|
||||
| Week | Content | Type | Target Keyword | Status |
|
||||
|------|---------|------|----------------|--------|
|
||||
| 1 | [Title] | [Type] | [Keyword] | Planned |
|
||||
| 2 | [Title] | [Type] | [Keyword] | Planned |
|
||||
| 3 | [Title] | [Type] | [Keyword] | Planned |
|
||||
| 4 | [Title] | [Type] | [Keyword] | Planned |
|
||||
|
||||
### Month 2
|
||||
[Continue...]
|
||||
|
||||
### Month 3
|
||||
[Continue...]
|
||||
|
||||
---
|
||||
|
||||
## Success Metrics
|
||||
|
||||
Track these to measure gap-filling success:
|
||||
|
||||
| Metric | Current | 3-Month Target | 6-Month Target |
|
||||
|--------|---------|----------------|----------------|
|
||||
| Keyword coverage | [X] | [X] | [X] |
|
||||
| Topic clusters complete | [X] | [X] | [X] |
|
||||
| Traffic from new content | [X] | [X] | [X] |
|
||||
| AI citations | [X] | [X] | [X] |
|
||||
```
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
# Content Gap Analysis — Example Report
|
||||
|
||||
This is a complete example output showing the expected format for content gap analysis deliverables.
|
||||
|
||||
## Prompt
|
||||
|
||||
**User**: "Find content gaps for my SaaS marketing blog compared to HubSpot and Drift"
|
||||
|
||||
## Example Output
|
||||
|
||||
```markdown
|
||||
# Content Gap Analysis: SaaS Marketing Blog
|
||||
|
||||
## Executive Summary
|
||||
|
||||
Compared to HubSpot and Drift, your blog has significant gaps in:
|
||||
1. **Interactive tools** - They have 15+, you have 0
|
||||
2. **Comparison content** - Missing "[Your Tool] vs [Competitor]" pages
|
||||
3. **GEO-optimized definitions** - No glossary or term definitions
|
||||
|
||||
Total opportunity: ~25,000 monthly visits from 45 keyword gaps
|
||||
|
||||
## Top Keyword Gaps
|
||||
|
||||
### Quick Wins (Difficulty <40)
|
||||
|
||||
| Keyword | Volume | Difficulty | Who Ranks |
|
||||
|---------|--------|------------|-----------|
|
||||
| saas marketing metrics | 1,200 | 32 | HubSpot #3 |
|
||||
| b2b email sequences | 890 | 28 | Drift #5 |
|
||||
| saas onboarding emails | 720 | 25 | Neither! |
|
||||
| marketing qualified lead definition | 1,800 | 35 | HubSpot #1 |
|
||||
|
||||
### Content Format Gaps
|
||||
|
||||
**You're missing**:
|
||||
- [ ] Interactive ROI calculator (HubSpot gets 15k visits/mo from theirs)
|
||||
- [ ] Email template library (Drift's gets 8k visits/mo)
|
||||
- [ ] Marketing glossary (HubSpot's definition pages rank for 500+ keywords)
|
||||
|
||||
## Recommended Content Calendar
|
||||
|
||||
**Week 1**: "SaaS Marketing Metrics: Complete Guide" (Quick win)
|
||||
**Week 2**: "What is a Marketing Qualified Lead?" (GEO opportunity)
|
||||
**Week 3**: "B2B Email Sequence Templates" (Format gap)
|
||||
**Week 4**: "[Your Tool] vs HubSpot" (Comparison gap)
|
||||
```
|
||||
|
|
@ -0,0 +1,318 @@
|
|||
# Gap Analysis Frameworks
|
||||
|
||||
Complete frameworks for systematic keyword gap identification, content format gap analysis, funnel stage gap mapping, opportunity scoring models, and content calendar integration. Use these frameworks to transform gap analysis from ad-hoc observation into repeatable process.
|
||||
|
||||
## Overview
|
||||
|
||||
Content gap analysis answers three questions:
|
||||
1. **What are competitors covering that you are not?** (Keyword and topic gaps)
|
||||
2. **What content formats are expected but missing?** (Format gaps)
|
||||
3. **Where in the buyer journey does your content fail?** (Funnel gaps)
|
||||
|
||||
This reference provides structured methodologies for each question, plus scoring and prioritization systems.
|
||||
|
||||
---
|
||||
|
||||
## 1. Systematic Keyword Gap Methodology
|
||||
|
||||
### Step-by-Step Process
|
||||
|
||||
#### Step 1: Define Your Keyword Universe
|
||||
|
||||
Before finding gaps, establish what you already rank for:
|
||||
|
||||
| Data Source | What It Provides | How to Collect |
|
||||
|------------|-----------------|---------------|
|
||||
| ~~search console | Keywords driving impressions and clicks to your site | Export Performance report (last 6 months) |
|
||||
| ~~SEO tool | Full keyword profile including positions 1-100 | Domain keyword export |
|
||||
| Content audit | Topics covered by existing content | Manual or automated URL crawl + categorization |
|
||||
|
||||
**Output:** A master list of all keywords you currently rank for (positions 1-100).
|
||||
|
||||
#### Step 2: Build Competitor Keyword Profiles
|
||||
|
||||
For each competitor (3-5 recommended):
|
||||
|
||||
| Competitor | Total Keywords | Keywords in Top 10 | Keywords in Top 3 | Estimated Traffic |
|
||||
|-----------|---------------|-------------------|-------------------|------------------|
|
||||
| [Competitor A] | [Count] | [Count] | [Count] | [Monthly est.] |
|
||||
| [Competitor B] | [Count] | [Count] | [Count] | [Monthly est.] |
|
||||
| [Competitor C] | [Count] | [Count] | [Count] | [Monthly est.] |
|
||||
| **You** | [Count] | [Count] | [Count] | [Monthly est.] |
|
||||
|
||||
#### Step 3: Calculate Keyword Overlap
|
||||
|
||||
Identify four keyword segments:
|
||||
|
||||
```
|
||||
┌──────────────────────────────────────────────────────────┐
|
||||
│ │
|
||||
│ A: Keywords ONLY you rank for (your unique advantage) │
|
||||
│ │
|
||||
│ B: Keywords you AND competitors share (competitive) │
|
||||
│ │
|
||||
│ C: Keywords ONLY competitors rank for (your gaps) │
|
||||
│ │
|
||||
│ D: Keywords NO ONE ranks for (market opportunity) │
|
||||
│ │
|
||||
└──────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
| Segment | Size | Strategic Meaning | Action |
|
||||
|---------|------|------------------|--------|
|
||||
| A (Only you) | [Count] | Your content moat | Protect and strengthen |
|
||||
| B (Shared) | [Count] | Competitive battleground | Improve rankings |
|
||||
| C (Only them) | [Count] | Your content gaps | Prioritize and create |
|
||||
| D (No one) | [Count] | Untapped market | Evaluate and pioneer |
|
||||
|
||||
#### Step 4: Filter and Categorize Gaps (Segment C)
|
||||
|
||||
Not all gaps are worth filling. Filter by:
|
||||
|
||||
| Filter | Threshold | Purpose |
|
||||
|--------|-----------|---------|
|
||||
| Minimum search volume | >100/month (adjust for niche) | Ensure traffic potential |
|
||||
| Maximum keyword difficulty | <your domain's competitive range | Ensure you can rank |
|
||||
| Business relevance | Must relate to your product/service | Ensure strategic fit |
|
||||
| Intent match | Must match content types you can create | Ensure execution capability |
|
||||
|
||||
**After filtering, categorize remaining gaps:**
|
||||
|
||||
| Category | Description | Example |
|
||||
|----------|-----------|---------|
|
||||
| Topic gaps | Entire topics you haven't covered | Competitor has 10 articles on "technical SEO"; you have zero |
|
||||
| Depth gaps | You cover the topic but competitor goes deeper | You have 1 blog post; competitor has a pillar page + 8 cluster articles |
|
||||
| Angle gaps | Same topic but different perspective or audience | Competitor targets enterprise; you could target SMB |
|
||||
| Format gaps | Same keyword but different content format | Competitor has a video tutorial; you only have text |
|
||||
| Freshness gaps | Same topic but their content is more current | Competitor updated in 2026; yours is from 2024 |
|
||||
|
||||
#### Step 5: Prioritize Gaps
|
||||
|
||||
Use the scoring model from Section 4 below.
|
||||
|
||||
---
|
||||
|
||||
## 2. Content Format Gap Analysis
|
||||
|
||||
### Format Audit Methodology
|
||||
|
||||
#### Step 1: Inventory Your Content Formats
|
||||
|
||||
Categorize all your published content:
|
||||
|
||||
| Format | Count | % of Total | Avg. Traffic/Page | Top Performer |
|
||||
|--------|-------|-----------|-------------------|--------------|
|
||||
| Blog posts (text) | [X] | [X]% | [X] | [URL] |
|
||||
| Long-form guides | [X] | [X]% | [X] | [URL] |
|
||||
| How-to tutorials | [X] | [X]% | [X] | [URL] |
|
||||
| Comparison/vs pages | [X] | [X]% | [X] | [URL] |
|
||||
| Case studies | [X] | [X]% | [X] | [URL] |
|
||||
| Templates/downloads | [X] | [X]% | [X] | [URL] |
|
||||
| Interactive tools | [X] | [X]% | [X] | [URL] |
|
||||
| Video content | [X] | [X]% | [X] | [URL] |
|
||||
| Infographics | [X] | [X]% | [X] | [URL] |
|
||||
| Original research/data | [X] | [X]% | [X] | [URL] |
|
||||
| Glossary/definitions | [X] | [X]% | [X] | [URL] |
|
||||
| Webinars/recordings | [X] | [X]% | [X] | [URL] |
|
||||
| Podcasts/audio | [X] | [X]% | [X] | [URL] |
|
||||
|
||||
#### Step 2: Benchmark Against Competitors
|
||||
|
||||
| Format | You | Comp A | Comp B | Comp C | Industry Benchmark |
|
||||
|--------|-----|--------|--------|--------|-------------------|
|
||||
| Blog posts | [X] | [X] | [X] | [X] | Table stakes |
|
||||
| Long-form guides | [X] | [X] | [X] | [X] | Expected for authority |
|
||||
| How-to tutorials | [X] | [X] | [X] | [X] | Expected for SEO |
|
||||
| Comparison pages | [X] | [X] | [X] | [X] | Required for commercial |
|
||||
| Case studies | [X] | [X] | [X] | [X] | Expected for B2B |
|
||||
| Templates | [X] | [X] | [X] | [X] | Lead gen standard |
|
||||
| Interactive tools | [X] | [X] | [X] | [X] | Differentiator |
|
||||
| Video | [X] | [X] | [X] | [X] | Growing expectation |
|
||||
| Original research | [X] | [X] | [X] | [X] | Linkbait standard |
|
||||
| Glossary | [X] | [X] | [X] | [X] | GEO opportunity |
|
||||
|
||||
#### Step 3: Identify Format Gaps
|
||||
|
||||
For each format you are missing or underrepresenting:
|
||||
|
||||
| Missing Format | Competitor Proof | Estimated Effort | Expected Impact | Priority |
|
||||
|---------------|-----------------|-----------------|----------------|---------|
|
||||
| [Format 1] | [Which competitor succeeds + traffic est.] | [Low/Med/High] | [Low/Med/High] | [P0-P3] |
|
||||
| [Format 2] | [Evidence] | [Effort] | [Impact] | [Priority] |
|
||||
|
||||
#### Step 4: Format-SERP Feature Alignment
|
||||
|
||||
Certain formats unlock specific SERP features:
|
||||
|
||||
| Content Format | Unlocks SERP Feature | Schema Required |
|
||||
|---------------|---------------------|----------------|
|
||||
| FAQ sections | FAQ rich results, PAA eligibility | FAQPage |
|
||||
| Step-by-step tutorials | How-To rich results, Featured Snippet (list) | HowTo |
|
||||
| Review/comparison content | Review stars, AI Overview citations | Review, AggregateRating |
|
||||
| Video content | Video carousel, Video rich result | VideoObject |
|
||||
| Product pages | Shopping results, Product rich results | Product |
|
||||
| Event pages | Event rich results | Event |
|
||||
| Glossary/definitions | Featured Snippet (paragraph), AI Overview | DefinedTerm (optional) |
|
||||
| Data tables | Featured Snippet (table), AI Overview | Table (optional) |
|
||||
|
||||
---
|
||||
|
||||
## 3. Funnel Stage Gap Identification
|
||||
|
||||
### Funnel Coverage Mapping
|
||||
|
||||
#### Step 1: Define Funnel Stages and Content Expectations
|
||||
|
||||
| Funnel Stage | User Mindset | Content Need | Expected Formats | Typical Keywords |
|
||||
|-------------|-------------|-------------|-----------------|-----------------|
|
||||
| **Awareness** | "I have a problem/question" | Educational content | Blog posts, infographics, social content | "what is", "how to", "why does" |
|
||||
| **Interest** | "I want to learn more" | Deeper educational content | Guides, webinars, email courses | "guide to", "tutorial", "examples" |
|
||||
| **Consideration** | "What are my options?" | Comparison and evaluation | Comparison posts, reviews, case studies | "best", "vs", "review", "alternatives" |
|
||||
| **Intent** | "I'm narrowing my choices" | Decision-support content | Demos, free trials, pricing pages, ROI calculators | "pricing", "demo", "free trial" |
|
||||
| **Purchase** | "I'm ready to act" | Conversion content | Product pages, checkout, signup forms | "buy", "sign up", "get started" |
|
||||
| **Retention** | "I need help/value" | Support and engagement | Help docs, tutorials, community, newsletters | "[product] how to", "support" |
|
||||
| **Advocacy** | "I want to share/recommend" | Shareable and referral content | Case studies, review programs, referral incentives | "[product] review", "recommend" |
|
||||
|
||||
#### Step 2: Audit Content by Funnel Stage
|
||||
|
||||
For each stage, count your content and compare to competitors:
|
||||
|
||||
| Funnel Stage | Your Content Count | Comp A | Comp B | Gap Size | Gap Severity |
|
||||
|-------------|-------------------|--------|--------|----------|-------------|
|
||||
| Awareness | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Interest | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Consideration | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Intent | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Purchase | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Retention | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
| Advocacy | [X] | [X] | [X] | [+/- X] | [Low/Med/High/Critical] |
|
||||
|
||||
**Gap Severity Criteria:**
|
||||
|
||||
| Severity | Definition |
|
||||
|----------|-----------|
|
||||
| Critical | Zero content at this stage; users drop off here |
|
||||
| High | Significantly less content than competitors; measurable conversion drop |
|
||||
| Medium | Somewhat less content; competitors have advantage but you are present |
|
||||
| Low | Roughly on par; minor opportunities for improvement |
|
||||
|
||||
#### Step 3: Identify Drop-Off Points
|
||||
|
||||
Map your analytics data to funnel stages to find where users leave:
|
||||
|
||||
| Transition | Metric to Check | Drop-Off Signal | Content Gap Likely |
|
||||
|-----------|----------------|----------------|-------------------|
|
||||
| Awareness → Interest | Bounce rate on blog posts | >70% bounce rate | Missing "next step" content or CTAs |
|
||||
| Interest → Consideration | Pages per session | <2 pages/session | Missing comparison/evaluation content |
|
||||
| Consideration → Intent | Demo/trial requests | Low conversion from comparison pages | Missing trust content (case studies, reviews) |
|
||||
| Intent → Purchase | Cart/signup abandonment | High abandonment rate | Missing objection-handling content |
|
||||
| Purchase → Retention | Churn rate | High early churn | Missing onboarding/help content |
|
||||
|
||||
---
|
||||
|
||||
## 4. Opportunity Scoring Model
|
||||
|
||||
### Multi-Factor Gap Scoring
|
||||
|
||||
Score each identified gap on 5 factors (1-5 scale each):
|
||||
|
||||
| Factor | Weight | Score 1 (Low) | Score 3 (Medium) | Score 5 (High) |
|
||||
|--------|--------|--------------|-----------------|----------------|
|
||||
| **Search Demand** | 25% | <100 monthly searches | 500-2,000 searches | >5,000 searches |
|
||||
| **Competitive Density** | 20% | All competitors cover it well | 1-2 competitors cover it | No competitor covers it |
|
||||
| **Business Relevance** | 25% | Tangential to your offering | Related to your offering | Core to your offering |
|
||||
| **Creation Effort** | 15% | Requires new capabilities | Moderate effort | Quick to create |
|
||||
| **Conversion Potential** | 15% | Pure awareness (top-funnel) | Consideration stage | Decision/transactional stage |
|
||||
|
||||
**Gap Priority Score** = Σ (Factor Weight x Score)
|
||||
|
||||
### Priority Tiers
|
||||
|
||||
| Tier | Score Range | Timeline | Action |
|
||||
|------|-----------|----------|--------|
|
||||
| **P0 -- Fill Immediately** | 4.0-5.0 | This sprint / this week | High demand + low competition + high relevance |
|
||||
| **P1 -- Fill This Quarter** | 3.0-3.9 | Next 1-3 months | Good demand + some competition + relevant |
|
||||
| **P2 -- Plan for Future** | 2.0-2.9 | Next 3-6 months | Moderate opportunity, requires more resources |
|
||||
| **P3 -- Monitor** | 1.0-1.9 | Track quarterly | Low priority but may become relevant |
|
||||
|
||||
### Quick-Win Identification
|
||||
|
||||
A "quick win" gap scores high on Demand + Relevance and low on Effort + Competition:
|
||||
|
||||
```
|
||||
Quick Win Score = (Search Demand + Business Relevance) - (Creation Effort + Competitive Density)
|
||||
Higher is better
|
||||
```
|
||||
|
||||
| Quick Win Score | Assessment |
|
||||
|----------------|-----------|
|
||||
| 4+ | Strong quick win -- create this content first |
|
||||
| 2-3 | Moderate quick win -- include in next content sprint |
|
||||
| 0-1 | Not a quick win -- may still be strategically important |
|
||||
| Negative | Avoid -- high effort/competition relative to demand |
|
||||
|
||||
---
|
||||
|
||||
## 5. Content Calendar Integration
|
||||
|
||||
### Gap-to-Calendar Workflow
|
||||
|
||||
#### Step 1: Group Gaps by Topic Cluster
|
||||
|
||||
Group related gaps into clusters rather than addressing them individually:
|
||||
|
||||
| Cluster | Related Gaps | Combined Volume | Pillar Needed? | Cluster Pages Needed |
|
||||
|---------|-------------|----------------|---------------|---------------------|
|
||||
| [Cluster A] | Gap 1, Gap 3, Gap 7 | [Sum of volumes] | [Yes/No] | [Count] |
|
||||
| [Cluster B] | Gap 2, Gap 5 | [Sum of volumes] | [Yes/No] | [Count] |
|
||||
| [Cluster C] | Gap 4, Gap 6, Gap 8, Gap 9 | [Sum of volumes] | [Yes/No] | [Count] |
|
||||
|
||||
#### Step 2: Sequence by Priority and Dependencies
|
||||
|
||||
| Order | Content Piece | Gap(s) Addressed | Priority | Dependencies | Target Publish |
|
||||
|-------|-------------|-----------------|---------|-------------|---------------|
|
||||
| 1 | [Pillar page for Cluster A] | Gap 1, 3, 7 (overview) | P0 | None | Week 1 |
|
||||
| 2 | [Quick-win article] | Gap 2 | P0 | None | Week 2 |
|
||||
| 3 | [Cluster A subtopic 1] | Gap 3 (deep dive) | P0 | Pillar published | Week 3 |
|
||||
| 4 | [Cluster A subtopic 2] | Gap 7 (deep dive) | P1 | Pillar published | Week 4 |
|
||||
| 5 | [Comparison page] | Gap 5 | P1 | None | Week 5 |
|
||||
|
||||
#### Step 3: Assign Resources and Track
|
||||
|
||||
| Content Piece | Writer | Reviewer | Target Date | Status | Gap Closed? |
|
||||
|-------------|--------|---------|------------|--------|------------|
|
||||
| [Title] | [Name] | [Name] | [Date] | [Draft/Review/Published] | [Yes/No/Partial] |
|
||||
|
||||
### Calendar Cadence by Team Size
|
||||
|
||||
| Team Size | Monthly Output | Gap Fill Rate | Full Gap Close Timeline |
|
||||
|-----------|---------------|--------------|----------------------|
|
||||
| Solo | 4-6 pieces/month | 3-4 gaps/month | 6-12 months for 30 gaps |
|
||||
| Small (2-3) | 8-15 pieces/month | 6-10 gaps/month | 3-6 months for 30 gaps |
|
||||
| Medium (4-6) | 15-25 pieces/month | 10-20 gaps/month | 2-3 months for 30 gaps |
|
||||
| Large (7+) | 25+ pieces/month | 20+ gaps/month | 1-2 months for 30 gaps |
|
||||
|
||||
### Post-Publication Gap Validation
|
||||
|
||||
After publishing gap-filling content, validate that the gap is actually closed:
|
||||
|
||||
| Checkpoint | Timeframe | What to Check | Success Criteria |
|
||||
|-----------|-----------|--------------|-----------------|
|
||||
| Indexing | 1-2 weeks | Is the page indexed? | Appears in Google index |
|
||||
| Initial ranking | 2-4 weeks | Is it ranking for target keyword? | Appears in top 100 |
|
||||
| Competitive ranking | 2-3 months | Has it reached competitive positions? | Top 20 or improving trend |
|
||||
| Traffic impact | 3-6 months | Is it driving meaningful traffic? | Meeting traffic projections |
|
||||
| Gap closure | 6 months | Has the gap been effectively closed? | Ranking comparable to competitors |
|
||||
|
||||
---
|
||||
|
||||
## Framework Selection Guide
|
||||
|
||||
| Situation | Primary Framework | Secondary Framework |
|
||||
|-----------|------------------|-------------------|
|
||||
| "We need more traffic" | Keyword Gap Methodology | Content Calendar Integration |
|
||||
| "Competitors outrank us everywhere" | Keyword Gap + Format Gap | Opportunity Scoring |
|
||||
| "Our conversion rate is low" | Funnel Stage Gap | Format Gap (decision-stage formats) |
|
||||
| "We don't know what to write next" | All three gap types | Opportunity Scoring + Calendar |
|
||||
| "We have limited resources" | Opportunity Scoring (quick wins) | Keyword Gap (filtered by difficulty) |
|
||||
| "We're entering a new market" | Keyword Gap (comprehensive) | Format Gap + Funnel Gap |
|
||||
Loading…
Add table
Add a link
Reference in a new issue