JSON-LD, short for JavaScript Object Notation for Linked Data, is a World Wide Web Consortium (W3C) standard for expressing machine-readable statements about things - a product, an article, an organisation, an event - in ordinary JSON. Its distinguishing feature is that every key and value can be mapped to a globally unique identifier, so data written on one site means the same thing when read by another. On the web it mostly appears as a block of code inside a page that tells search engines what the page describes, using the schema.org vocabulary. It exists because developers already worked in JSON, and earlier linked data formats asked them to learn something else. Google's documentation says it supports three formats for structured data and that "all 3 formats are equally fine", but recommends JSON-LD as "the easiest solution for website owners to implement and maintain at scale".
How a JSON-LD block works
On a web page, JSON-LD sits inside a script element whose type attribute is application/ld+json, the media type registered for the format. Browsers treat that block as an inert data island: nothing is rendered and no code runs. A crawler that understands the format reads it separately from the visible HTML.
A typical product block contains a handful of entries. "@context": "https://schema.org" declares the vocabulary. "@type": "Product" names the class of thing being described. Plain properties follow, such as "name" and "image", and a nested object carries the commercial terms: an "offers" entry whose own "@type" is "Offer", with "price": "49.99", "priceCurrency": "EUR" and "availability" pointing to the schema.org value for in-stock items. Retailers can add "validForMemberTier" for loyalty prices, a property Google added to merchant listings in February 2025.
The context is what turns ordinary JSON into linked data. It maps short terms such as "name" to full internationalised resource identifiers (IRIs), so a processor knows the term means schema.org's definition of name rather than any other. The other core keywords each carry a reserved meaning: "@id" gives a node its own identifier, so separate objects can point to one another; "@type" assigns a class; "@graph" holds several nodes in one document; "@language" tags strings; and "@list" preserves order. Version 1.1 added "@nest", "@included", "@json", "@direction", "@protected", "@import" and "@propagate", among others.
Behind the syntax sits a set of processing algorithms, published as a separate specification. Expansion rewrites a document so every term becomes a full IRI. Compaction does the reverse, applying a context to produce short keys. Flattening collects every node into a single top-level list, framing reshapes a graph into a tree an application expects, and two further algorithms convert JSON-LD to and from the Resource Description Framework (RDF), the W3C's underlying graph data model. A JSON-LD document is therefore a serialisation of an RDF graph, though a publisher can write one without knowing that.
Where Microdata and RDFa annotate the visible HTML, JSON-LD keeps the data apart from layout. That separation is the practical reason Google prefers it: one template or tag can generate the block, and Google's documentation says it can read JSON-LD "when it is dynamically injected into the page's contents", such as through JavaScript. The same separation means the data can drift from what a visitor sees, a weakness addressed below.
From developer frustration to W3C standard
Work on JSON-LD began in 2010, led by Manu Sporny of Digital Bazaar and developed in an open W3C community group before moving to the RDF Working Group for standardisation. Sporny, Gregg Kellogg, Markus Lanthaler, Dave Longley and Niklas Lindstrom are listed among its authors. JSON-LD 1.0 became a W3C Recommendation on January 16, 2014.
Sporny was blunt about the motive in a January 2014 blog post. "The desire for better Web APIs is what motivated the creation of JSON-LD, not the Semantic Web," he wrote, adding that he had made a point of not mentioning RDF at all in the 1.0 specification. The format was pitched at web developers, not ontologists.
Adoption came through email and search. Gmail's actions feature, launched in May 2013, used a script block of type application/ld+json with a schema.org context, months before the format was final. By March 2015 Google's webmaster blog was promoting JSON-LD for website development, and Google's search features later listed it as the recommended syntax.
JSON-LD 1.1 followed as a Recommendation on July 16, 2020. According to the specification, it introduced the processing mode switch "@version", scoped contexts attached to properties and types, protected term definitions that other contexts cannot override, id and type maps, nested properties, and an abstraction of the syntax so equivalent formats other than JSON could serialise the same data. Outside search, the format underpins Activity Streams and ActivityPub, the federated social protocol, as well as W3C Verifiable Credentials and Decentralized Identifiers (DIDs) v1.1, whose March 2026 draft added a new JSON-LD context with a published SHA2-256 digest.
Why it matters for marketers
For most marketing teams, JSON-LD is the delivery mechanism for schema.org markup, and schema.org markup is what makes pages eligible for rich results such as product prices, review stars and event listings. The 2024 Web Almanac from HTTP Archive found JSON-LD on 41% of mobile pages, behind RDFa at 66% (a figure inflated by Open Graph tags, which count as RDFa) and ahead of Microdata at 26%. The Web Data Commons project at the University of Mannheim, using the October 2024 Common Crawl, counted about 11.5 million websites with JSON-LD, or 70% of sites carrying any structured data, against 46% for Microdata and 3% for RDFa.
Commerce is where the money is. Google's product variant support arrived in February 2024, and on July 7, 2026 the Product category property was extended to accept a CategoryCode object. This markup feeds the Shopping Graph alongside product data submitted through Google Merchant Center, whose automatic item updates can use a landing page's structured data to correct price and availability. Publishers use the same blocks for article metadata and paywall signals, and both schema.org markup and the og:image tag feed thumbnail selection in Search and Discover. Images carry separate embedded provenance through IPTC metadata.
AI systems have added a second audience. Fabrice Canel, principal program manager at Microsoft Bing, said in February 2026 that "We like Schema in pages", in the context of Google and Bing rejecting separate markdown pages for AI crawlers.
Limits, criticisms and disputes
The largest dispute is over effect. Structured data is an eligibility signal, not a ranking factor, and evidence of a lift is thin. Coverage of Google's May 2026 AI search guide cited an Ahrefs test that found no measurable ranking difference for pages already appearing in AI Overviews. Rich results themselves are shrinking: Google deprecated seven structured data types on June 12, 2025, and FAQ rich results stopped appearing on May 7, 2026.
Because the data sits outside the visible page, it can say things the page does not. Google's policies require markup to reflect visible content, and a structured data manual action leaves a page indexed while telling Google to ignore its markup. Undisclosed incentivised reviews joined the list of violations on July 24, 2026.
There are technical objections too. Remote contexts mean a processor may fetch a file from another server before it can interpret a document, which raises availability and tampering concerns; the W3C's 2026 working group charter lists a "safe mode" that fails on unmapped terms and content hashes for external contexts as security work. Most of the vocabulary goes unused: the first public schema.org usage dataset in June 2026 showed 485 of 958 types on fewer than 1,000 domains. Measurement also conflicts. The Web Almanac's text says JSON-LD rose from 34% of pages in 2022, while its chart puts 2022 mobile use at 37%, and Web Data Commons counts sites rather than pages, so the two sources are not comparable.
Not the same as
- Schema.org. A vocabulary of types and properties launched by Google, Microsoft and Yahoo on June 2, 2011. JSON-LD is a syntax; schema.org supplies the words it most often carries.
- Microdata. An HTML feature that marks up visible elements with itemscope, itemtype and itemprop attributes. It carries the same vocabulary but is woven into the layout.
- RDFa. Resource Description Framework in Attributes, an older W3C syntax using vocab, typeof and property attributes. Open Graph tags are technically RDFa, which inflates its usage figures.
- JSON Schema. A specification for validating the shape of JSON documents. It checks structure; JSON-LD assigns meaning. Semantic HTML, likewise, describes a page's own structure rather than the entities it discusses.
Recent developments
The W3C chartered a new JSON-LD Working Group on January 6, 2026, running to January 31, 2028 and chaired by Benjamin Young of Digital Bazaar and Victor Lu. It plans backward-compatible JSON-LD 1.2 specifications by the fourth quarter of 2027, with YAML-LD 1.0 and CBOR-LD 1.0, reversible YAML and binary serialisations, due in the first quarter of 2027.
On the consuming side, Googlebot's JSON-LD extraction moved to a single pass of HTML unescaping in August 2026. Google said double-escaped entities "will no longer be unrolled", so blocks that encode an ampersand twice now break, and Gary Illyes pointed publishers to section 7 of RFC 8259, the JSON standard. The change came months after Google cut Googlebot's fetch limit from 15MB to 2MB per URL, a ceiling inline JSON-LD counts against. Meanwhile, proposals aimed at AI agents are reusing the format: Joost de Valk's website specification, published in May 2026, lists a Schemamap convention that indexes one JSON-LD endpoint per resource through a schemamap.xml file.
Timeline
- 2010: Manu Sporny and collaborators begin work on JSON-LD in an open W3C community group
- June 2, 2011: Google, Microsoft and Yahoo launch schema.org
- May 2013: Gmail launches actions using JSON-LD with schema.org in email
- January 16, 2014: JSON-LD 1.0 becomes a W3C Recommendation
- March 2015: Google's webmaster blog promotes JSON-LD for website development
- July 16, 2020: JSON-LD 1.1 becomes a W3C Recommendation
- February 2024: Google adds structured data support for product variants
- 2024: Web Almanac measures JSON-LD on 41% of mobile pages
- October 2024: Common Crawl data used by Web Data Commons finds JSON-LD on about 11.5 million websites
- February 13, 2025: Google adds member pricing to merchant listing markup
- June 12, 2025: Google deprecates seven structured data types
- December 10, 2025: Google's structured data introduction last updated, recommending JSON-LD
- January 6, 2026: New W3C JSON-LD Working Group charter begins
- February 2026: Googlebot's fetch limit falls from 15MB to 2MB
- March 5, 2026: DIDs v1.1 published with a new JSON-LD context
- May 7, 2026: FAQ rich results stop appearing in Google Search
- June 4, 2026: Schema.org and Google publish the first public usage dataset
- July 7, 2026: Google's Product category property accepts CategoryCode
- August 21, 2026: Googlebot switches to a single pass of HTML unescaping for JSON-LD
- Q1 2027: YAML-LD 1.0 and CBOR-LD 1.0 due
- Q4 2027: JSON-LD 1.2 specifications due
Related PPC Land coverage
- Explaining structured data - Schema.org markup, the three syntaxes and how Google uses them for rich results.
- Explaining semantic HTML - Markup that describes a page's own structure, as distinct from the entities it discusses.
- Explaining IPTC metadata - The metadata standard embedded in image files to record credit, rights and provenance.
- Explaining Shopping Graph - Google's dataset of products, sellers and prices that powers shopping results.
- Explaining Google Merchant Center - The platform through which retailers submit product data for Shopping ads and free listings.
- Explaining manual actions - Google's human-issued penalties, including those for structured data abuse.
- Google adds member pricing data type to merchant listings - The validForMemberTier property and Google's three price types in Offer markup.
- Google adds structured data support for product variants - The February 2024 markup for products sold in sizes, colours and other variants.
- Google adds category codes to merchant listings on July 7 - The extension of the Product category property to accept CategoryCode objects.
- Google's secret thumbnail formula: schema.org and og:image both count - How markup and meta tags feed thumbnail selection in Search and Discover.
- W3C pushes DIDs v1.1 to implementations - and your ad stack may feel it - The decentralised identifier specification and its JSON-LD context.
- Google and Bing say no: separate markdown pages for AI violate search policies - Both search engines' position on bot-only pages, and Bing's comment on schema.
- Google's new AI search guide challenges everything SEOs thought they knew - Where Google says schema matters for AI search, and an Ahrefs test showing no ranking difference.
- Google deprecates seven structured data types to simplify search results - The June 2025 removal of seven rich result types.
- Google kills FAQ rich results: what SEOs saw coming since 2019 - The end of FAQ rich results in May 2026.
- Google bans undisclosed incentivized reviews, sites face manual action - The July 2026 addition to Google's review markup violations.
- Google and Schema.org finally show how the web uses structured data - The first public dataset of schema.org term usage by domain count.
- Bid controls shrink as ad measurement breaks: week of August 17 - Weekly roundup including Googlebot's change to JSON-LD unescaping.
- Google slashes web crawl limit by 86.7% as cost pressures mount - The February 2026 reduction of Googlebot's fetch limit from 15MB to 2MB.
- Joost de Valk's website spec: 128 rules to future-proof your site - A standards checklist recommending JSON-LD on every page and listing the Schemamap convention.
Summary
Who. Manu Sporny of Digital Bazaar led the creation of JSON-LD with Gregg Kellogg, Markus Lanthaler, Dave Longley and Niklas Lindstrom; the W3C maintains it through a working group chaired in 2026 by Benjamin Young and Victor Lu. Publishers, retailers and developers write it, and Google, Bing and AI systems read it.
What. A W3C syntax that expresses linked data in JSON, using a context to map short keys to global identifiers. On the web it mostly carries schema.org markup in a script block of type application/ld+json.
When. Work began in 2010. JSON-LD 1.0 became a Recommendation on January 16, 2014 and 1.1 on July 16, 2020. Version 1.2 is due by the end of 2027.
Where. In the head or body of web pages, in HTML emails, in API responses and in identity and social protocols such as Verifiable Credentials, DIDs and ActivityPub.
Why. Machines need explicit statements about what a page describes. JSON-LD lets developers supply them in a familiar format, separate from layout, which made it Google's recommended way to qualify for rich results and a common input for product data in search and AI systems.
Discussion