Back to cookbook

ChatGPT Prompt to Run a Content Gap Analysis Against Competitor Articles

0 views Updated

Make this prompt yours

Share

This content gap analysis prompt helps writers, SEO specialists, and content marketers find the topics, subtopics, and angles that competing articles cover but their own content doesn't. It's built for anyone who needs to improve an existing page's ranking potential or plan a new article that genuinely out-covers what's already ranking, without guessing at what's missing.

Instead of asking an AI model to "check if my article is good enough," which produces vague praise, this prompt asks it to systematically compare your draft or published article against a set of competitor URLs or pasted competitor content, section by section. The output is a structured list of missing subtopics, unanswered questions, and under-explained concepts, each tied to a specific competitor so you can see exactly where the gap came from.

Because ChatGPT, Claude, and Gemini can't reliably browse and compare live pages without tool access, this prompt is written for pasted-in content rather than live URLs, which keeps the comparison accurate and repeatable across all three models.

Prompt template

Make this prompt yours

prompt-template
303 tokens
You are an SEO content strategist specializing in competitive content analysis. CONTEXT: Target keyword/topic: [TARGET KEYWORD OR TOPIC] My article (full text): [PASTE YOUR ARTICLE TEXT] Competitor article 1 (full text): [PASTE COMPETITOR 1 TEXT] Competitor article 2 (full text): [PASTE COMPETITOR 2 TEXT] Additional competitor articles (optional): [PASTE ADDITIONAL TEXT] TASK: Compare my article against each competitor article and identify content gaps. For each gap, provide: 1. The subtopic, question, or angle that is missing or underdeveloped in my article 2. Which competitor(s) cover it and how thoroughly 3. Severity: "Missing entirely", "Mentioned but shallow", or "Outdated/inaccurate" 4. A one-sentence recommendation for closing the gap CONSTRAINTS: - Only flag gaps relevant to the stated target keyword/topic and realistic search intent - Do not flag stylistic differences (tone, length) as content gaps - Group the gaps by severity, most severe first - After the gap list, note any topics my article covers that none of the competitors do OUTPUT FORMAT: ## Content Gaps (Most Severe First) [Numbered list using the 4-point structure above] ## My Article's Unique Coverage [Bullet list of topics only my article covers] ## Summary Recommendation [2-3 sentences on the highest-priority next edit]

Want it sharper? Optimize this prompt with Prompt Optimizer, check it with the Prompt Debugger or shorten it with the Token Optimizer.

Example input

example-input
128 tokens
Target keyword/topic: remote team onboarding checklist My article (full text): [800-word article covering: welcome email template, first-day schedule, assigning a buddy, setting up accounts] Competitor article 1 (full text): [1200-word article covering: welcome email, first-week schedule, buddy system, account setup, 30-60-90 day plan, async communication norms, timezone overlap scheduling] Competitor article 2 (full text): [1500-word article covering: pre-boarding paperwork, welcome kit shipping, first-day schedule, buddy system, tool access checklist, manager check-in cadence, remote culture documentation]

When to use it

  • Refreshing an older article that has stalled or dropped in search rankings
  • Planning a new piece on a competitive topic and want to cover it more completely than existing results
  • Auditing a cluster of pages before a content refresh sprint
  • Preparing talking points for why a specific competitor outranks you on a given keyword

Best practices

  • Paste the actual text of 2-4 competitor articles rather than just linking to them, since the model can't reliably fetch live pages
  • Include your own current draft or published article in full so the comparison isn't one-sided
  • Ask for gaps grouped by severity (missing entirely, mentioned but shallow, outdated) instead of one flat list
  • Run the same prompt again after revisions to confirm the identified gaps were actually closed

Common mistakes

  • Feeding in only article titles or meta descriptions instead of full body text, which gives the model nothing to compare
  • Treating every gap as equally important instead of prioritizing the ones tied to search intent
  • Skipping your own article's strengths, so the output reads as pure criticism with nothing to build on
  • Running the analysis once and never re-checking after the content gets revised

FAQs

What is a content gap analysis in SEO?

A content gap analysis compares your existing content against competing pages that rank for the same keyword to find subtopics, questions, or details they cover that you don't, so you can close those gaps and improve topical coverage.

Can ChatGPT browse competitor URLs directly for a gap analysis?

Standard ChatGPT, Claude, and Gemini conversations can't reliably fetch and read live web pages on their own, so the most accurate approach is to paste the competitor article's full text directly into the prompt rather than linking to it.

How many competitor articles should I include in a gap analysis?

Two to four competitor articles is usually enough to spot real patterns; including just one competitor risks copying their structure rather than identifying genuine gaps, while too many makes the comparison harder for the model to track accurately.

Which Cuelara tool can help me build a stronger version of this prompt?

Prompt Optimizer — restructures vague comparison instructions into a clear, repeatable format using its Research mode, useful before running this prompt across a large batch of articles.

Found this prompt useful? Share it.

Share

More in Content & SEO

Content & SEO

AI Prompt to Turn a Notion Content Brief Into a Publish-Ready Blog Draft via Notion's MCP Server

This prompt turns a Notion content brief into a publish ready blog draft, pulling the brief's fields directly from Notion through its MCP se…

ROLE
You are a content writer drafting a blog post from a structured content brief stored in Notion.

CONTEXT
- Brief source: Notion, accessed via the connected MCP server
- Brief page ID or URL: [BRIEF_PAGE_ID_OR_URL]
- Target keyword: [TARGET_KEYWORD]
- Target audience: [AUDIENCE_DESCRIPTION]
- Target word count: [WORD_COUNT]

TASK
1. Read the brief's fields from the connected Notion MCP server: target keyword, audience, key points to cover, outline, and any linked style guide or reference post.
2. Confirm which fields were found and flag any that were empty.
3. Write a full draft that covers every key point listed, follows the brief's outline order, and matches the tone described in the linked style guide if one exists.
4. Include a suggested title and meta description aligned with the target keyword.

CONSTRAINTS
- Do not add claims, statistics, or examples that are not supported by the brief or general knowledge you are confident is accurate.
- If the brief's key points are vague, write a reasonable interpretation but note it explicitly rather than inventing specifics.
- Match the target word count within 10%.
- Keep the structure matching the brief's outline; do not reorganize it without saying so.

OUTPUT FORMAT
## Brief Fields Used
[List of fields read, and any missing]

## Suggested Title
[Title]

## Meta Description
[Description]

## Draft
[Full draft, organized by the brief's outline sections]

Make this prompt yours

Content & SEO

AI Prompt to Audit Contentful Entries for SEO Gaps Using Contentful's MCP Server

This AI prompt helps content teams and SEO specialists use Contentful's MCP server to audit live CMS entries for on page SEO gaps without ma…

ROLE: You are an SEO content auditor reviewing CMS entries retrieved through Contentful's MCP integration.

CONTEXT:
- Contentful space/environment: [SPACE NAME]
- Content type to audit: [CONTENT TYPE, E.G. 'BlogPost']
- Fields that map to SEO elements: [E.G. seoTitle = title tag, seoDescription = meta description, slug = URL slug, body = rich text content]
- Number of entries to audit this run: [NUMBER, E.G. 25]

TASK:
1. Retrieve the specified number of entries of the given content type via the MCP connection.
2. For each entry, check: title tag field length and presence, meta description length and presence, slug formatting (lowercase, hyphenated, no special characters), heading structure within the body field, and presence of at least one internal link.
3. Report findings entry by entry, referencing each entry's ID or slug.
4. Separate entries with missing fields from entries with fields present but not meeting length or format guidelines.
5. Produce a prioritized list ranking entries by how many issues were found.

CONSTRAINTS:
- Do not assume a field has content if the MCP response shows it as empty or null; report it as missing.
- Do not rewrite or suggest replacement copy; only report the gap.
- If an entry is missing the content type's standard SEO fields entirely, flag it as a structural gap rather than a content gap.

OUTPUT FORMAT:
- Audit Summary (entries checked, total issues found)
- Entry-by-Entry Findings (entry ID/slug, issues list)
- Structural Gaps (entries missing expected fields entirely)
- Priority Fix List (ranked by issue count, highest first)

Make this prompt yours

Content & SEO

ChatGPT Prompt to Audit Webflow CMS Content for SEO Gaps via Webflow's MCP Server

This ChatGPT prompt for auditing Webflow content reads your actual CMS collection items through Webflow's MCP server and flags SEO gaps miss…

ROLE: You are an SEO content auditor with read access to a Webflow site's CMS collections through an MCP connection.

CONTEXT:
- Site/collection to audit: [COLLECTION NAME, e.g. Blog Posts]
- Target keyword focus: [DESCRIBE PRIMARY TOPICS OR KEYWORDS THE SITE RANKS FOR OR WANTS TO RANK FOR]
- Number of items to review: [NUMBER OR "all"]

TASK:
1. Pull the title, meta description, word count, and slug for each item in the specified collection.
2. Flag items missing a meta description or with one under [NUMBER] characters.
3. Flag items with duplicate or near-duplicate title tags across the collection.
4. Flag items under [WORD COUNT] words as potentially thin content.
5. Rank all findings by severity: critical, moderate, minor.

CONSTRAINTS:
- Only report on data actually retrieved from the collection - do not guess at content you were not given
- Reference each flagged item by its exact slug or URL
- Do not recommend specific rewritten copy unless asked - this audit identifies issues, it does not fix them

OUTPUT FORMAT:
Severity: [critical/moderate/minor]
Page: [slug or URL]
Issue: [specific problem]
Recommended fix direction: [one sentence, no full rewrite]

Make this prompt yours