JSON-LD (JavaScript Object Notation for Linked Data) is a JSON-based format for embedding structured data in web pages, and the recommended way to emit schema.org markup.
JSON-LD is embedded in HTML via a <script type="application/ld+json"> tag, typically placed in the document head. It does not interfere with rendering, is invisible to users, and is consumed by search engines and AI engines for content understanding.
A minimal JSON-LD example for a product:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Brown Leather Bag",
"image": "https://example.com/.../bag.jpg",
"offers": {
"@type": "Offer",
"price": "149.00",
"priceCurrency": "USD"
}
}JSON-LD's key advantage over Microdata and RDFa is separation of concerns — the structured data lives in its own block rather than being entangled with display HTML attributes. This makes it easier to maintain and to serve different schema variants for different audiences (Google, AI engines, internal systems).