Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
Benefits/drawbacks to different Schema markup languages (ie. JSON-LD, Microdata, RDFa)
-
Just a question (or questions) I have wondered about. What's the difference, besides the actual encoding, between the three? Why have three? Why not just the one? Seems to me that Microdata is the easiest, but maybe I am wrong. Is there a reason to use one versus another? I have not found anything explaining this on schema.org - I suppose this is just a discussion versus getting one right or wrong answer. I am just curious of the opinions of people in the SEO MOZ community. Unless of course there is one answer. I'll take that too.
-
Great, Peter. Thanks for the answers. I now understand the difference. Much appreciated.
-
That's right. JSON-LD doesn't require change of HTML compared with Microdata and RDFa. And this is one of answers why JSON-LD is beautiful. Second is because you can make changes in JSON-LD without touching HTML. Like adding new fields, parameters, etc.
About placing. I think that this can be just on home page. Placing in each page is pure rich snippet spam.
-
Hi Peter,
Thanks for the answer. So, as I understand it, and keep in mind this is coming from someone that is not very code-savvy, with JSON-LD, one could put the script anywhere in the HTML, the header, the body, the footer, etc. and it won't show up on the actual page, but the search engine will be able to read it. This implies that no changing or tweaking of the actual HTML is necessary, no messing around with 's or
's like you would with Microdata or RDFa, correct?
A follow up question, if I may, how would you implement something like a "local business" schema with JSON, would you put the script on every page, in the footer perhaps? Or would you just put it on the home page? Does it matter?
Thanks
-
So far we have Microdata, RDFa and JSON-LD.
I'll cover Microdata and RDFa in same because they're similar. So they both are addition to HTML attributes indicating what Schema.org field names correspond with what user-visible text on the page. Works perfect but need lot of developer work and designer changes. Because both backend (admin interface) and frontend (HTML) must be changed. And there are many issues that can be messed - incorrect implementation, "rich snippet spam", software bugs, etc. Look easy as 1-2-3 but in reality it's pain (PIA) for implementation and support. Example - only product implementation require in backend least 10 edit boxes if they're manual filled.
JSON-LD - it's relative new protocol based on Schema.org. The main benefit is that you split representation layer (HTML) from semantic layer (JSON-LD). In prev. formats - they're same and linked each other. Now they're split. This give you much more freedom than before. You can place HTML data whatever you wish and just add hidden JSON in head or in content that will add semantic marking. This is future (for now).
If you wish to read more about creation of JSON-LD then this article is for you:
http://manu.sporny.org/2014/json-ld-origins-2/
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Event Schema for Multiple Occurrences
I am wondering the best way to mark up an event page with multiple occurrences. For example, we have an event that happens over the course of 4 sequential weekends:
Intermediate & Advanced SEO | | Your_Workshop
9/28-9/29
10/5-10/6
10/12-10/13
10/19-10/20 Our website allows us to enter multiple occurrences that results in a single event listing page which outputs all dates (to eliminate duplicate content, titles, metas, etc.) but allows each occurrence to output individually on our events calendar in the respective individual date. Each time the event is shown, it links to the same listing page. I am wondering if we can add event schema on a single listing multiple times to cover each occurrence. In the above example, we would have 4 schemas on the listing page for each date range/weekend. In our current schema, we end up with a start and end date identified as 9/28-10/20 but it is not clear that the event is just happening on the weekends with gaps in between. Any suggestions are welcome however, we are really trying to NOT list each as an individual event on the website both for the duplicate content issue and the extra burden on our client that lists events for a very large geographic area.0 -
How To Optimize For Same Word, Different Spelling
Hi all. Just wondering what peoples stance is on using multiple variations of keywords on a webpage - those keywords that have the same meaning and search intent, but are just spelt differently. i.e. 'woodscrews' and 'wood screws' (the latter has a significantly higher search volume) You could approach the webpage in 4 different ways; 1. Use ONLY 'wood screws' on-page, and in the page <title><br />2. Use ONLY 'woodscrews' on-page, and in the page <title><br />3. Use BOTH 'wood screws' and 'woodscrews' on-page, and BOTH in the page <title><br />4. Use BOTH 'wood screws' and 'woodscrews' on-page, but ONLY one variation in the page <title></p> <p>We've run some tests in the past but there were never any clear takeaways, a mixed bag of results really.</p> <p>Also, If they are considered the same keyword by Google why are the ranking positions always different for each variation?</p> <p>I'm not sure there' a specific answer to this, just interested to hear peoples thoughts really.</p> <p>Many thanks in advance!</p> <p>Lee.</p></title>
Intermediate & Advanced SEO | | Webpresence0 -
Schema markup concerning category pages on an ecommerce site
We are adding json+ld data to an ecommerce site and myself and one of the other people working on the site are having a minor disagreement on things. What it comes down to is how to mark up the category page. One of us says it needs to be marked up with as an Itempage, https://schema.org/ItemPage The other says it needs to be marked up as products, with multiple product instances in the schema, https://schema.org/Product The main sticking point on the Itemlist is that Itemlist is a child of intangible, so there is a feeling that should be used for things like track listings or other arbitrary data.
Intermediate & Advanced SEO | | LesleyPaone2 -
Schema for restaurants and menus?
Hi all, Anyone have experience with using Schema for restaurants other than the normal local business NAP? Is there a way to use Schema markup for food menus as well? Examples and schema code much appreciated 🙂 Thanks!
Intermediate & Advanced SEO | | RickyShockley0 -
Google News Sitemap in Different Languages
Thought I'd ask this question to confirm what I already think. I'm curious that if we're publishing something in two language and both are verified by the publishing center if the group would recommend publishing two separate Google News Sitemaps (one in each language) or publishing one in each language.
Intermediate & Advanced SEO | | mattdinbrooklyn0 -
:Pointing hreflang to a different domain
Hi all, Let's say I have two websites: www.mywebsite.com and www.mywebsite.de - they share a lot of content but the main categories and URLs are almost always different. Am I right in saying I can't just set the hreflang tag on every page of www.mywebsite.com to read: rel='alternate' hreflang='de' href='http://mywebsite.de' /> That just won't do anything, right? Am I also right in saying that the only way to use hreflang properly across two domains is to have a customer hreflang tag on every page that has identical content translated into German? So for this page: www.mywebsite.com/page.html my hreflang tag for the german users would be: <link < span="">rel='alternate' hreflang='de' href='http://mywebsite.de/page.html' /></link <> Thanks for your time.
Intermediate & Advanced SEO | | Bee1590 -
Wordpress Blog in 2 languages. How to SEO or structure it?
Hi Moz community, I have got a wordpress blog currently in the spanish language. I want to create the same blog content but in english version. (manually translate it to english instead of using translation service such as Google Translate). How should i structure the blog for SEO? How will it work? Any structure markups i should know about? Any examples? Thanks
Intermediate & Advanced SEO | | WayneRooney0 -
Keyphrase / Keyword arrangement
Hi all, What are your thoughts on the arrangement of keyphrases / words? For example, does it make a difference if the words are arranged in the following way: "Keyword 1 Keyword 2" or "Keyword 2 Keyword 1" Both ways make a phrases which is favourable in the search engines. Can I stick with 1 way or should I be going with both arrangements. Hope that is clear 🙂
Intermediate & Advanced SEO | | wtfi0