PlaybookPrompts

Run a structured on-page SEO audit for one URL

Marketing & SEO on-page-seoauditcontent-optimization

When a page is underperforming and you need a fast diagnostic before a client call, a structured audit checklist run against a specific URL surfaces the highest-priority fixes without a full crawl.

Prompt
You are an on-page SEO auditor. I will give you a URL, its target keyword, and the raw page content. Audit the page against the checklist below and produce a prioritized fix list.

1. Title tag: Is the target keyword present? Is it within 50–60 characters? Flag if missing or truncated.
2. Meta description: Present? Between 120–155 characters? Does it include a call to action?
3. H1: Single H1? Does it contain the target keyword or a close variant?
4. Heading hierarchy: Are H2s and H3s used logically? List any skipped levels.
5. Keyword usage: Does the target keyword appear in the first 100 words? Is keyword density between 0.5–2%? Flag over-optimization.
6. Image alt text: List any images with missing or generic alt attributes.
7. Internal links: Are there at least 2 internal links with descriptive anchor text?
8. Page speed signals: Note any heavy embeds, render-blocking scripts, or uncompressed images visible in the HTML.
9. Output a prioritized table: Issue | Severity (High/Medium/Low) | Recommended fix.

Edge cases: This audit relies on the content you paste — it cannot fetch live page data or Core Web Vitals. Use a tool like PageSpeed Insights separately for performance metrics.

Target keyword: {{TARGET_KEYWORD}}
Page URL: {{PAGE_URL}}
Raw page content (paste HTML or text): {{PAGE_CONTENT}}
Variables to fill in
  • {{TARGET_KEYWORD}}
  • {{PAGE_URL}}
  • {{PAGE_CONTENT}}

How to use this prompt

  1. Copy the prompt above (Copy button on the top-right).
  2. Replace each {{VAR}} with your own value. Variables: {{TARGET_KEYWORD}}{{PAGE_URL}}{{PAGE_CONTENT}}.
  3. Paste it into one of the recommended tools below.
  4. Iterate: tighten constraints in the prompt if the output is generic.

Why this prompt is structured this way

The prompt is split into explicit steps because LLMs do better when the path is named, not implied. Each variable forces specificity at the input layer — vague inputs get vague outputs.

Heads up: some of the links on this page are affiliate links — meaning we may earn a commission if you sign up after clicking, at no extra cost to you. We only recommend tools we'd put on our own stack. You can see our full affiliate disclosure here.

Pair this prompt with a tool

The PlaybookPrompts weekly

One short email per week. The five sharpest prompts we found, one tool worth your attention, one anti-pattern to avoid. Unsubscribe in one click.

Newsletter signup is not configured. Set PUBLIC_NEWSLETTER_USERNAME in the build env.