PluginBench
Skill
Review
Audit score 70

seo-audit

agricidaniel/claude-seo

Full website SEO audit with parallel subagent delegation, crawls up to 500 pages, detects business type, generates health score.

What is seo-audit?

Comprehensive SEO audit that crawls your website up to 500 pages, automatically detects your business type, and delegates analysis to up to 15 specialist subagents (8 always-on plus 7 conditional). Generates a prioritized action plan with health score (0-100) and optional professional PDF report. Use when you need a complete SEO health check.

  • Crawls up to 500 pages respecting robots.txt and redirects
  • Detects business type (e-commerce, local service, SaaS, etc.) from homepage signals
  • Delegates to 8 core specialist subagents: technical, content, schema, sitemap, performance, visual, geo, and SXO
  • Spawns 7 conditional subagents based on detected business type and available integrations (local, maps, Google APIs, backlinks, clustering, drift, e-commerce)
  • Scores across 7 weighted categories: Technical SEO (22%), Content Quality (23%), On-Page SEO (20%), Schema (10%), Performance (10%), AI Search Readiness (10%), Images (5%)
  • Generates prioritized action plan (Critical > High > Medium > Low) with effort estimates and implementation roadmap

How to install seo-audit

npx skills add https://github.com/agricidaniel/claude-seo --skill seo-audit
Prerequisites
  • Python 3 with scripts/render_page.py available for homepage rendering
  • Optional: Google API credentials (python3 scripts/google_auth.py --check) for CrUX field data, GSC indexation, GA4 traffic
  • Optional: Moz or Bing API credentials (python3 scripts/backlinks_auth.py --check) for backlink profile enrichment
  • Optional: DataForSEO MCP tools for live SERP positions and business listings
  • Optional: Playwright for desktop and mobile screenshots
Claude Code
Cursor
Windsurf
Cline

How to use seo-audit

  1. 1.Invoke with a URL: provide the website domain you want to audit
  2. 2.Wait for homepage render and business type detection
  3. 3.Monitor parallel subagent delegation (8 core + conditional specialists)
  4. 4.Review the generated FULL-AUDIT-REPORT.md and ACTION-PLAN.md in {domain}-audit/
  5. 5.Examine per-category findings in {domain}-audit/findings/ (technical.md, content.md, schema.md, etc.)
  6. 6.Optionally generate a professional PDF report using scripts/google_report.py with the audit-data.json
  7. 7.Prioritize fixes by severity: Critical (immediate), High (1 week), Medium (1 month), Low (backlog)

Use cases

Good for
  • Conduct a complete SEO health check before launching a redesign or migration
  • Identify critical indexing and crawlability issues blocking organic visibility
  • Assess content quality, E-E-A-T signals, and AI search readiness across your site
  • Detect local SEO problems (NAP consistency, GBP signals, local schema) for brick-and-mortar businesses
  • Compare current audit against historical baseline to track drift and regression
Who it's for
  • SEO specialists and agencies conducting full-site audits
  • Marketing managers evaluating website health and competitive positioning
  • E-commerce teams optimizing product discoverability and schema
  • Local service businesses (plumbers, contractors, salons) checking local SEO fundamentals
  • Technical SEO leads investigating crawlability and indexation issues

seo-audit FAQ

How many pages does it crawl?

Up to 500 pages per audit, respecting robots.txt, following internal links, and enforcing a 30-second timeout per page with 1-second delays between requests.

What if my site is behind authentication or robots.txt blocks crawling?

The skill respects robots.txt and will report which paths are blocked. Only accessible pages are analyzed. If your site requires login, you may need to adjust robots.txt or provide credentials separately.

Can it integrate with Google Search Console and Analytics?

Yes, if you configure Google API credentials via python3 scripts/google_auth.py --check, the seo-google subagent will fetch real CrUX field data, GSC indexation status, search performance, and GA4 organic traffic trends.

Does it generate a PDF report?

Yes. After the audit completes, use scripts/google_report.py --type full --data {domain}-audit/audit-data.json --domain <domain> --output-dir {domain}-audit/ to generate a professional A4 PDF with executive summary, charts, metric cards, and prioritized recommendations.

What business types trigger conditional subagents?

Local Service (brick-and-mortar, SAB, hybrid) spawns seo-local and optionally seo-maps; E-commerce spawns seo-ecommerce; content strategy signals spawn seo-cluster; detected drift history spawns seo-drift; available API credentials spawn seo-google and seo-backlinks.

Full instructions (SKILL.md)

Source of truth, from agricidaniel/claude-seo.


name: seo-audit description: "Full website SEO audit with parallel subagent delegation. Crawls up to 500 pages, detects business type, delegates to up to 15 specialists (8 always + 7 conditional), generates health score. Use when user says audit, full SEO check, analyze my site, or website health check." user-invocable: true argument-hint: "[url]" license: MIT metadata: author: AgriciDaniel version: "2.2.0" category: seo

Full Website SEO Audit

Process

  1. Render homepage: use python3 scripts/render_page.py <url> --mode auto --json to capture raw HTML, rendered HTML, extracted text, SPA status, and accessibility data when needed
  2. Detect business type: analyze homepage signals per seo orchestrator
  3. Crawl site: follow internal links up to 500 pages, respect robots.txt
  4. Delegate to subagents (if available, otherwise run inline sequentially):
    • seo-technical -- robots.txt, sitemaps, canonicals, Core Web Vitals, security headers
    • seo-content -- E-E-A-T, readability, thin content, AI citation readiness
    • seo-schema -- detection, validation, generation recommendations
    • seo-sitemap -- structure analysis, quality gates, missing pages
    • seo-performance -- LCP, INP, CLS measurements
    • seo-visual -- screenshots, mobile testing, above-fold analysis
    • seo-geo -- AI crawler access, llms.txt, citability, brand mention signals
    • seo-local -- GBP signals, NAP consistency, reviews, local schema, industry-specific local factors (spawn when Local Service industry detected: brick-and-mortar, SAB, or hybrid business type)
    • seo-maps -- Geo-grid rank tracking, GBP audit, review intelligence, competitor radius mapping (spawn when Local Service detected AND DataForSEO MCP available)
    • seo-google -- CWV field data (CrUX), URL indexation (GSC), organic traffic (GA4) (spawn when Google API credentials detected via python3 scripts/google_auth.py --check)
    • seo-backlinks -- Backlink profile data: DA/PA, referring domains, anchor text, toxic links (spawn when Moz or Bing API credentials detected via python3 scripts/backlinks_auth.py --check, or always include Common Crawl domain-level metrics)
    • seo-cluster -- Semantic clustering analysis (spawn when content strategy signals detected: blog, pillar pages, topic clusters)
    • seo-sxo -- Search experience analysis: page-type mismatch, user stories, persona scoring (always include in full audits)
    • seo-drift -- Drift analysis: compare against stored baseline (spawn when drift baseline exists for the URL via python3 scripts/drift_history.py <url>)
    • seo-ecommerce -- Product schema, marketplace intelligence (spawn when E-commerce industry detected)
  5. Score -- aggregate into SEO Health Score (0-100)
  6. Persist audit artifacts -- write all outputs under {domain}-audit/
  7. Report -- generate prioritized action plan and optional PDF/HTML report

Crawl Configuration

Max pages: 500
Respect robots.txt: Yes
Follow redirects: Yes (max 3 hops)
Timeout per page: 30 seconds
Concurrent requests: 5
Delay between requests: 1 second

Output Files

  • {domain}-audit/FULL-AUDIT-REPORT.md: Comprehensive findings
  • {domain}-audit/ACTION-PLAN.md: Prioritized recommendations (Critical > High > Medium > Low)
  • {domain}-audit/audit-data.json: Structured audit envelope for report generation
  • {domain}-audit/findings/*.md: Per-category specialist findings (technical.md, content.md, schema.md, performance.md, visual.md, etc.)
  • {domain}-audit/screenshots/: Desktop + mobile captures (if Playwright available)
  • PDF Report (recommended): Generate a professional A4 PDF using scripts/google_report.py --type full --data {domain}-audit/audit-data.json --domain <domain> --output-dir {domain}-audit/. This produces a white-cover enterprise report with TOC, executive summary, charts (Lighthouse gauges, query bars, index donut), metric cards, threshold tables, prioritized recommendations with effort estimates, and implementation roadmap. Always offer PDF generation after completing an audit.

Structured Audit Data Envelope

Write {domain}-audit/audit-data.json with this shape so python3 scripts/google_report.py --type full --data {domain}-audit/audit-data.json --domain <domain> --output-dir {domain}-audit/ can generate a report even when Google API data is unavailable:

{
  "summary": {
    "health_score": 0,
    "business_type": "detected type",
    "top_findings": [],
    "quick_wins": []
  },
  "categories": [
    {
      "name": "Technical SEO",
      "score": 0,
      "what_works": [],
      "findings": [
        {
          "title": "Finding title",
          "severity": "Critical|High|Medium|Low|Info",
          "description": "Evidence-backed detail",
          "recommendation": "Specific fix"
        }
      ]
    }
  ],
  "action_plan": {
    "phases": [
      {"name": "Phase 1: Critical Fixes", "timeframe": "Week 1", "items": []},
      {"name": "Phase 2: High-Impact Improvements", "timeframe": "Weeks 2-3", "items": []},
      {"name": "Phase 3: Content & Authority", "timeframe": "Month 2", "items": []},
      {"name": "Phase 4: Monitoring & Iteration", "timeframe": "Ongoing", "items": []}
    ]
  },
  "artifacts": {
    "findings_dir": "findings/",
    "screenshots_dir": "screenshots/"
  }
}

Scoring Weights

CategoryWeight
Technical SEO22%
Content Quality23%
On-Page SEO20%
Schema / Structured Data10%
Performance (CWV)10%
AI Search Readiness10%
Images5%

Report Structure

Executive Summary

  • Overall SEO Health Score (0-100)
  • Business type detected
  • Top 5 critical issues
  • Top 5 quick wins

Technical SEO

  • Crawlability issues
  • Indexability problems
  • Security concerns
  • Core Web Vitals status

Content Quality

  • E-E-A-T assessment
  • Thin content pages
  • Duplicate content issues
  • Readability scores

On-Page SEO

  • Title tag issues
  • Meta description problems
  • Heading structure
  • Internal linking gaps

Schema & Structured Data

  • Current implementation
  • Validation errors
  • Missing opportunities

Performance

  • LCP, INP, CLS scores
  • Resource optimization needs
  • Third-party script impact

Images

  • Missing alt text
  • Oversized images
  • Format recommendations

AI Search Readiness

  • Citability score
  • Structural improvements
  • Authority signals

Priority Definitions

  • Critical: Blocks indexing or causes penalties (fix immediately)
  • High: Significantly impacts rankings (fix within 1 week)
  • Medium: Optimization opportunity (fix within 1 month)
  • Low: Nice to have (backlog)

DataForSEO Integration (Optional)

If DataForSEO MCP tools are available, spawn the seo-dataforseo agent alongside existing subagents to enrich the audit with live data: real SERP positions, backlink profiles with spam scores, on-page analysis (Lighthouse), business listings, and AI visibility checks (ChatGPT scraper, LLM mentions).

Google API Integration (Optional)

If Google API credentials are configured (python3 scripts/google_auth.py --check), spawn the seo-google agent to enrich the audit with real Google field data: CrUX Core Web Vitals (replaces lab-only estimates), GSC URL indexation status, search performance (clicks, impressions, CTR), and GA4 organic traffic trends. The Performance (CWV) category score benefits most from field data.

Error Handling

ScenarioAction
URL unreachable (DNS failure, connection refused)Report the error clearly. Do not guess site content. Suggest the user verify the URL and try again.
robots.txt blocks crawlingReport which paths are blocked. Analyze only accessible pages and note the limitation in the report.
Rate limiting (429 responses)Back off and reduce concurrent requests. Report partial results with a note on which sections could not be completed.
Timeout on large sites (500+ pages)Cap the crawl at the timeout limit. Report findings for pages crawled and estimate total site scope.