Help us improve
Share bugs, ideas, or general feedback.
From local-seo-audit
Score a website using the proprietary 50-item SERP-TRUST framework across 5 dimensions (Technical Foundation, Ranking Signals, User Experience, Search Authority, Trust & AI Readiness). 0-4 scale per item, veto checks, normalized 0-100. Combines with LOCAL-IMPACT for SEO Health Index. Use /score-serp-trust. Output: {AUDIT_DIR}/serp-trust-scores.md
npx claudepluginhub mshahiddigital/local-seo-auditHow this skill is triggered — by the user, by Claude, or both
Slash command
/local-seo-audit:serp-trust-auditorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The SERP-TRUST framework is a 50-item proprietary scoring system that measures how much Google trusts a domain to appear and rank in competitive search results. Trust is distinct from authority — a site can have high Domain Rating (authority) but low SERP trust due to thin content, missing schema, poor CWV, or inconsistent NAP signals. In 2025–2026, SERP trust has a direct AI visibility compone...
Performs comprehensive SEO audits and analysis for any website, covering technical SEO, schema markup, content quality, image optimization, sitemap analysis, and GEO for AI Overviews. Includes local SEO, backlink analysis, and drift monitoring.
Diagnoses and prioritizes SEO issues in crawlability, indexation, Core Web Vitals, on-page optimization, content quality, and authority signals. Asks for site context first.
Orchestrates SEO/GEO/AEO audits with sub-skills for ranking, schema, content, performance, and security analysis. Run /rank for a health check or /rank audit for full analysis.
Share bugs, ideas, or general feedback.
The SERP-TRUST framework is a 50-item proprietary scoring system that measures how much Google trusts a domain to appear and rank in competitive search results. Trust is distinct from authority — a site can have high Domain Rating (authority) but low SERP trust due to thin content, missing schema, poor CWV, or inconsistent NAP signals. In 2025–2026, SERP trust has a direct AI visibility component: Google's AI Overviews and third-party LLMs (ChatGPT, Perplexity) apply their own trust filters before citing sources. Sites scoring <50 on SERP-TRUST are rarely cited in AI answers regardless of organic ranking. The framework evaluates 5 dimensions: Technical Foundation (T), Ranking Signals (R), User Experience (U), Search Authority (S), and Trust & AI Readiness (A) — 10 items × 4-point scale per dimension = 200 raw points, normalized to 0–100.
2025 SERP-TRUST benchmarks:
Numbered Action Plan:
python3 scripts/check_url.py --url [URL] --full for HTTPS, redirect chain, TTFB. Run Lighthouse → record LCP, INP, CLS scores. Effort: 30 min. Priority: 25.python3 scripts/score_calculator.py --st to compute.{AUDIT_DIR}/serp-trust-scores.md — YAML frontmatter + full 50-item scorecard + Priority Matrix + competitor comparison. Run python3 scripts/score_calculator.py --st to generate final score. Effort: 1 hr.Output files:
{AUDIT_DIR}/serp-trust-scores.md — 50-item scorecard with scores and evidence{REPORTS_DIR}/serp-trust-score.pdf — auto-generated PDF via python3 scripts/generate_pdf.pyBefore scoring, confirm you have:
python3 scripts/check_url.py --url [URL] --full){AUDIT_DIR}/keyword-gaps.md or {AUDIT_DIR}/intake-data.md){AUDIT_DIR}/competitor-profiles.md)If any are missing, collect them before proceeding.
Tools for this phase:
| Dimension | Key Tools | Purpose |
|---|---|---|
| T — Technical | Screaming Frog, Google Rich Results Test, GSC URL Inspection, Lighthouse | Crawl, schema, CWV |
| R — Ranking | Ahrefs, SEMrush, GSC Performance, Surfer SEO | Keywords, content quality |
| U — UX/Performance | PageSpeed Insights, Lighthouse, Microsoft Clarity | CWV, mobile, accessibility |
| S — Authority | Ahrefs (DR, RD), Majestic (TF/CF), SEMrush Backlink Audit | Link profile |
| T2 — Trust/AI | Google Search (AIO), ChatGPT, Perplexity, Brand24, Wikidata | AI visibility, entity |
2025 SERP-TRUST Context:
Load the complete scoring rubric from references/serp-trust-benchmark.md.
Framework: SERP-TRUST (Search Engine Results Page — Technical Reliability, User Signals & Search Trust) Items: 50 | Scale: 0–4 per item | Max Raw: 200 | Normalized: 0–100
| Code | Dimension | Items | Max | Key Signals |
|---|---|---|---|---|
| T | Technical Foundation | 10 | 40 | HTTPS, robots.txt, sitemap, canonicals, schema, CWV, JS rendering |
| R | Ranking Signals | 10 | 40 | Title/H1 optimization, content depth, E-E-A-T, internal linking, freshness |
| U | User Experience & Performance | 10 | 40 | LCP <1.8s, INP <100ms, CLS <0.05, mobile UX, accessibility |
| S | Search Authority | 10 | 40 | DR/TF, referring domains, anchor distribution, topical authority |
| T2 | Trust & AI Readiness | 10 | 40 | AIO citations, Knowledge Panel, schema, reviews, entity signals |
Gather evidence for each dimension BEFORE scoring:
T — Technical Foundation
[domain]/robots.txt — check for blocks and sitemap declaration/sitemap.xml — validate exists, has correct URLs, accurate lastmodcurl -I https://[domain] — verify HTTPS, HSTS headerR — Ranking Signals
U — User Experience & Performance
S — Search Authority
T2 — Trust & AI Readiness
[business name] → Knowledge Panel present? Complete?best [service] in [city] → AIO appears? Client cited?sameAs schema count (target ≥7 authoritative properties)For each of the 50 items, assign a score using the rubric from references/serp-trust-benchmark.md:
| Score | Label | Meaning | Action |
|---|---|---|---|
| 0 | Critical | Broken, missing, or actively harmful | Fix immediately |
| 1 | Poor | Exists but significantly below standards | Prioritize this month |
| 2 | Fair | Partially implemented, notable gaps | Improve within 90 days |
| 3 | Good | Correctly implemented, minor improvements possible | Maintain |
| 4 | Excellent | Best-in-class, competitive advantage | Protect this signal |
Record evidence string for each score: e.g., "T1: HTTPS + HSTS present — curl confirms 301 from HTTP [Score: 4]"
2025-specific scoring notes:
Check all 7 veto conditions — triggered vetoes cap the maximum final score:
| Veto | Condition | Check Method | Score Cap |
|---|---|---|---|
| V01 | Site not indexed by Google | site:[domain] returns <5 pages | 10 |
| V02 | Active manual penalty in GSC | GSC → Security & Manual Actions | 15 |
| V03 | No HTTPS or expired SSL | curl -I https://[domain] — SSL error | 25 |
| V04 | LCP >6s on mobile | PageSpeed Insights → Mobile LCP | 30 |
| V05 | Cloaked / hidden content | Googlebot vs. user-agent comparison | 10 |
| V06 | >50% toxic backlinks | SEMrush Backlink Audit → Toxic Score | 20 |
| V07 | Zero structured data | Rich Results Test — no schema found | 40 |
Raw Score = Sum of all 50 item scores (max 200)
Normalized = (Raw Score / 200) × 100
Final Score = min(Normalized, lowest triggered veto cap)
Optional dimension-weighted scoring (recommended for granular analysis):
Weighted = (T_pct × 0.20) + (R_pct × 0.25) + (U_pct × 0.20) + (S_pct × 0.20) + (T2_pct × 0.15)
Score interpretation:
| Score | Grade | Meaning |
|---|---|---|
| 90–100 | A | Excellent trust signals — minimal improvement needed |
| 75–89 | B | Good — targeted improvements in weakest dimension |
| 60–74 | C | Average — systematic improvements across 2–3 dimensions |
| 45–59 | D | Weak — significant foundational work required |
| <45 | F | Critical — multiple failing signals, significant ranking suppression |
For each of 3 competitors, score on key items per dimension (abbreviated — focus on observable signals):
| Competitor | T /40 | R /40 | U /40 | S /40 | T2 /40 | Total /100 |
|---|---|---|---|---|---|---|
| Client | ||||||
| Comp 1 | ||||||
| Comp 2 | ||||||
| Comp 3 |
For all items scored 0–1, calculate improvement priority:
| Item | Current Score | Potential Score | Impact (1–5) | Feasibility (1–5) | Priority | Effort |
|---|---|---|---|---|---|---|
| FAQPage schema missing | 0 | 4 | 4 | 5 | 20 | 30 min/page |
| INP >200ms | 1 | 3 | 4 | 3 | 12 | 4–16 hrs |
| No sameAs links | 0 | 3 | 4 | 5 | 20 | 30 min |
| Low CTR on branded queries | 1 | 3 | 3 | 4 | 12 | 1–2 hrs |
| AIO not appearing | 0 | 3 | 5 | 3 | 15 | 4–8 hrs |
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SERP-TRUST SCORECARD
Website: [URL]
Date: [Date]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OVERALL SCORE: [X] / 100 Grade: [A-F]
Dimension Breakdown:
T Technical Foundation [XX/40] ████████░░ [X%]
R Ranking Signals [XX/40] ███████░░░ [X%]
U User Experience [XX/40] █████░░░░░ [X%]
S Search Authority [XX/40] ████████░░ [X%]
T2 Trust & AI Readiness [XX/40] ██████░░░░ [X%]
Veto Checks:
[✅/❌] V01: Site Indexed (site:[domain] returns pages)
[✅/❌] V02: No Manual Penalty (GSC clear)
[✅/❌] V03: HTTPS Active + SSL valid
[✅/❌] V04: LCP < 6s on mobile
[✅/❌] V05: No Cloaking detected
[✅/❌] V06: Toxic Links < 50%
[✅/❌] V07: Has Structured Data (schema present)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMPETITOR COMPARISON
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| Metric | Client | Comp 1 | Comp 2 | Comp 3 |
|------------|--------|--------|--------|--------|
| Overall | XX | XX | XX | XX |
| Technical | XX% | XX% | XX% | XX% |
| Ranking | XX% | XX% | XX% | XX% |
| UX/Perf | XX% | XX% | XX% | XX% |
| Authority | XX% | XX% | XX% | XX% |
| AI Ready | XX% | XX% | XX% | XX% |
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TOP 5 IMPROVEMENT PRIORITIES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. [Item ID]: [Description] — Current: X/4 → Target: 4/4 — Impact: High — Effort: [X]
2. [Item ID]: [Description] — Current: X/4 → Target: 3/4 — Impact: High — Effort: [X]
3. [Item ID]: [Description] — Current: X/4 → Target: 4/4 — Impact: Med — Effort: [X]
4. [Item ID]: [Description] — Current: X/4 → Target: 3/4 — Impact: Med — Effort: [X]
5. [Item ID]: [Description] — Current: X/4 → Target: 3/4 — Impact: Med — Effort: [X]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
QUICK WINS (Score to 3–4 with <1hr effort)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• [Item]: [What to do] — Effort: [time] — Expected gain: +X points (+X/100)
• [Item]: [What to do] — Effort: [time] — Expected gain: +X points (+X/100)
• [Item]: [What to do] — Effort: [time] — Expected gain: +X points (+X/100)
If LOCAL-IMPACT has also been scored, compute the combined index:
SEO Health Index = (LOCAL-IMPACT Score × 0.55) + (SERP-TRUST Score × 0.45)
Report as the master metric in the final output.
Save results to {AUDIT_DIR}/serp-trust-scores.md with YAML data block:
---
skill: cross-cutting/serp-trust-auditor
phase: scoring
date: [YYYY-MM-DD]
business: [Business Name]
url: [URL]
framework: SERP-TRUST
version: 1.0
scores:
overall: [0-100]
grade: [A-F]
weighted: [0-100]
dimensions:
T: { raw: X, max: 40, pct: X }
R: { raw: X, max: 40, pct: X }
U: { raw: X, max: 40, pct: X }
S: { raw: X, max: 40, pct: X }
T2: { raw: X, max: 40, pct: X }
vetoes_triggered: [list veto codes or empty]
competitors:
- name: [comp1]
url: [url]
score: X
- name: [comp2]
url: [url]
score: X
seo_health_index: [0-100]
---
Key consumers:
output/report-generation — SERP-TRUST score integrates into master reportoutput/pdf-report — renders score dashboard with dimension bar chart in PDFcross-cutting/local-impact-auditor — combines for SEO Health Index composite score