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
-
Looking for opinions on structuring meta title tags/page title/menu title/H1
Hi everyone I am hoping a few of you can share your opinions. I have been having conversations (okay, healthy debates) about how to write/structure meta title tag and how to compliment them with the H1, page title, menu name. To help explain the thought processes I will use a pretend keyword. How about "screwdriver". Case: (I made this up) we are redesigning a website for a construction tools manufacturing company (pretend name: ABC Tools) targeting OEMs who are interested in purchasing large quantities of tools. The product categories (to become main menu items) are Screwdrivers, Nails, Drills, and Hammers. (bear with me .... this is just an example I am making up on the fly) K. Circling back to screwdrivers - let's say we have one landing page (a primary category page and in the main menu) listing products and great details about screwdrivers. Focus keywords are screwdriver manufacturer, screwdriver supplier, construction screwdrivers Below are questions being debated. If you are willing ... how would you address these questions? And, can you explain WHY? QUESTION ONE: How would you structure the meta title tag (feel free to write one of your own) Screwdriver Manufacturer - Construction Screwdriver | ABC Tools ABC Tools - US-based Screwdriver Manufacturer Supplier Near You High-Quality Screwdrivers for Construction with ABC Tools QUESTION TWO: how would you write the H1 on the page? Would it match the meta tag? OR, would you write something different using the primary keyword? QUESTION THREE Remembering this is not a blog post ... it is a primary landing page linked to the main navigation. What would the menu title be? (remember the product categories above are how the main menu items are bucketed) Screwdrivers Screwdriver Manufacturer Typically in WordPress, the H1 and the menu title is auto-populated using the page title (not the title tag)... So, if we use Screwdrivers as the page title but we want the H1 to match the meta title tag, would we manually change the H1? Or, have the page title and title tag match, but manually change the menu item?
Intermediate & Advanced SEO | | Brenda.Haines1 -
Difference hummingbird and rankbrain
From my understanding hummingbird is the fact that google is able to parse sentences and link entites to understand the meaning of content in a better way than with just keywords and rankbrain is about user intent, google understands that they are various ways to mean the same thing. Is my understanding correct ? Thank you,
Intermediate & Advanced SEO | | seoanalytics0 -
H1 and Schema Codes Set Up Correctly?
Greetings: It was pointed out to me that the h1 tags on my website (www.nyc-officespace-leader.com) all had exactly the same text and that duplication may be contributing to the very low page authority for most URLs. The duplicate h1 appears in line 54-54 (see below) of the home page: www.nyc-officespace-leader.com: itemscope itemtype="http://schema.org/LocalBusiness" style="position:absolute;top:-9999em;"> <span<br>itemprop="name">Metro Manhattan Office Space</span<br> <img< p="">But the above refers to schema" so is this really duplicate H1 or is there an exception if the H1 is within a schema? Also, I was told that the company street address and city and state were set up incorrectly as part of an alt tag. However these items also appear as schema in lines 49-68 shown below: Dangerous for me to perform surgery on the code without being certain about these key items!! Could ask my developer, however they may be uncomfortable considering that they set this up in the 1st place. So the view of neutral professionals would be highly welcome! itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
Intermediate & Advanced SEO | | Kingalan1
<span<br>itemprop="streetAddress">347 5th Ave #1008
<span<br>itemprop="addressLocality">New York
<span<br>itemprop="addressRegion">NY
<span<br>itemprop="postalCode">10016<div<br>itemprop="brand" itemscope itemtype="http://schema.org/Organization">
---------------------------------------------------------------------------</div<br></span<br></span<br></span<br></span<br></img<>0 -
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 -
Why is our pagerank is still only 3/10?
Hi, Our site https://soundbetter.com has been live for 2 years now, and as of yet we haven't yet been able to get our PageRank above 3/10. We have thousands of unique pages and plenty of original contextual content, we avoid duplicate content best we can, follow google's best practices for site structure, deal with any issues that come up in webmaster tools, have schema.org markup, avoid link spamming, have inbound links from authority sites (though OSE doesn't show most of them for some reason), lots of social shares to our pages and the domain has been owned by us for 12 years. Any thoughts on why we would still have a PR of 3? Thanks for helping
Intermediate & Advanced SEO | | ShaqD0 -
Different domains for multilingual website
Hey guys, A site that I'm currently working on as different domains for each website language. So for example: word1word2.com for the english version word3word4.com for the french version word5word6.com for spanish version .... Is it better to move all of the different languages to the same domain and use subfolders for each language /fr/... Please note that the domains being used bring in organic traffic as well as they are EMDs. Thank You.
Intermediate & Advanced SEO | | BruLee0 -
Schema.org on Youtube iframe embed?
So I've tried scouring the internet on the proper way to markup youtube videos. I know there's the VideoObject propery but that seems to be more made for the old school embed code that looks like this: <embed width="100%" id="video-player-flash" height="100%" type="application/x-shockwave-flash" src="http://s.ytimg.com/yt/swfbin/watch_as3-vflpp9opi.swf" allowscriptaccess="always" allowfullscreen="true" bgcolor="#000000" flashvars="el=embedded&fexp=904001%2C914057%2C918000%2C910206%2C907217%2C907335%2C921602%2C919306%2C922600%2C919316%2C920704%2C912804%2C913542%2C919324%2C912706&is_html5_mobile_device=false&tabsb=1&hl=en_US&eurl=http%3A%2F%2Fwww.dial800.com%2Fblog%2Fvideos%2Fdial800-product-overview-video&iurl=http%3A%2F%2Fi4.ytimg.com%2Fvi%2Fgk1aD9UCKYA%2Fhqdefault.jpg&tspto=12000&probably_logged_in=1&tsp_buffer=10&video_id=gk1aD9UCKYA&tsp_dvrloop=50&sendtmp=1&enablejsapi=1&sk=WZy3rFIXzzhTB_BpmE1p1tTsbxMib1vIC&rel=1&playlist_module=http%3A%2F%2Fs.ytimg.com%2Fyt%2Fswfbin%2Fplaylist_module-vfl3lol2H.swf&jsapicallback=ytPlayerOnYouTubePlayerReady&playerapiid=player1&framer=http%3A%2F%2Fwww.dial800.com%2Fblog%2Fvideos%2Fdial800-product-overview-video"> Do I need to use that code or is it possible to mark it up using just the clean iframe src that youtube provides now?
Intermediate & Advanced SEO | | SirSud0 -
Schema.org and Testimonials
Does anyone know which fields and code are necessary to embed a testimonial into a page using schema.org?
Intermediate & Advanced SEO | | rarbel0