UPDATED: APRIL 2019
When it comes to making your on-page SEO as effective as possible, structured data markup (sometimes referred to as ‘Schema markup’ or ‘structured data’) is an under-utilised but potentially powerful tool that can set your website apart from your competitors.
It could be that you’ve heard of structured data/semantic markup, Schema and rich snippets but you’re not sure exactly what we mean by these terms, far less how to implement them.
We’ve put together a beginner’s guide to structured data and Schema made easy. You’ll also find the link to a handy cheat sheet that you can print off and use at your own convenience.
What is structured markup?
Web page features such as reviews, recipes, ratings, events, and product descriptions are easy for human visitors to recognise but search engines can find them harder to decipher. This is where structured markup comes in.
It’s a special language of tags that go into the the HTML code of a web page. These tags tell search engines what specific elements on the page are, as well as what they mean.
How does structured markup help with context?
Language is a tricky thing. If we think about English as a language, for example, there are many words that are spelled the same but have different meanings or sounds. We rely heavily on context to decipher these differences. How is the word being used? What is the sentence about? What is the overall topic of what we’re reading/hearing? Where is the information? These are all questions that we process subconsciously.
Structured markup fulfills the role of creating context for search engines that lack these inherent insights into natural language.
The ever-growing popularity of voice-controlled digital assistants/smart speakers means we should be paying more attention to structured data. These devices are heavily dependent on context. Using this extra layer of information, we can help AI-focused technology to give searchers the best information to meet their needs.
Examples of context
If I put the right structured markup around my name ‘Hazel Jarrett’, I can tell the search engines that an article has been written by me rather than just mentioning me.
Equally, I can help the search engines to understand whether a website about Jaguars relates to the big cats or the cars, or if a review is about a book or the film of a book.
As Schema.org explains it:
“Most webmasters are familiar with HTML tags on their pages. Usually, HTML tags tell the browser how to display the information included in the tag. For example, <h1>Avatar</h1> tells the browser to display the text string “Avatar” in a heading 1 format. However, the HTML tag doesn’t give any information about what that text string means — “Avatar” could refer to the hugely successful 3D movie, or it could refer to a type of profile picture—and this can make it more difficult for search engines to intelligently display relevant content to a user.”
How do search engines use structured data?
Search engines can use structured data to create rich snippets, which are the small ‘extra’ pieces of information that appear in search results. These rich snippets can help searchers find what they’re looking for quickly. They can also give more information about which link in SERPs is best to click on.
To give an example, Hyde Park is famous for its summer events’ calendar. As might be expected, when I ran a search for ‘Hyde Park events’ I found that structured data has been used to give a comprehensive calendar of forthcoming events in the Google SERP:
Visitors now have a shortcut to the events they might be looking for, especially the most immediate.
Let’s look at another example:
Imagine you want to find the best lasagne recipe for tonight’s dinner. You type ‘lasagne recipe’ into Google and, thanks to structured markup, you’re immediately given a recipe in Google’s Featured Snippets box at the top of the page:
Beneath the featured snippet and ‘People also ask’ sections, the SERP features a wide choice of recipes:
Which would you choose?
All but one page have used structured markup to make sure that a picture is included in the search results. Several of the sites have gone one step further and added in star ratings, reviews/votes, preparation and cooking time, and the number of calories per portion, giving lots of extra value before someone even clicks through to the page. Personally, I would click one of the more informative and highly rated listings to find out more – I bet you would too.
As we can see from these two examples, structured markup can and should be an important part of any SEO strategy. Not only does it signpost content to the search engines, but, crucially, it helps searchers make an informed decision about which listing to click on – this should help you improve your conversion rates. In turn, Google is looking to reward high value, customer-focused websites, so may prioritise your listing in SERPs.
Using structured data is a win/win situation.
Is structured data widely used?
It’s hard to track down definitive figures about how many websites use structured data markup in 2019. The most quoted data comes from a study by Searchmetrics conducted in 2014, which states:“We found that domains with schema integrations do in fact rank better by an average of four positions when compared to domains without them. By way of qualification, it should be noted that domains with integrated Schema tags may be generally better optimized than domains without.”
That being said, Searchmetrics found in the same study that only 0.3% of domains currently include Schema integration. This is a clear opportunity to stand out from the crowd – or even make your website visible before the crowd shows up – especially when we consider that Google returns information taken from Schema snippets for nearly 40% of keywords!
A more recent article by Search Engine Journal (2017) estimates that one-third of the crawlable web now uses structured data because big brands have been able to tie its use back to benefits such as more web traffic and higher conversion rates.
What is Schema?
But where does Schema fit into all of this?
Schema.org is a ‘Microdata’ vocabulary, i.e. a series of agreed-upon HTML tags devised by a community of experts that should help us all implement structured data more easily. It is officially supported by Google, Bing, Yahoo! and Yandex, and is Google’s preferred method for structured data if you want rich snippets in your search results.
It’s worth noting that there are types of structured data other than Microdata, e.g. Microformats and RDFa.
If we take a piece of code from the example below, the words ‘itemscope’ and ‘itemtype’ tell websites that the code being used is Microdata. The bit that says ‘http://schema.org/Movie’ tells the search engines that we’ve taken this tag ‘Movie’ from the Schema vocabulary.
Schema is so popular because all of the search engines have agreed to recognise it.
What does Schema markup look like?
In its start-up guide, Schema gives the following example to show a Schema markup in action:
Imagine you have a page about the movie Avatar—a page with a link to a movie trailer, information about the director, and so on. Your HTML code might look something like this:
To begin, identify the section of the page that is “about” the movie Avatar. To do this, add the itemscope element to the HTML tag that encloses information about the item, like this:
By adding itemscope, you are specifying that the HTML contained in the <div>…</div> block is about a particular item.
But it’s not all that helpful to specify that there is an item being discussed without specifying what kind of an item it is. You can specify the type of item using the itemtype attribute immediately after the itemscope
This specifies that the item contained in the div is in fact a Movie, as defined in the schema.org type hierarchy. Item types are provided as URLs, in this case http://schema.org/Movie.
To give the search engines even more insight into what the elements on a web page are about, we can also label the properties of an item by applying the itemprop attribute. Again, here’s Schema’s Avatar example:
From the itemprop tags, we can see in this entry that Avatar is the name of the movie, James Cameron is the director, the genre is Science fiction, and that the URL links to a trailer of the film. You will notice that there are new <span>…</span> tags in the code (highlighted in yellow above) to attach the item properties to specific text on the page.
How do I know what itemtype or itemprop tag to use?
Schema has created a dictionary of item types and properties so, before you markup a page, I would recommend searching Schema for the right tag.
There are different levels of item types. For example, a ‘Thing’ is the broadest and most generic item type you can apply to an element of a web page. Within ‘Thing’, you will find more specific item types, such as: Action, Creative Work, Event, Intangible, Medical Entity, Organisation, Person, Place or Product. Again, within each of these item types, you will find more specific descriptions, such as Organisation>Local Business>Childcare.
Using the right item type can help you get your website listed in targeted searches, attracting website visitors who have a high level of interest in your products or services.
How can I apply a Schema markup to my website?
As we can see from the example above, to implement a Schema markup, it helps if you have some knowledge of HTML. If you work with a web developer, they would be the person best placed to add structured data to the HTML code of your website. However, if you manage your own site, various tools are available to help you add structured data to your web pages. Schema.org also includes some helpful guides and information.
Schema for WordPress websites
If you have a WordPress website, there are some fantastic Schema markup plugins. The free All-in-One Schema.org Rich Snippets plugin lets you apply the main item type and item prop tags via a simple drop-down menu and easy-to-complete field. For example, after creating a new blog post for your website, you would simply select that the item type is an ‘article’ before being given the following form to complete:
Alternatively, click the ‘Add Schema’ button above your article when you’re adding it to your WordPress site and you will be given even more detailed fields. With a recipe, for example, you can add calories, sodium, cooking times, prep times, ingredients, and much more; the same goes for other item types.
Paid-for plugins also exist – Schema.org mentions:
Structured data in Yoast SEO 11.0
The Yoast SEO plugin is one of the most downloaded WordPress plugins of all time; it makes many elements of on-page SEO easy to understand and implement.
It, therefore, deserves a special mention that the latest version of Yoast SEO – 11.0 – features a completely rewritten Schema.org implementation, which you can read more about here.
As an overview, Yoast will automatically generate a great deal of structured data based on the initial settings you apply (e.g. does your site represent a person or an organisation/business?) and the subsequent content you publish. It should now be easier to apply Schema markup for local SEO, e-commerce and news pages, as a few examples.
Yoast has also announced that it’s bringing structured data content blocks to the WordPress block editor in the near future. This means that as you visually build content for how-to guides, FAQs, recipes and job postings, the plugin will automatically generate Schema structured data for the page.
The plugin has certainly not done evolving its Schema.org integration; it recently announced that it has improved applying structured data to videos and images.
If you’re not using the Yoast SEO plugin yet or you have an older version, it’s worth updating it to version 11.0. You can see what structured data search engines see on each page by using the Structured Data Markup Helper.
Schema for non-WordPress sites
If you don’t have a WordPress website, you might want to use Google’s Structured Data Markup Helper to help you with your Schema markup.
When you go into this tool, you will see the following screen:
Simply pick your item type from Articles, Films, Restaurants, etc. and then paste the URL of the relevant web page into the URL field and click ‘Start tagging’.
The tool will generate a view of the web page within the tagging screen. At this stage, you need to highlight the different elements you want to tag – one at a time – and click the most appropriate tag from the options given (see the options circled below):
Once you have tagged all the elements on the page that you want to tag, click ‘Create HTML’. The Structured Data Markup Helper will generate the modified HTML code for that web page. You then need to copy and paste the new code over the existing code for your site.
To check everything is working properly, you should then go to the Structured Data Testing Tool to see what tags Google can see.
Where this may be more challenging is if your website was built by an external web developer and you have limited access to the backend of your site. In this case, it would be worth approaching the web developer about how you can apply a Schema markup. If you are about to have a website built, I would recommend discussing Schema markup from the outset to ensure that it is incorporated into your web content in the appropriate places.
Is there anything that you shouldn’t markup with Schema?
You don’t need to apply structured data markups to every element of your website. Instead, think about what your potential customers might find it helpful. What would influence them to clickthrough? Which details would add value? How can you answer what they’re looking for in a SERP listing?
By keeping your potential customers centre-stage, you can create a Schema markup that attracts clickthroughs and makes sense to the major search engines.
Google advises that you only apply Schema markups to elements of the page that are visible to human visitors. Cloaking or hiding content and applying structured data to information visitors can’t see is a big no-no.
The contents of the Schema markup should also reflect what people will actually see if they go to the page. For example, don’t show star ratings or reviews in Schema if visitors won’t find them when they click through via Google.
Finally, Google won’t generate rich snippets for time-sensitive pages, such as landing pages with an offer deadline, so don’t worry about Schema markup for those.
Want to know more about Schema markups and Schema.org? Check out the following guides and tools:
- Internet Marketing Ninjas Schema Guide
- How to boost your SEO by using Schema markup – Neil Patel
- Econsultancy’s ‘What is Schema?’ Guide
- Rich Snippets: Everything You Need to Know – Built Visible
- Moz Guide to Schema.org
- Schema Examples from Moz
- Structured data with Schema.org by Yoast
- A story about Schema, structured data and robots
Schema cheat sheet
We’ve put together a Schema cheatsheet to give you an at-a-glance guide to some of the most common Schema tags. Click here to download your copy.
Hopefully, I’ve pulled back the curtain on some of the mysteries surrounding Schema markup. It’s clearly an evolving area, especially with the rise of digital assistants.
Do you use Schema markup yet? Has this article persuaded you that you should? I’d love to hear your thoughts in the Comments below.
If you’ve found this article helpful, can I ask you to use the social buttons below to spread the word? Thank you, it’s truly appreciated.