Audit and Repair SEO with Captured Page Evidence
Audit selected HTML snapshots, trace findings to their sources and verify a scoped repair. Keep raw HTML defects separate from rendered behavior, indexing and AI citations.
Fastest way
Ask your AI to do it
Paste this into the AI agent you already use:
Use SEO Site Clinic to review my explicitly selected public pages or supplied HTML snapshots. Define the question and scope first. Capture and audit into new folders, trace each finding to its source, then check rendered DOM and headers before changing canonical or indexing rules. Propose a scoped repair and recapture the same pages. Separate HTML evidence from indexing, rankings and AI citations.
What can an HTML SEO audit prove?
SEO Site Clinic inspects supplied snapshots and creates a searchable report, audit JSON, repair backlog and plan. Optional capture fetches 1–12 explicitly selected public URLs on one HTTPS origin. It does not crawl an entire site, render JavaScript or check Google rankings.
Select a question and reproducible pages
- Pick a goal such as wrong titles or an unexpected canonical, then choose representative pages. Reuse supplied HTML when available.
- Read references/inputs.md. Anonymous capture does not log in; private pages require a separately authorized local export.
- Keep capture time, source URL and hashes with the snapshots so a later comparison uses identifiable evidence.
Start with the offline practice audit
Python 3.10+ standard library is sufficient for the included fictional snapshots; no API key or package installation is required. Run from the installed package folder into a new output directory. For actual public captures, follow the explicit URL input in SKILL.md, then audit the generated snapshots.json.
Read this release’s setup before running the example
Confirm installation and invocation in your host
python3 scripts/audit-pages.py --input examples/snapshots.json --output ./practice-auditConfirm the issue before changing the page
Inspect the current example output → — Compare the visible result with the exported files and checks described in this section.
| Snapshot finding | Required context check |
|---|---|
| Missing title or heading | Inspect rendered DOM; streaming or client rendering can change what is visible |
| Canonical points elsewhere | Confirm the preferred page and duplicate policy before changing it |
| Page has noindex | Check whether it intentionally protects private, filtered or utility pages |
Work through one canonical repair on a local copy
This exercise uses the two fictional Cedar Atlas snapshots, not a live customer site. From the package folder, copy the examples into a new directory and audit the unmodified copy. The supplied status and capture labels remain fictional; running this audit does not fetch the website.
In practice-seo-before/audit.json, the pricing page has a canonical-other review pointing to the homepage. The exercise assumption is that pricing is a distinct public page. On an actual site, confirm that intent with the owner before making this change; a cross-page canonical may be deliberate.
cp -R examples ./practice-seo-input
python3 -B scripts/audit-pages.py --input ./practice-seo-input/snapshots.json --output ./practice-seo-beforeVerify the specific finding, and keep the unresolved ones
Edit only practice-seo-input/pricing.html: change the canonical href from https://cedaratlas.example/ to https://cedaratlas.example/pricing. Leave home.html and the manifest untouched. Run the audit below into a fresh folder and compare both audit.json files by issue code and URL, since ordinal issue IDs can change.
The expected snapshot result is one canonical-other finding before and none after, a changed pricing hash and the same homepage hash. Eight other findings remain, including malformed JSON-LD, duplicate metadata and an unobserved fragment. They were not fixed by changing the canonical. This is a real local audit on fictional HTML; it proves neither Google indexing nor a ranking improvement.
python3 -B scripts/audit-pages.py --input ./practice-seo-input/snapshots.json --output ./practice-seo-afterRepair one cause and recapture the same scope
Trace issue IDs and file or line hints in audit.json. Group related findings by cause, implement an authorized change in the owned codebase and run its existing checks. Capture the same pages into a fresh folder and compare the original and repaired evidence. Also inspect response headers and a narrow rendered viewport.
Capture a reproducible check for a code repair
Record a scoped before-and-after repair — Use comparable inputs and explain which checks actually ran.
How does this help GEO?
Clear answers, accessible text and coherent page identities help readers and machines understand the content. Google says its usual SEO practices apply to AI features; there is no special AI schema requirement. This audit cannot verify indexing, actual crawler access, AI citations, Core Web Vitals or traffic. Measure those separately after the repair.