Structured data with Schema.org: the ultimate guide

Learn how to use Schema.org to improve your online presence with our comprehensive guide to structured data. Understand how Schema.org can change how your site communicates with search engines like Google. See how it enhances the display of your pages for products, reviews, events, and recipes. Find out how to achieve rich results like snippets, interactive mobile results, voice-activated actions, or inclusion in Google’s Knowledge Graph. Structured data can boost your online exposure and engagement.

Table of contents

What is structured data?

Structured data is a way of describing your website to make it easier for search engines to understand. You need a so-called vocabulary to make it work, and the one used by the big search engines is Schema.org. Schema.org provides a series of tags and properties to describe your products, reviews, local business listings, job postings, etc., in detail.

The major search engines, Google, Bing, Yandex, and Yahoo, developed this vocabulary to reach a shared language and better understand websites. Search engines use it today, from fact-checking content to listing job postings!

If added well, search engines can use the applied structured data to better understand your page’s contents. As a result, your site might be presented better in search results, for example, in the form of rich results like rich snippets. However, there are no guarantees you’ll get rich results — that’s up to the search engines.

Read more: Schema – why you NEED Yoast SEO to do it right! »

A simple example of structured data

Below is a simple example of structured data using Schema.org in JSON-LD format. This is a basic schema for a product with review properties. This code tells search engines that the page is a product (Product); it provides the name and description of the product, pricing information, the URL, plus product ratings and reviews. This allows search engines to understand your products and present your content in search results.

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Product Title</title>
    <meta name="description" content="Brief description of the product">
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "name": "Product Name",
      "image": "https://www.example.com/product-image.jpg",
      "description": "Product description",
      "brand": {
         "@type": "Brand",
         "name": "Brand Name"
      },
      "offers": {
        "@type": "Offer",
        "priceCurrency": "USD",
        "price": "99.99"
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.5",
        "reviewCount": "11"
      },
      "review": {
        "@type": "Review",
        "reviewRating": {
          "@type": "Rating",
          "ratingValue": "4",
          "bestRating": "5"
        },
        "author": {
          "@type": "Person",
          "name": "Reviewer's Name"
        },
        "reviewBody": "Review text goes here"
      }
    }
    </script>
</head>
<body>
    <!-- Your webpage content goes here -->
</body>
</html>

Why do you need structured data?

Structured data, especially with Schema.org, makes your site clear to search engines. It explains your products, reviews, events, and job postings in a way search engines easily grasp. Structured data’s strength is its precise, detailed portrayal of your site’s content. Search engines no longer have to guess; structured data offers clear insights into each part of your site.

This clarity is essential because it shows how different elements of your website connect. It gives search engines a deeper understanding of your content and its relationships. Think of it as a map that highlights the connections and significance of each piece of content.

Clarity means visibility, so structured data has become essential. Using it aligns with how search engines process information, improving your site’s clarity and drawing more organic traffic.

Is structured data important for SEO?

Using structured data with Schema.org can strategically enhance your website’s SEO. While it might not directly boost rankings, it enriches search results, making them more attractive to potential visitors.

Think of your search result as a movie trailer. It grabs attention and encourages viewers to see more. An improved search result with structured data works the same way. It offers searchers a detailed preview of your site, increasing the chances they’ll choose it from many options. If your site meets the expectations set by this enhanced listing, you’ve gained trust as a reliable source. This user satisfaction often leads to a lower bounce rate, showing search engines like Google that your site is credible.

As structured data becomes more widespread, now is an excellent time to outpace competitors. It’s about leading the SEO race, not just keeping up. Our guide on structured data provides practical tips and advice to help you maximize your site’s potential with this tool.

Structured data can lead to rich results

By describing your site for search engines, you allow them to do exciting things with your content. Schema.org and its support are constantly developing, improving, and expanding. As structured data forms the basis for many new developments in the SEO world, there will be more shortly. Below is an overview of the rich search results available; examples are in Google’s Search Gallery. At the moment, these are a couple of the available rich results:

ArticleFAQQ&A
BookHome activitiesRecipe
BreadcrumbsHow-toReview snippet
CarouselImage metadataSitelinks searchbox
CourseJob postingSoftware app
Critic reviewLearning videoSpeakable
DatasetLocal businessSubscription and paywalled content
Education Q&ALogoVideo
Employer aggregate ratingMath solver
Estimated salaryMovie
EventPractice problem
Fact checkProduct

The rich results formerly known as rich snippets

Rich results are dynamic, engaging, and information-packed search result listings. They are much more than the standard, black-line meta description text on a search engine results page. Using the power of rich results enriches search listings with additional information and interactive functionalities.

Some listings offer extra information, like star ratings or product details

Consider rich results as added-value details that elevate a user’s search experience. From showing critical product data such as pricing and reviews to practical navigational tools like breadcrumbs or in-site search functions, rich results make your listing stand out.

Where a conventional search result offers a glimpse into your site, a rich result is almost like rolling out a red carpet. You’ll show users a premium overview of what they can expect when they click through. These enriched listings can boost click-through rates (CTR) and user interaction, providing an SEO advantage that improves your site’s visibility and drives more traffic.

Keep reading: Rich snippets everywhere »

Rich results on mobile

Rich results are especially visible in mobile searches, which are becoming more prevalent and impactful. Mobile search results for specific searches for local restaurants, recipes, movies, how-tos, and courses benefit from specialized treatment.

Tasty, right?

They are often presented in a touch-friendly, user-engaging, swipeable manner, making rich results intuitive and streamlined on mobile devices. This format, frequently called the carousel, enhances the user experience and the ease of information access.

Google strongly focuses on creating rich, interactive features in search results. Thanks to Google’s innovations, you can book a table at a restaurant, purchase movie tickets, find cheesecake recipes, or even arrange flights directly from the search results. These developments have transformed the search engine results page into a dynamic tool that touches many areas of daily life, with structured data playing a key role.

Structured data and rich results allow your website to present more than just links and text, enhancing user visibility. This approach significantly boosts user experience, increasing your site’s visibility and encouraging interaction. While many websites are still early in adopting these features, using them now offers a valuable chance to stand out. We’re only starting to explore the possibilities they offer.

Knowledge Graph Panel

When you search Google, you’ll commonly see a large box of detailed information on the right side. This dynamic feature, Google’s Knowledge Graph Panel, provides an enriched snapshot of information tied to your specific search.

A knowledge panel

So, how does Google find this information? It evaluates related content about the subject in question, with structured data from a website being a significant resource. This examination of interconnected data helps paint a more holistic picture of the search subject.

Imagine you’re a verified business or an authority on a particular subject. The Knowledge Graph Panel can showcase your name, logo, and social media profiles. This visibility warrants a sense of prestige and credibility conferred by Google.

The Knowledge Graph Panel offers more than just basic information. Connecting to related content builds a detailed network that encourages users to explore their interests further. This improves user experience and keeps people engaged with Google services, benefiting users and the platform.

Additionally, the Knowledge Graph impacts SEO strategies. It acts as a spotlight on your site’s relevance and authority in search results. This highlights the role of structured data in enhancing a website’s online presence and shows how well-optimized, quality content can lead to improved search outcomes.

This might be a sneaky addition because featured snippets are rich results, but they do not get their content from structured data. A featured snippet answers a search question directly in the search results but uses regular content from a web page to do so.

A featured snippet for the search term [site structure]

Does structured data work on mobile?

Yes, the results of implementing structured data work everywhere. Mobile is one of the places where the results of a Schema implementation are most visible.

If a page meets the criteria Google sets, you can now book movie tickets or reserve a table at a restaurant directly from the search results. If you implement structured data correctly, you could also be eligible for several interactive extras on the mobile search results pages.

Different kinds of structured data

Sitelinks Searchbox

A Searchbox is where the internal search engine of a site is presented within the search results of Google. Google uses Schema.org code for this as well. Yoast SEO has support for this built in, and there’s more info in our Knowledge Base.

If you look at the Schema.org website, you’ll notice a lot of information you could add to your site as structured data. Not everything is relevant, though. Before implementing structured data, you need to know what you should markup. Do you have a product in an online store? Do you own a restaurant? Or do you have a local business providing services to the community? Or a site with your favorite cheesecake recipes? Whichever it is, you need to know what you want to do and explore the possibilities. Don’t forget to check the documentation by search engines to understand what they need from you.

Yoast SEO does a lot of these

Yoast SEO has Schema controls, which help translate your content into a language search engines understand and appreciate. It automatically generates structured data for your site with sensible default settings, which you can manually adjust based on over twenty supported content types. This control over your Schema settings increases your chance of obtaining those rich results.

For instance, our Schema tab lets you specify your contact page as a ContactPage, removing potential ambiguities for search engines. Beyond this, Yoast SEO makes automatic connections that guide search engines in deciphering the meaning of your site. We also provide additional features that enhance Schema elements and center around content specificity, all contributing to a cohesive structured data strategy.

Yoast SEO helps you fine-tune your schema structured data settings per page

Creative works

The Creative Work group encompasses all creative things produced by someone or something. You’ll find the most common ones below, but the list is much longer. You’ll also find properties for sculptures, games, conversations, software applications, visual artworks, and much more. However, most of these properties don’t have a rich presentation in search engine results, so they are less valuable. But, as mentioned earlier, if your site has items in the categories below, mark them up with Schema.org.

Articles

An article could be a news item or part of an investigative report. You can distinguish between a news article, a tech article, or even a blog post.

Books

A book is a book, whether in paper form or digital form, as an eBook. You can mark up every property type, from the author who wrote it to any awards it has won.

Courses

Courses can also appear as a rich result.

Datasets

Google understands structured data for datasets and can use this to help surface and understand these datasets better. Find out more on Google’s developer pages.

FAQ pages

Make a great FAQ page to answer your customers’ frequently asked questions. Yoast SEO helps you turn those FAQs into something Google can understand properly, with the Schema structured data FAQ content block.

How-tos

You can markup your how-to articles with HowTo structured data. Our structured data content block for how-tos is in the WordPress block editor. By following a step-by-step process, users can get a specific task done.

Image metadata

By incorporating detailed image metadata, Google Images can provide a more comprehensive understanding of the image, including details about the creator, usage permissions, and acknowledgment specifics.

Music

Music also gets the structured data treatment. There are a couple of Schema.orgs of interest for music, like MusicRecording, MusicAlbum, MusicEvent, and MusicGroup.

Q&A pages

Question and answer pages are eligible for rich results as well. According to Google, Q&A pages differ from FAQ pages, where you can find multiple questions and answers on a page — more in Google’s Q&A page documentation. Use the Yoast SEO structured data content blocks to provide structured data for your FAQ pages.

Recipes

Adding Recipe structured data to the recipes on your cooking website lets you get your recipes featured directly in search results. Moreover, with mobile rich results, recipes look great on mobile featuring great images — if you add them. And that’s not all, because you can now send your recipes to Google Home and get Assistant to speak it out loud. How cool is that?

Speakable

Google is currently testing the implementation of speakable Schema.org. With this code, you can tell a search engine that a piece of content is specially written to be spoken aloud by digital assistants like Alexa, Siri, Cortana, or Google Assistant.

TV & Movies

Movies and TV shows get their piece of structured data as well. Searching for a movie in search engines will yield a rich result with reviews, poster art, cast information, and even the ability to order tickets for a showing directly. You can even mark up lists of the best movies ever made or your favorite TV shows.

Videos

It’s possible to do all kinds of interesting things with video. Google, in particular, is working on new ways to display videos in the search results.

Commerce

There is also structured data for commercial goals. Here, you’ll find a couple of important ones:

Events

Marking up your event listings with the correct Event Schema.org, might lead to search engines showing your events directly in the search results. This is a must-have if you own a nightclub, a venue, or any business regularly organizing events.

Businesses and organizations

If you make money with your website, you might own a business. If you’re a site owner or work on a company site, you’ll find the business and organization Schema.orgs interesting. Almost every site can benefit from the correct business Schema.org. If you do it well, you could get a nice Knowledge Graph or another type of rich listing in the search engines. You can even add special structured data for your contact details so customers can contact you directly from the search results. For local businesses, our Local SEO plugin helps you take care of all your local structured data needs.

Read on: Local business listings with Schema.org and JSON-LD »

Job Postings

Have job postings on your site? Mark them up with the job postings structured data to have them show up nicely in Google. We use this on all our Yoast job postings as well.

Products

Schema.org for products is almost as important as the one for businesses and organizations. Using Product Schema.org; you can give your products the extra data search engines need to give you rich snippets, for example. Consider all the search results with added information, like pricing, reviews, availability, etc. This should be a significant part of your structured data strategy if you have products. Remember to mark up your product images. Our WooCommerce SEO and Shopify SEO products output proper product structured data.

Keep on reading: Rich snippets for product listings with Schema.org »

Reviews

Reviews and ratings play an important role in today’s search process. Businesses, service providers, and online stores all use reviews to attract more customers and show how trustworthy their offer is. Getting those five stars in search engines might be the missing link to creating a successful business.

Read more: Grow your business with ratings and reviews »

Actions for voice assistants

Voice assistants are interesting, but they have yet to reach the adoption levels they were predicted to have. Still, there’s stuff happening on this front if you see it as part of the conversational search movement. Take recipes, for instance; you can send a recipe from the search results to your Google Home to read aloud while cooking. These are called Actions, and there are a whole bunch of them. If you want your recipes to appear in the Google Assistant library, add a specific structured data set and adhere to additional rules. You can find more on that on the Creating a recipe action page. Visit Google’s Assistant site to get a feel for what’s possible (a lot!).

Google Assistant uses a lot of structured data to understand your content

The technical details

To start marking up your pages, you must understand how Schema.org works. If you look closely at the full specs on Schema.org, you’ll see a strict hierarchy in the vocabulary. Everything is connected, just like everything is connected on your pages. Scroll through the list to see all the options, and note the ones you need.

Google Search Console

If you need to check how your structured data is performing in Google, check your Search Console. Find the structured data insights under the Enhancement tab and you’ll see all the pages that have structured data, plus an overview of pages that give errors, if any.Read our Beginner’s guide for Search Console for more info.

Let’s look at the structure. A Schema.org implementation starts with a Thing, the most generic type of item. A Thing could be a more specific type of item, for instance, a Creative Work, an Event, Organization, Person, Place, or Product.

For example, a movie is a “Thing” and a “Creative Work”, which falls under the category “Movie”. You can add a lot of properties to this, like a “Description”, a “Director”, an “Actor”, a poster “Image”, “Duration” or “Genre”. There are loads to add, so you can get as specific as you want. However, don’t overdo it since not all search engines use every property – at least not yet. For instance, you should look at the specifications in Google’s documentation to see which properties are required and which are recommended.

A sample Schema.org structure

If we put what we know now in a hierarchy, this is what you will end up with:

  • Thing
    • Creative Work
      • Movie
        • Description (type: text)
        • Director (type: person)
        • Actor (type: person)
        • Image (type: ImageObject or URL)
        • etc.

If it would be a local business, you could use something like this:

  • Thing
    • Organization (or Place)
      • LocalBusiness
        • Dentist
          • Name
          • Address
          • Email
          • Logo
          • Review
          • etc.

For local businesses, you could pick a more specific type of business. This makes it easier for search engines to determine what kind of business you own. There are hundreds of types of local businesses, but your business might not fit one of the descriptions. Using the Product Types Ontology you can get more specific information if your listing is too broad.

In the local business example, you’ll see that Google lists several required properties, like your business’s NAP (Name and Phone) details. There are also recommended properties, like URLs, geo-coordinates, opening hours, etc. Try to fill out as many of these as possible because search engines will only give you the whole presentation you want. You’ll find our Local SEO plugin very helpful if you need help with your local business markup.

What do you need to describe for search engines?

Looking at Schema.org for the first time is daunting. The list is enormous, and the possibilities are endless, so it’s easy to become overwhelmed. To get over this, you need to go back to basics. Think about your site, business, or product and write down the specifications and properties you feel are necessary, then work up. Also, Yoast SEO covers the most essential properties automatically — so there is no need to worry about those if your plugin is configured correctly!

Having said that, there are a couple of sections you should prioritize in your plan to add structured data to your site. If you start with these three, you’ll have the basics covered, and then you can build on that. You should start with structured data for your business details, products, and reviews. These will have the biggest effect in the short term.

How to implement structured data

Don’t be frightened, but here comes the technical part of the story. Before we do that, we’d like to remind you that Yoast SEO comes with an excellent structured data implementation. It’ll automatically handle most sites’ most pressing structured data needs. Of course, as mentioned below, you can extend our structured data framework as your needs become bigger.

Do the Yoast SEO configuration and get your site’s structured data set up in a few clicks! The configuration is available for all Yoast SEO users to help you get your plugin configured correctly. It’s quick, it’s easy, and doing it will pay off. Plus, if you’re using the new block editor in WordPress you can also add structured data to your FAQ pages and how-to articles using our structured data content blocks.

Thanks to JSON-LD, there’s nothing scary about adding the data to your pages anymore. This JavaScript-based data format makes it much easier to add structured data since it forms a block of code and is no longer embedded in the HTML of your page. This makes it easier to write and maintain, plus both humans and machines better understand it. If you need help implementing JSON-LD structured data, you can enroll in our free Structured data for beginners course, our Understanding structured data course or follow a high-level course on Google’s Codelabs.

Structured data with JSON-LD

JSON-LD is the preferred method of adding structured data to your site. However, not all search engines have adopted it quickly — Bing was the last holdout. Thankfully, Microsoft came around in August 2018 and now supports this as the most efficient method.

Since Yoast SEO 11.0, the plugin comes with a fully-featured Schema.org implementation. Yoast SEO now creates a structured data graph for every page on your site, interconnecting everything. While working on this, we’ve also created complete, detailed documentation on Schema, including a specification for integrating structured data. You’ll find some example graphs for various standard pages on your site.

The old ways: RFDa and Microdata

The classic way of writing structured data for inclusion on your pages involves directly embedding it into your HTML. This process is inefficient and error-prone, which is much of the reason why the uptake of Schema.org hasn’t been swift. Writing and maintaining it via RDFa or Microdata is a pain. Believe us, try to do as much as you can in JSON-LD.

Microdata needs itemprops to function, so everything has to be inline coded. You can instantly see how that makes it hard to read, write and edit.

Tools for working with structured data

Yoast SEO automatically handles much of the structured data in the background. You could extend our Schema framework, of course — see the next chapter –, but if adding code by hand seems scary, you could try some of the tools listed below. If you need help with how to proceed, ask your web developer for help. They will fix this for you in a couple of minutes.

The Yoast SEO Schema structured data framework

Implementing structured data has always been challenging. Also, the results of most of those implementations often needed improvement. At Yoast, we set out to enhance the Schema output by millions of sites. For this, we built a Schema framework — ready to be adapted and extended by anyone. We combined all those loose bits and pieces of structured data that appear on many sites, improved these, and put them in a graph. By interconnecting all these bits, we offer search engines all your connections on a silver platter.

See this video for more background on the schema graph.

Of course, there’s a lot more to it. We can also extend Yoast SEO output by adding specific Schema pieces, like how-tos or FAQs. We built structured data content blocks for use in the WordPress block editor. We’ve also enabled other WordPress plugins to integrate with our structured data framework, like Easy Digital Downloads, The Events Calendar, Seriously Simple Podcasting, and WP Recipe Maker, with more to come. Together, these help you remove barriers for search engines and users, as it has always been challenging to work with structured data.

Expand and improve your structured data implementation

You’ll need to follow a structured and focused approach to effectively implement and enhance Schema.org markup on your website. This includes understanding the key concepts, identifying your goals, leveraging the right tools, and regularly reviewing your strategy. Here’s a guide on how you can do this:

  1. Understanding Schema.org Markup: First, you need to understand what Schema.org markup is and why it’s crucial for your SEO strategy. Yoast’s developer portal provides a detailed insight into the functional approach of constructing Schema.org markup. This will help you to comprehend its importance in generating rich results on search engines.
  2. Selecting the right format: Choosing the right format for your structured data is critically important. Yoast’s approach recommends JSON-LD as the preferred format for structured markup. According to their Technology and Approach page, JSON-LD provides usability and efficiency in conveying structured information, making it a recommended format by major search engines, including Google.
  3. Integrating with Yoast’s structured data framework: Our structured data framework allows you to seamlessly add Schema.org markup to your web pages. Yoast’s Schema Integration Guidelines provide an easy and beneficial way to integrate Schema.org markup, optimize communication with search engines, and potentially improve SEO performance.
  4. Reviewing and enhancing your implementation: To keep your structured data markup implementation effective, it is advisable to review and enhance it regularly. This helps identify potential issues and presents opportunities to improve your existing markup for better SEO performance.

Read up

By following the guidelines and adopting a comprehensive approach, you can successfully get structured data on your pages and enhance the effectiveness of your schema.org markup implementation for a robust SEO performance. Read the Yoast SEO Schema documentation to learn how Yoast SEO works with structured data, how you can extend it via an API, and how you can integrate it into your work.

Several WordPress plugins already integrate their structured data into the Yoast SEO graph

Keep reading: Open-source software, open Schema protocol! »

External links

Most search engines have their developer center where you can find more information on the inner workings of their structured data implementations. You can read these to see what works and what doesn’t. It would be best to stick to their rules because a bad Schema.org implementation could lead to a penalty. Always check your code in the structured data test tool to see if it’s correct. Fix errors and regularly maintain the code on your site to see if it is still up to scratch.

In the end

You can’t run away from structured data anymore. If your site means anything to you, you should look into it and figure out the best way to use Schema.org. Still need some help? Read more on how Yoast SEO makes it easy for you. Or check out our digital story on rich results, structured data and Schema, or take our free structured data for beginner’s online training course. If implemented correctly, it can do great things for your site, now and in the future. Search engines are constantly developing new ways to present search results, and more often than not, they use Schema.org data.

Adding structured data to your site is an essential part of technical SEO. If you’re wondering how fit your site’s overall technical SEO is, take our technical SEO fitness quiz to find out. This quiz helps you figure out what you can still work on!

Read on: How to check the performance of your rich results in Google Search Console »

Coming up next!


4 Responses to Structured data with Schema.org: the ultimate guide

  1. Organic Products All
    Organic Products All  • 1 year ago

    I would love for you to include the event schema and possibly a block to make my posts about events. I am currently using another plugin just for that feature.

  2. NFT-website-development
    NFT-website-development  • 1 year ago

    I would greatly appreciate it if you could incorporate the event schema and, if feasible, integrate a dedicated section for my posts concerning events. At present, I rely on an alternative plugin solely to accommodate this function. Would you kindly contemplate the inclusion of options related to event schema? Your consideration is highly valued. Thank you.

  3. Ali
    Ali  • 3 years ago

    I would love for you to include the event schema and possibly a block to make my posts about events. I am currently using another plugin just for that feature. Please would you consider adding event schema options. Thank you

    • Camille Cunningham
      Camille Cunningham  • 3 years ago

      Hi Ali! Thanks for your suggestion, I will pass it on to my colleagues :)