// mime type · application type

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+json

With 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

Other application types