SEO Audit
by coreyhaines31 / marketingskills
Audit, review, or diagnose SEO issues on your site.
Audit static HTML files for on-page SEO, content quality, easy-win performance signals, and crawlability.
Listed ·Updated
Install data from skills.sh
HTML SEO Review is an SEO Audit skill for AI agents, published in the seoskills.sh catalog. Reach for it when your work involves full technical and on-page audits with prioritized action plans. Install it with one command and it runs inside your own agent, so the work happens in your workflow, not a separate SEO tool.
Produce an actionable, severity-ranked findings list for one or more static HTML files. The skill bundles a stdlib-only HTML parser that extracts every SEO-relevant signal into a single JSON document, a comprehensive rubric, and a findings report template — together they let an audit run with predictable output every time.
Use when the input is one or more static .html files (or a directory of them) and the user wants on-page SEO findings they can act on. Triggers include "SEO review", "SEO audit", "check SEO on this HTML", "review meta tags on this page", "audit on-page SEO".
Do not use when:
ssg-seo-review skill.Run the parser against the target. It accepts a single file or a directory (recursive *.html):
python3 scripts/extract_seo_signals.py <path> --pretty
Output is a JSON document with the following top-level keys: lang, title, meta, links, scripts, headings, images, links_audit, body_word_count. Each element carries a line number for citing in findings.
For a directory, the output is {"files": [<per-file object>]}.
The script uses only Python's standard library — no pip install required. If parsing fails on a specific file, the result for that file contains an error field and the audit continues for the rest.
Load references/seo-checklist.md. Walk each section in order and check the corresponding JSON path. The rubric explicitly lists the path to inspect for every check (e.g., images.missing_alt, meta.description.length, scripts.render_blocking_candidates).
For each failed check, record:
Before writing a finding, confirm the issue mechanically:
This protects against the most common review failure: fabricating a problem that isn't actually there.
Use assets/findings-template.md as the structure. Fill in:
If the audit covers multiple files, produce one report covering all of them, with findings grouped by file under each severity tier — not one report per file.
If a check requires information the parser cannot produce (e.g., "is this canonical URL serving a 200?"), do not guess. Note it in the "Out-of-scope items" section of the report and move on.
scripts/extract_seo_signals.py — HTML parser. Stdlib-only. Outputs structured JSON with line numbers.references/seo-checklist.md — Full rubric, organized by category, with severity tiers and JSON paths for every check.assets/findings-template.md — Output format for the audit report.Not using the CLI? Copy the SKILL.md and paste it straight into ChatGPT, Claude, or any agent.