Schema.org - JSON-LD - Where to Place?

L84 picture L84 · Feb 24, 2015 · Viewed 51.8k times · Source

I am looking to use JSON-LD for schema on a website. (Schema meaning schema.org data.) I know how to write the data but my question is is there a prefered location in my code to insert this data? In other words, should the JSON-LD always be in the head, body, etc.?

Answer

Dheeraj Vepakomma picture Dheeraj Vepakomma · Jun 20, 2015

The data can be placed anywhere. From Google's documentation:

The data, enclosed within the <script type="application/ld+json"> ... </script> tags as shown in the examples below, may be placed in either the <HEAD> or <BODY> region of the page that displays that event.

You can also use data dynamically fetched using AJAX:

JSON-LD markup inserted by Javascript that runs upon initial page load can be recognized.

Update (as pointed by Antony in the comments)

The latest documentation says:

[JSON-LD is a] JavaScript notation embedded in a tag in the page head or body... Google can read JSON-LD data when it is dynamically injected into the page's contents, such as by JavaScript code or embedded widgets in your content management system.