seo-audit-2026 — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited seo-audit-2026 (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You produce a comprehensive SEO audit that grades a site on the 2026 ranking surface — classic Google + the AI engines (ChatGPT browsing, Perplexity, Claude, Gemini, Google AI Overviews, Bing Copilot). Output is a single prioritized report, not a 200-item checklist dump.
The reality of 2026 SEO:
============================================================ === PRE-FLIGHT === ============================================================
Verify:
curl, playwright/puppeteer for render diffs, Lighthouse CLI for CWV, jq for JSON parsing. Install missing tooling or fall back to web-based equivalents.Recovery:
<title> tags of top nav + top 10 referrer pages.============================================================ === PHASE 1: CRAWL & INDEX AUDIT === ============================================================
Most ranking issues in 2026 trace back to crawl/index — audit before optimizing content.
Check:
/sitemap.xml. Verify each listed URL returns 200, has lastmod, isn't noindex.rel=canonical. Catch self-canonical errors, redirect chains, conflicting hreflang.<meta name="robots">, X-Robots-Tag headers. Spot pages set to noindex unintentionally.Generate seo/crawl_report.md with the index status of every important URL.
VALIDATION: Every URL in the report has a definitive status (Indexable / Blocked / Redirected / Error). No "unknown" rows.
FALLBACK: If crawl is rate-limited mid-run, persist partial results and resume later.
============================================================ === PHASE 2: AI CRAWLER PARITY === ============================================================
(See geo-optimize Phase 1 for full detail.)
Run the user-agent matrix test. Diff rendered (Playwright) vs static (curl as GPTBot, PerplexityBot, OAI-SearchBot, ClaudeBot, Claude-Web, Google-Extended, Applebot-Extended).
P0 if any AI bot sees < 50% of the rendered text or schema is missing in static HTML.
VALIDATION: Parity report contains a row per page × per bot with content diff %.
============================================================ === PHASE 3: CORE WEB VITALS (2026 THRESHOLDS) === ============================================================
Run Lighthouse CI for each priority URL on both mobile and desktop. Capture:
For each fail, generate a specific fix:
requestIdleCallback.font-display: optional or size-adjust).VALIDATION: Each fail has a concrete code-level fix, not "improve performance."
============================================================ === PHASE 4: ON-PAGE AUDIT === ============================================================
Per priority URL, check:
Generate seo/onpage_report.md per-URL.
VALIDATION: Report flags specific elements, not just "needs work."
============================================================ === PHASE 5: SCHEMA & ENTITY AUDIT === ============================================================
(Delegated to geo-optimize Phases 3 + 4.)
For each priority page, audit JSON-LD coverage and entity density. Generate missing schema. Recommend entity additions to hit ≥ 15 recognized entities per pillar page.
VALIDATION: Per-page entity count and schema validation status.
============================================================ === PHASE 6: CONTENT QUALITY & E-E-A-T === ============================================================
Per priority page:
/author/{slug}?sameAs to LinkedIn / Wikidata / X / Crunchbase?dateModified?Generate seo/eeat_report.md with per-page and per-author scores.
VALIDATION: Each author has either a complete Person profile (5+ checkboxes pass) or a clear remediation list.
============================================================ === PHASE 7: COMPETITIVE GAP === ============================================================
For each priority query:
VALIDATION: Per-query gap report identifies at least 3 concrete additions (entities or sections) to add.
FALLBACK: If SERP scraping is rate-limited, fall back to manual top-3 analysis via the user's browser (instruct them, don't claim full coverage).
============================================================ === PHASE 8: PRIORITIZED PUNCH LIST === ============================================================
Single output seo/audit_report.md ranking findings:
# SEO Audit — {site} — {date}
## Executive Summary
- Indexability: {green/yellow/red} ({N} pages indexable / {M} blocked)
- AI Crawler Parity: {green/yellow/red} ({N} priority pages pass)
- Core Web Vitals: {N/M priority pages passing all 3}
- Schema Coverage: {N%} of priority pages have complete schema
- Entity Density: {N/M priority pages ≥15 entities}
- E-E-A-T: {N/M pages have linked author Person entity}
## P0 — Blocking Issues
- [ ] Site renders client-side, GPTBot sees empty HTML. Move /blog/\* to SSR via Next.js getServerSideProps OR pre-render via next-build.
- [ ] Missing Organization schema on homepage. (Generate JSON-LD — see fix snippet below.)
## P1 — High-Impact Fixes
- [ ] 6 of 10 priority pages fail INP > 500ms. Defer analytics.js and reduce main-thread blocking in checkout.js.
- [ ] 4 of 10 priority pages have < 15 entities. Add brand + product entity mentions per page (specifics in entity_audit.md).
## P2 — Medium-Impact
- [ ] No llms.txt at root.
- [ ] FAQPage schema missing on 3 pages with FAQ sections.
## P3 — Polish
- [ ] 14 images missing alt text in /blog/\*.
## Re-audit Checklist
After fixes, re-run with `/seo-audit-2026 {site}` and verify P0/P1 items move to ✅.VALIDATION: Punch list ranked by impact, capped at top 20 items. Each P0/P1 includes a code-level fix or precise file path.
============================================================ === SELF-REVIEW === ============================================================
Score 1–5:
Most common gap: failing to test AI crawler parity AND not measuring INP. These are the two table-stakes items that catch teams still running 2023-era audits.
============================================================ === LEARNINGS CAPTURE === ============================================================
Append to ~/.claude/skills/seo-audit-2026/LEARNINGS.md:
============================================================ === STRICT RULES === ============================================================
/geo-optimize instead of running the full classic audit.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.