Skip to content

Structured data

Structured data is standardized markup that tells search engines what a page is about, enabling rich results (review stars, FAQ accordions, recipe cards, breadcrumbs, etc.). Google parses it from the HTML and uses it to enhance how the page appears in search.

Google supports three formats; JSON-LD is recommended.

FormatPlacementNotes
JSON-LD<script type="application/ld+json"> in <head> or <body>Recommended — decoupled from visible markup
Microdataitemscope, itemtype, itemprop attributes on HTML elementsInline with content
RDFavocab, typeof, property attributesInline with content

Built on schema.org vocabulary. Frequently used types with Google rich result support:

  • Article / NewsArticle / BlogPosting — headlines, author, dates
  • Product with Offer and AggregateRating — price, availability, reviews
  • Recipe — ingredients, cook time, ratings
  • FAQPage — question/answer pairs
  • HowTo — step-by-step instructions
  • Event — date, location, ticket info
  • Organization / LocalBusiness — contact info, hours, logo
  • BreadcrumbList — navigation hierarchy
  • VideoObject — thumbnail, duration, upload date
  • Person — profile info
  • Course, JobPosting, Book, Movie, SoftwareApplication

The full feature gallery lives in the Google search appearance docs.

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Title of the page",
"author": {
"@type": "Person",
"name": "Jane Doe"
},
"datePublished": "2026-05-01",
"image": "https://example.com/cover.jpg"
}
</script>
  • Rich Results Test — official Google tool; reports which rich results the markup is eligible for, with Google-specific warnings
  • Schema Markup Validator — generic schema.org validation without Google feature checks
  • Google Search Console — production monitoring of indexed structured data, errors, and impressions

Google has split validation: use Rich Results Test for eligibility checks and Schema Markup Validator for vocabulary correctness.

  • Mark up content visible to users — don’t hide structured data behind cloaking
  • Markup must accurately describe the page; misleading or spammy markup can trigger manual actions
  • Required and recommended properties differ per type — check the feature-specific docs
  • Test before deploy with the Rich Results Test, then monitor in Search Console
  • Eligibility for rich results doesn’t guarantee display — Google decides at query time