Structured data validates without critical errors
Why it matters
Malformed JSON-LD, wrong case on @type, or typo'd property names like adress cause schema.org parsers to silently discard the block, which strips local-pack rich results (stars, hours, address card) from Google and Bing SERPs. The reference-integrity taxon applies: a structurally broken block is indistinguishable from no structured data at all, costing click-through in geo queries where competitors with valid LocalBusiness markup win the visual real estate.
Severity rationale
High because one syntax error nullifies the entire block and kills rich-result eligibility across every page that renders it.
Remediation
Parse every JSON-LD payload at build time with JSON.parse and assert @context === 'https://schema.org' and a valid @type before injecting the <script> tag. Centralize this in src/components/structured-data.tsx so one validator covers every page, then confirm with Google's Rich Results Test.
const schema = JSON.parse(jsonLdString)
if (schema['@context'] !== 'https://schema.org') throw new Error('bad @context')
if (!schema['@type']) throw new Error('missing @type')
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Local SEO Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
Taxons
History
- 2026-04-18·v1.0.0·Initial import from marketing-local-seo·automated