120 checks in Schema, Local, Trust, Deep Audit. Automated Its subsection has a live automated checker in the engine.
| ID | Check | Passes when |
|---|---|---|
| 6.10.01 | Detect Service schema | Present |
| 6.10.02 | Validate correct schema type (Service / ProfessionalService / subtype) | Accurate |
| 6.10.03 | Validate service name | Present |
| 6.10.04 | Validate service description meaningful & contextually correct | Strong |
| 6.10.05 | Validate provider object exists | Present |
| 6.10.06 | Validate provider is Organization / LocalBusiness | Accurate |
| 6.10.07 | Validate provider @id alignment with main business schema | Exact |
| 6.10.08 | Validate serviceType property | Present |
| 6.10.09 | Validate category matches service intent | Accurate |
| 6.10.10 | Validate serviceAudience (if applicable) | Present |
| 6.10.11 | Detect Offer object | Present |
| 6.10.12 | Validate Offer → priceSpecification | Present |
| 6.10.13 | Validate price, currency & priceRange correctness | Accurate |
| 6.10.14 | Validate unitText (per hour, per service) | Present |
| 6.10.15 | Validate included services or add-ons | Present |
| 6.10.16 | Validate availability (InStock / LimitedAvailability) | Correct |
| 6.10.17 | Validate areaServed (AdministrativeArea / GeoShape / GeoCircle) | Present |
| 6.10.18 | Validate areaServed alignment with LocalBusiness serviceArea | Accurate |
| 6.10.19 | Validate geographic coverage correct for service | Correct |
| 6.10.20 | Validate local relevance keywords/entities | Strong |
| 6.10.21 | Validate serviceOutput property | Present |
| 6.10.22 | Validate serviceLocation (if service requires location) | Accurate |
| 6.10.23 | Validate providerMobility (mobile, fixed, hybrid) | Correct |
| 6.10.24 | Validate areaServed + mobility relationship | Logically consistent |
| 6.10.25 | Validate service schema matches on-page service heading | Exact |
| 6.10.26 | Validate service description matches on-page content | High parity |
| 6.10.27 | Validate canonical URL alignment with Service schema | Exact |
| 6.10.28 | Validate no duplicate Service schemas on page | None |
| 6.10.29 | Validate no conflicting pricing between page + schema | Clean |
| 6.10.30 | Validate Offer references correct service @id | Accurate |
| 6.10.31 | Validate all services reference the same provider @id | Exact |
| 6.10.32 | Validate no service describes offerings outside provider’s business category | Clean |
| 6.10.33 | Validate hierarchical service relationships (parentService / subService) | Accurate |
| 6.10.34 | Validate each service has unique @id | Unique |
| 6.10.35 | Validate no conflicting service names across pages | None |
| 6.10.36 | Validate ServiceChannel object (phone, web form, email) | Present |
| 6.10.37 | Validate service URL, phone, and contact emails match provider schema | Exact |
| 6.10.38 | Validate correct instructions for obtaining service | Clear |
| 6.10.39 | Validate openingHours for ServiceChannel (if different from business hours) | Present |
| 6.10.40 | Validate actionPlatform (e.g., WebForm, MobileApp) | Correct |
| 6.10.41 | Validate PriceSpecification → minPrice, maxPrice (if applicable) | Accurate |
| 6.10.42 | Validate price currency consistency across services | Consistent |
| 6.10.43 | Validate additional charges (travel fee, materials) | Present |
| 6.10.44 | Validate freeEstimate property if applicable | Correct |
| 6.10.45 | Validate disclaimers present for pricing variability | Present |
| 6.10.46 | Validate service page includes local keywords aligned with serviceArea | Strong |
| 6.10.47 | Validate service page references local landmarks/cities (if relevant) | Present |
| 6.10.48 | Validate metadata (title, description) reflect locality | Accurate |
| 6.10.49 | Validate serviceArea in schema matches localized on-page service areas | High parity |
| 6.10.50 | Validate service description optimized for AI comprehension | Clear |
| 6.10.51 | Validate service description includes entities (tools, tasks, materials) | Present |
| 6.10.52 | Validate inclusion of semantic-rich phrases (causes, outcomes, risks) | Present |
| 6.10.53 | Validate multimedia (images, diagrams, videos) supporting the service | Present |
| 6.10.54 | Validate no two services describe the same task | None |
| 6.10.55 | Validate no duplicated Offer objects | None |
| 6.10.56 | Validate no conflicting serviceArea data among similar services | Clean |
| 6.10.57 | Validate no conflicting pricing across similar pages | Matched |
| 6.10.58 | Validate service schema appears before </body> or in <head> | Correct |
| 6.10.59 | Validate schema renders correctly in DOM (post-JS) | Stable |
| 6.10.60 | Validate Offer → Service → Provider chain correct | Accurate |
| 6.10.61 | Validate presence of primary CTA (Call, Quote, Schedule) | Present |
| 6.10.62 | Validate CTA phone number matches schema provider phone | Exact |
| 6.10.63 | Validate CTA persists across mobile + desktop | Consistent |
| 6.10.64 | Validate service-specific CTAs (Book inspection, Request diagnosis) | Present |
| 6.10.65 | Validate H1 matches service name | Exact |
| 6.10.66 | Validate metadata (title + description) match service intent | Accurate |
| 6.10.67 | Validate canonical URL unique per service | Correct |
| 6.10.68 | Validate breadcrumb schema references service hierarchy | Accurate |
| 6.10.69 | Validate FAQ schema specific to service | Present |
| 6.10.70 | Validate inclusion of service process steps (1–5 or similar) | Present |
| 6.10.71 | Validate inclusion of common problems this service solves | Present |
| 6.10.72 | Validate inclusion of risks of inaction | Present |
| 6.10.73 | Validate inclusion of what’s included in the service | Present |
| 6.10.74 | Validate inclusion of before/after examples (photos or descriptions) | Present |
| 6.10.75 | Validate inclusion of tools/materials used | Present |
| 6.10.76 | Validate references to local service areas | Present |
| 6.10.77 | Validate embedded map (if used) references correct region | Accurate |
| 6.10.78 | Validate internal linking to other local pages | Present |
| 6.10.79 | Validate service page includes city, neighborhood, ZIP references | Present |
| 6.10.80 | Validate presence of relevant images | Present |
| 6.10.81 | Validate all images load (200 status) | OK |
| 6.10.82 | Validate presence of VideoObject schema if video included | Accurate |
| 6.10.83 | Validate alt text optimized for service intent | Strong |
| 6.10.84 | Validate pricing consistent across similar service pages | Consistent |
| 6.10.85 | Validate messaging consistency across services | Strong |
| 6.10.86 | Validate no competing service names (ambiguity check) | Clean |
| 6.10.87 | Validate consistent CTA framework across all services | Present |
| 6.10.88 | Validate correct nesting of schema (Service → Offer → Provider) | Accurate |
| 6.10.89 | Validate structured data passes Rich Results Test | Pass |
| 6.10.90 | Compute service-level partial score before aggregation | Complete |
| 6.10.91 | Validate LCP element loads under performance threshold | Good |
| 6.10.92 | Validate CLS stability throughout page scroll | Stable |
| 6.10.93 | Validate TBT within acceptable range | Good |
| 6.10.94 | Validate script weight optimized (minified/bundled) | Efficient |
| 6.10.95 | Validate unused JS/CSS minimized | Clean |
| 6.10.96 | Validate upward links to category-level pages | Present |
| 6.10.97 | Validate cross-links to related services | Present |
| 6.10.98 | Validate link anchor text semantically accurate | Strong |
| 6.10.99 | Validate no orphan status (must be reachable in <3 clicks) | Connected |
| 6.10.100 | Validate trust badges or certifications displayed for this service | Present |
| 6.10.101 | Validate testimonials on service page (if available) | Present |
| 6.10.102 | Validate review snippets are consistent with business rating | Consistent |
| 6.10.103 | Validate case studies (if provided) align with service | Relevant |
| 6.10.104 | Validate hreflang support for service pages | Present |
| 6.10.105 | Validate translated service descriptions match primary version | High parity |
| 6.10.106 | Validate region-specific variants (if targeting multiple markets) | Accurate |
| 6.10.107 | Validate multilingual Offer/ServiceChannel consistency | Correct |
| 6.10.108 | Validate service description includes AI-friendly structured paragraphs | Strong |
| 6.10.109 | Validate embedded entities (tools, issues, outcomes) for AI retrieval | Present |
| 6.10.110 | Validate vectorizable service blocks (clear, semantic units) | Clean |
| 6.10.111 | Validate service synonyms and alias terms included | Present |
| 6.10.112 | Validate no broken images | All 200 |
| 6.10.113 | Validate no broken internal links | None |
| 6.10.114 | Validate no broken external links | None |
| 6.10.115 | Validate all schema passes Rich Results test | Pass |
| 6.10.116 | Validate absence of console errors (JS/CSS) | None |
| 6.10.117 | Validate DOM stable after JS hydration | Stable |
| 6.10.118 | Validate all Offer → Service → Provider chains aggregated correctly | Accurate |
| 6.10.119 | Validate cross-service scoring consistency across the website | Even |
| 6.10.120 | Compute full service suite composite score | >= 90% |
← 6.9 Organization / LocalBusiness / Business Profile Schema Suite6.11 Review / AggregateRating / Testimonial Schema Suite →
A Deep Audit scores every check here that applies to your page, then an AI pass of up to 150 checks. Included on Pro and Ultra, or $9 for one audit.
See plansMachine-readable: catalog totals and the full catalog as JSON (IDs, section, weight, status).