JSON-LD and schema.org

Structured Data: JSON-LD and schema.org

Structured data states facts about a page in a machine-readable vocabulary, usually schema.org (https://schema.org/ 5,868 ), whose founding companies are Google, Microsoft, Yahoo and Yandex; it reached version 30.0 in March 2026. You can embed it as Microdata or RDFa attributes on visible elements, but Google recommends JSON-LD: a <script type="application/ld+json"> block that the browser ignores and that stays separate from your markup, so template changes rarely break it.

JSON-LD for a blog postHTMLLive
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "Accessible Forms in HTML: Labels, Hints and Errors",
  "image": ["https://blog.northwind.example/og/accessible-forms.png"],
  "datePublished": "2026-09-01T08:00:00+02:00",
  "dateModified": "2026-09-10T14:30:00+02:00",
  "author": { "@type": "Person", "name": "Ana Trujillo", "url": "https://northwind.example/ana" },
  "publisher": { "@type": "Organization", "name": "Northwind Dev Blog" }
}
</script>

@context selects the vocabulary, @type names the schema.org class, and nested objects describe related entities. Google's Article documentation has no required properties for Article, NewsArticle or BlogPosting; add every property that applies, with ISO 8601 dates that include a time zone. Every value must match content visible on the page. Valid markup makes a page eligible for rich results, but Google does not guarantee that they appear. Check syntax against the vocabulary with the Schema Markup Validator 5,868 (validator.schema.org) and Google eligibility with the Rich Results Test 1 (search.google.com/test/rich-results); Rich Results Testing covers both, and Microformats compares JSON-LD with microformats.