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.?
From the perspectives of Schema.org, JSON-LD, and the possibly extracted RDF, it should not matter. The data is the same, no matter from where in the document it got extracted.
From the perspective of HTML5:
If it’s data about your page (or what this page is about), you could place the script
element in the head
, as the head
element
[…] represents a collection of metadata for the Document
But of course it would not be wrong to use body
for this instead. It’s just that you shouldn’t use head
for data that is not about your page or what it represents.