Use JSON-LD. It's Google's preferred format, decouples from page HTML (so it survives template refactors), and is easier to validate. Microdata and RDFa work but offer no advantages and constrain HTML structure. The only edge case where Mic
Use JSON-LD. It's Google's preferred format, decouples from page HTML (so it survives template refactors), and is easier to validate. Microdata and RDFa work but offer no advantages and constrain HTML structure. The only edge case where Microdata wins is third-party CMSes that don't support arbitrary script blocks.
**Spec:** identify the schema types affected, document the expected JSON-LD shape per template.
**Implement:** ship the implementation at the template level (not per-URL).
**Validate:** run Schema.org Validator + Google Rich Results Test against a sample URL set before site-wide deployment.
**Monitor:** watch GSC Enhancements report for the schema type for 7 days following deployment.
**Iterate:** roll back via the same template if regression flags. Iterate on the implementation, re-validate, re-deploy.
The most common pitfalls in this playbook area: per-URL schema invention (rather than template-level), validation only at deployment time (not in CI/CD), and treating schema as cosmetic (which underweights AEO citation eligibility).
The mitigation pattern is the same across all three: ship at template level, validate continuously, treat schema as a primary AEO input.
**Quarterly:** review schema implementation across all page templates for drift. Validate against current Schema.org spec.
**Monthly:** monitor GSC Enhancements report for new errors. Cross-check with AI Overview citation share for pages where schema is a primary citation eligibility input.
**Per-deployment:** validate any new or changed page against Schema.org Validator + Google Rich Results Test before merging.
Initial setup: 4-12 hours of senior SEO + dev time. Ongoing maintenance: 1-3 hours per quarter once the template-level pattern is established.
Yes — the playbook is CMS-agnostic. WordPress, Webflow, Shopify, Sanity, Contentful, custom Next.js / Nuxt / Astro all support template-level JSON-LD shipping.
Most playbooks in this library can be partly executed via CMS schema plugins (e.g., Yoast / RankMath for WordPress). Plugin-based implementations are usually less precise than template-level work but are a good starting point.