Technical SEO

Structured Data: What to Add First, and What to Skip

Structured data — usually written as JSON-LD, Google's preferred format — is a way of describing a page's content in a vocabulary search engines can parse directly, rather than inferring it from headings and body text. Done well, it earns rich results: star ratings in a search snippet, an FAQ accordion, a job posting card. Done badly, or added everywhere indiscriminately, it does nothing and wastes development time that could go toward something that moves rankings.

Organization and WebSite schema belong on every site regardless of type — they're cheap to add, low-risk, and help search engines understand who's behind a site and how its internal search works. BreadcrumbList schema is nearly as universal: it's inexpensive to generate from whatever navigation structure already exists, and it reliably improves how a URL's breadcrumb trail displays in search results.

Past that baseline, the right schema depends entirely on the page type. A local service business should prioritize LocalBusiness schema with accurate address, hours, and service-area data — it's one of the more direct connections between structured data and local pack visibility. An e-commerce product page should carry Product schema with price, availability, and — only if genuinely present — AggregateRating, since Google has become stricter about rejecting review markup it can't verify against visible on-page reviews.

FAQPage schema deserves a specific caution: Google significantly narrowed which sites are eligible to show FAQ rich results, largely limiting them to well-established government and health sites. Adding FAQPage markup to a general business site in 2026 mostly no longer produces the rich result it used to, even though the schema itself is still valid. It's not harmful to include, but it shouldn't be treated as a growth lever anymore.

The highest-leverage habit isn't adding more schema types, it's validating the ones already in place. A LocalBusiness entry with a phone number that doesn't match the visible page, or a Product entry with a price that's out of sync with what's actually charged at checkout, is worse than having no markup at all — it's the kind of inconsistency that can trigger a manual structured-data spam action. Test with Google's Rich Results Test after every deploy that touches a templated page, not just once at launch.