application/ld+json
JSON-LD (linked data) · .jsonld
What application/ld+json is
application/ld+json is JSON-LD — JSON that carries linked-data semantics. It's the recommended way to embed structured data (Schema.org) in a page for search engines.
How it's used
You'll see this as a Content-Type value on requests and responses — for example Content-Type: application/ld+json. It's the type associated with the .jsonld file extension. Application types cover structured data and binary formats — from JSON and XML to PDFs, archives, and Office documents.
Example
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Example headline"
}
</script>Set application/ld+json on your server
HTTP response from a JSON-LD API
HTTP/1.1 200 OK
Content-Type: application/ld+jsonWith a profile parameter
Content-Type: application/ld+json; profile="http://www.w3.org/ns/json-ld#expanded"Common problems with application/ld+json
Where is application/ld+json used most?
Mostly as the type attribute of a <script> tag that embeds Schema.org structured data in a web page. Search engines read the JSON inside it. It is also the response type of APIs that return linked data.
Is application/ld+json different from application/json?
Both are JSON. The ld+json type tells the receiver the document follows JSON-LD rules, such as @context and @type. A plain JSON parser can still read it.
Does the script need a charset or MIME header from the server?
No. For inline JSON-LD the type attribute in the script tag is what matters. The server serves the page as text/html as usual.
My structured data is not detected
Check that the JSON is valid (no trailing commas), that the type attribute is exactly application/ld+json, and that the data matches the visible content of the page. A JSON formatter helps find syntax errors.
Related types
application/json: the general-purpose JSON type