In this episode of Hardcore Marketing (formerly known as Hardcore SEO) Perficient Digital’s Mats Tolander discusses Schema and Structured data. Implementing both are crucial to a sound marketing strategy. As intelligent as search engines are, they only know what information they’re looking at if you tell them what it is. Mats and Eric Enge will tackle these topics and more!
Links Mentioned:
Full Transcript:
Eric: Hi, I’m Eric Enge of Perficient Digital. And today I’m going to talk with Mark Traphagen about Structured Data and Schema and how that should be a part of your website’s strategy. Come join me Mark. Mark, Mark! You’ve changed.
Mats: Well Eric, I’m not Mark. I’m Mats Tolander, Director of Technical SEO at Perficient Digital.
Eric: Mats, what is structured data, how does it help me and how do I add it my web site?
Mats: Structured data is a way to declare what the bits and pieces of content on your web page are about. Are you selling a product? Are you reviewing a book or a movie? Are you promoting a restaurant? Are you showing a video? There are structured data types for all these cases and many, many more. A search-engine optimization benefit of using structured data is that it can result in so-called rich snippets on search engine results pages.
Mats: You are probably familiar with these rating stars, recipe times and other rich snippets that Google sprinkles search engine results pages with. These rich snippets are typically based on structured data.
Eric: So how do you structure the data on your web site?
Mats: Let’s start with a document that has no markup. It’s a plain-text document. Now, let’s add some HTML. By adding HTML we give the document structure. We can distinguish headlines, paragraphs, lists, and other elements and enable a browser to display the document in a way that is richer. We can also add all sorts of styles to make the document a lot prettier and easier on the eye. But even after adding HTML and styles we still aren’t saying anything about what the content is, or is about.
Eric: Can’t a search engine analyze the document and make reasonably good assumptions about the content?
Mats: Yes, but we use structured data to expressly and precisely describe the content, to make it easier for a search engine to understand what the content is and when it might be relevant to a searcher.
Eric: So how do I describe the content as structured data?
Mats: There are different ways. I will focus on Microdata and JSON-LD, using the content types in Schema.org. Microdata uses attributes added to the HTML to structure and describe data. If we add Microdata to the web page we looked at earlier, it could be applied something like this. Here you can see how the address information has been turned into structured data.
The Microdata attributes that we have added to the HTML declares the type of data – postal address – as well as the different pieces of data that make up the address. Now it becomes a lot easier for a search engine to know exactly what the address is for this particular location. Simplistically speaking, structured data consists of two building blocks: types and properties. For example, in schema.org, Product is a type. Offers is a property of type Product.
The information contained in Offers is handled through another type, called Offer. Let’s take a look at this Product and Offer example, which again uses Microdata. As you can see, in this example we invoke type Product. We use property, or itemprop, “name” to describe the name of the Product. Below that is itemprop offers. We declare an itemscope and invoke item type Offer. As you can see, price is nested inside the Offer, which in turn is nested inside the Product.
We have structured our product and pricing data by using the schema.org Product and Offer types. What is nice about Microdata is that you can apply it simply as attributes to HTML tags. The downside is that you’re applying attributes to HTML tags, meaning you have to be careful not to mess up any of the HTML code, as well as making sure you properly nest the structured data within the HTML code.
Eric: What about the other method, JSON-LD?
Mats: JSON-LD stands for JavaScript Object Notation for Linking Data. If you enjoy writing JavaScript, you are likely to prefer JSON-LD over Microdata. Instead of integrating the structured data with the HTML, you simply write a JavaScript that contains the structured data. See how pretty that looks? The disadvantage is that you need to put the content in two places: In the structured data javascript and in the HTML page content.
Eric: If I decide to add structured data to my web site, what are some of the things I should think about?
Mats: After choosing which structured data vocabulary and mark up language to use, there are some mistakes that are easy to make that you want to avoid, when applying schema to your site: Using the wrong property in a content type. For example, using price as a property with type Product, when it should be part of Offer. Failing to associate a property or an entire type with the property or type it is intended to describe.
An example of this is adding a review that is not properly associated with the Product it is reviewing. The result is that it becomes a review about nothing, in terms of structured data. Putting information that isn’t clearly viewable by the user in schema markup. There are exceptions to this rule, but your default question should always be “why am I not showing this information to the user?” If the honest answer involves any form of trickery, then you know better. Improper grouping of data. This is especially common on category pages. Do not group several entities, for example products, under one Product declaration. Instead, declare Product for each individual product.
Similarly, do not add up ratings for different products and mark it as an overall rating for all of the reviewed products. Fortunately, Google has an easy-to-use testing tool that allows you to check your schema mark up before it goes live on your website.
Eric: That’s it for this episode of Hardcore Marketing. Thank you for watching.
Hi Eric;
Thanks this nice session on Structured Data. I would like to know about Data Highlighter too. 🙂
Regards
Miraj Gazi
Good, clear explanation. I use both forms of SD markup, and am always looking to learn more.