seoschema.orgrich-snippetsjson-ldgoogle-rich-snippets

'Things' per page for Google Rich Snippets


Our home page has JSON-LD for our organization. Should our product pages have that chunk of code as well?

If Google crawls one of our product pages and finds @type: Organization and @type: Product, will it have trouble determining the nature of that particular page?


Solution

  • Let’s say you want to convey that your Organization is the manufacturer of the Product:

    Inside of the Product node, you could either provide the full Organization node as value, or you could provide the URI of the Organization as value, which gets specified with @id in the Organization node (see an example).

    Referencing the identifier has the advantage that you don’t have to repeat yourself, but the disadvantage that it’s perhaps more work for the consumer (they might not support it).

    Google doesn’t explicitly mention in their Rich Snippets documentation if they follow URIs and take the referenced node into consideration, while embedding nodes seems to be supported according to their examples and their SDTT.

    If Google crawls one of our product pages and finds @type: Organization and @type: Product, will it have trouble determining the nature of that particular page?

    Google even recommends to markup (or in case of JSON-LD, provide data for) all entities on a page.

    Also note that Schema.org offers a property that allows to denote which entity is the primary one (e.g., Product on a product page, Organization on the homepage): mainEntity/mainEntityOfPage (see my answer with more details).