Prompt hub

8 AI prompts for SEO (copy-ready and tested)

SEO work is full of small, repeatable writing tasks: a title and meta description within a character limit, an FAQ section that answers real search queries, internal-link suggestions, a rewrite that better matches search intent. A language model handles the mechanical first draft well, leaving you to check it against actual search data and site structure, which no model can see.

The prompts here cover title and meta description pairs, keyword clustering, a content brief, an FAQ section built from a topic, internal-link suggestions, rewriting a page for search intent, a schema markup suggestion, and a full blog post outline. They are written for ChatGPT, Claude and Gemini; paste your target keyword, existing content or page URL into the fill-in fields so the draft reflects your actual page rather than a generic template.

Two pitfalls to watch for. A model has no access to real search volume, ranking positions or your actual competitors, so any "keyword" or "intent" suggestion needs checking against a proper keyword tool before you act on it. And schema suggestions can be syntactically wrong or use properties that do not apply to your content type, so validate any generated markup with a schema testing tool before publishing. Score a prompt with the free optimiser first if the output keeps missing the brief — a vague instruction about "the topic" usually produces a vague piece of content.

All 8 prompts

  • A prompt for a writer-ready content brief with a target word count and heading structure, grounded in the given keyword and intent.

    Show prompt
    The prompt
    You are an SEO content strategist writing a brief for a freelance writer.
    
    Objective: Write a content brief for a page targeting {{TARGET KEYWORD}}, to be handed directly to a writer.
    
    Context: Search intent is {{INTENT — e.g. comparing options before buying, learning a concept}}. The page should be about {{TARGET WORD COUNT}} words. Any notes on competitor pages already ranking: {{COMPETITOR NOTES — e.g. top results are all listicles with pricing tables}}.
    
    Constraints:
    - Exactly one H1 suggestion and 4–6 H2 suggestions, each under 10 words
    - State the target word count once, matching the figure supplied
    - Include a 1-sentence brief for what each H2 section should cover
    - Do not state a search volume, keyword difficulty or competitor domain authority; none of that data was supplied
    
    Output format: Return Markdown with "Target keyword", "Search intent" and "Target word count" as single lines, then the H1, then the H2 list with its one-sentence briefs.
    
    Before finishing, check there are 4–6 H2 suggestions, the stated word count matches what was supplied, and no invented SEO metrics appear.
    
    View full page →
  • A prompt for an FAQ section built on real searcher questions, with answers that stay inside the supplied facts.

    Show prompt
    The prompt
    You are an SEO writer producing an FAQ section for a page about {{TOPIC}}.
    
    Objective: Write 5 frequently asked questions and answers suitable for adding to a page about {{TOPIC}}, using only the source facts supplied below.
    
    Context: The page is aimed at {{AUDIENCE — e.g. first-time buyers researching before purchase}}. Source facts:
    {{PASTE SOURCE FACTS OR PRODUCT DETAILS HERE}}
    
    Constraints:
    - Exactly 5 questions, phrased the way a searcher would actually type them
    - Each answer: 2–3 sentences, under 60 words
    - Every answer must be supported by the source facts supplied — do not add facts, prices or specifications not given
    - If a commonly asked question can't be answered from the source facts, state that instead of guessing
    
    Output format: Return each question as a Markdown "###" heading followed by its answer as a short paragraph.
    
    Before finishing, check there are exactly 5 questions, each answer is under 60 words, and every claim in every answer traces back to the source facts supplied.
    
    View full page →
  • A prompt for grouping a keyword list into intent-based clusters for content planning, without inventing search volume data.

    Show prompt
    The prompt
    You are an SEO strategist grouping keywords for content planning.
    
    Objective: Analyse the keyword list below and organise it into clusters by shared search intent, suitable for one page per cluster.
    
    Context: The site covers {{SITE TOPIC — e.g. a project management tool for small agencies}}. Example: a cluster labelled "buying-stage decision" would group transactional keywords like "software pricing" together, separate from an informational cluster like "how to manage projects". Keywords:
    {{PASTE KEYWORD LIST HERE, ONE PER LINE}}
    
    Constraints:
    - Use only the keywords supplied — do not add keywords you think should exist
    - Do not state or estimate search volume, difficulty or ranking potential; none of that data was supplied
    - Each cluster needs a short label and the intent type (informational, commercial, navigational or transactional)
    - Flag any keyword that doesn't clearly fit an intent as "unclear" rather than forcing it into a cluster
    
    Output format: Return each cluster as a Markdown heading with its intent type, followed by its keywords as a bulleted list, then a final "Unclear" section for anything that didn't fit.
    
    Before finishing, check every supplied keyword appears exactly once across the clusters and the unclear section combined, and that no search volume or ranking figures were stated.
    
    View full page →
  • A prompt for rewriting an underperforming page to match what searchers actually want, without inventing new claims or facts.

    Show prompt
    The prompt
    You are an SEO editor rewriting an existing page to better match search intent.
    
    Objective: Rewrite the opening section of the page below so it matches what a searcher looking for {{TARGET KEYWORD}} actually wants to find first.
    
    Context: The likely search intent is {{INTENT — e.g. wants a direct answer before reading further}}. The current opening section is:
    {{PASTE CURRENT OPENING SECTION HERE}}
    
    Constraints:
    - Use only facts present in the current opening section — do not add statistics, claims or examples not already there
    - New opening: 80–120 words
    - Answer or address the core intent within the first 2 sentences
    - Do not change the page's stated facts, only their order and framing
    
    Output format: Return the rewritten opening as a single block of prose, followed by a one-sentence note on what was reordered and why.
    
    Before finishing, check the rewrite is 80–120 words, addresses the intent within the first 2 sentences, and introduces no fact not present in the original.
    
    View full page →
  • A prompt for a JSON-LD schema suggestion built only from facts the page actually states, flagging any field it can't support.

    Show prompt
    The prompt
    You are a technical SEO specialist suggesting structured data for a page.
    
    Objective: Build a JSON-LD schema block for the page described below, using the schema type {{SCHEMA TYPE — e.g. Product, Article, FAQPage, Recipe}}.
    
    Context: Page content and facts:
    {{PASTE PAGE CONTENT OR KEY FACTS HERE}}
    Example: if a price of £28 is stated above, populate the `offers.price` field; if no rating is stated, leave `aggregateRating` out entirely rather than guessing a number.
    
    Constraints:
    - Only populate schema fields supported by facts stated above — do not invent a price, rating, author name or date not given
    - Leave unsupported fields out entirely rather than filling them with a placeholder
    - Use only properties that are valid for the stated schema type per schema.org
    - List, after the code block, which commonly used fields for this schema type were left out and why
    
    Output format: Return the JSON-LD as a fenced code block, followed by a "Fields omitted" list.
    
    Before finishing, check every field in the JSON-LD is traceable to a stated fact, and that the omitted-fields list accounts for the commonly expected fields not included.
    
    View full page →
  • Get title tags and meta descriptions that fit the character limits and actually reflect search intent, not just stuffed keywords.

    Show prompt
    The prompt
    You are an SEO specialist who writes for the searcher first and the algorithm second.
    
    Objective: Write a title tag and meta description for a page about {{PAGE TOPIC}} targeting the search term {{TARGET KEYWORD}}.
    
    Context: The searcher's likely intent is {{INTENT — e.g. comparing options before buying, looking for a how-to}}. The page's actual content covers: {{BRIEF CONTENT SUMMARY}}.
    
    Constraints:
    - Title tag: 50–60 characters, includes the target keyword naturally
    - Meta description: 140–155 characters, states a specific reason to click, not a generic invitation
    - Do not promise anything the page content doesn't actually cover
    - Avoid keyword stuffing — the keyword should appear once, naturally
    
    Output format: Return the title tag and meta description as two labelled lines, followed by the character count for each.
    
    Before finishing, check the character counts against the constraints above and confirm the description doesn't overpromise relative to the content summary.
    
    View full page →
  • A structured, copy-ready prompt for getting well-organised blog posts out of ChatGPT, Claude or Gemini — with audience, tone and format built in.

    Show prompt
    The prompt
    You are an experienced content writer. Write a blog post about {{TOPIC}}.
    
    Audience: {{AUDIENCE — e.g. small business owners in the UK}}
    Goal: {{GOAL — e.g. help them decide whether X is worth it}}
    Tone: clear, practical British English. No hype, no filler phrases.
    
    Structure:
    1. A hook that names the reader's actual problem in the first two sentences
    2. 3–5 H2 sections, each answering one specific question
    3. A short, honest conclusion with one clear next step
    
    Constraints:
    - 900–1,200 words
    - Short paragraphs (max 3 sentences)
    - Include one concrete example or mini case study per section
    - If you are unsure of a fact, say so rather than inventing it
    
    Before finishing, check the draft against every constraint above and confirm the word count.
    
    View full page →

Frequently asked questions

Do these prompts know current search rankings or keyword volume?
No. A language model has no access to live search data, so treat any keyword or intent suggestion as a starting hypothesis to verify with a proper keyword research tool.
Will a generated meta description fit the character limit?
Check the length yourself after generation — models are inconsistent about strict character counts, so trim or expand the draft to fit search engine display limits.
Is generated schema markup safe to publish?
Validate any generated JSON-LD with a schema testing tool before publishing; models can produce syntactically invalid markup or properties that do not apply to your content type.
Can I use these prompts for any content management system?
Yes, the output is plain text or markdown you can paste into any CMS; the prompts do not depend on a specific platform.