Google’s John Mueller says there’s no harm in using different types of structured data, such as JSON-LD and microdata, on alternate versions of a page.
This question came up during yesterday’s Google Webmaster Central hangout where the following question was asked:
“Schema markup with a desktop and AMP version – is it OK if the desktop version is implemented using microdata but the AMP version is using JSON-LD?”
Implementing structured data that way is perfectly fine, Mueller says.
Although there’s one thing to keep in mind, which is that some kinds of structured data are only available on JSON-LD.
So if JSON-LD is being used on one version of a page, it might be worth double-checking if there is equivalent microdata for the other version.
Otherwise, there’s nothing wrong with using different types of structured data on different types of pages.
It’s even OK to use different types of structured data on just the desktop version of a site (or just the mobile version).
For example, if an e-commerce site has a blog then it could use JSON-LD for product review markup and microdata for article markup.
Although it wasn’t mentioned in the Hangout, I feel it’s worth noting that Google’s structured data guidelines recommend using JSON-LD whenever possible.
Hear the full question and answer below, starting at the 22:58 mark:
“Sure, that’s perfectly fine. With regards to the format that is used there, I don’t see a problem with that.
The only thing to keep in mind is that, as far as I know, some kinds of structured data are only available on JSON-LD. So that might be something where you need to double-check the types of structured data that you’re using.
But having one version of your site using one type of structure data, and the other version using a different type (even within the same desktop, mobile, AMP variation) that’s certainly possible.
So, for example, if you have a blog and maybe a product directory on your website, an e-commerce site. And the e-commerce site has reviews that use JSON-LD and your blog uses article markup that’s using microdata. I don’t know if that’s the right way to do that, but that would be perfectly fine too.”