What is structured data and schema.org?

structured data & schema.org

What is structured data?

Structured data is, roughly, a bunch of tags allocated in a webpage’s source code that describe its content in an organised way.  You as a user don’t notice anything, but all of this structured data helps the robots from search engines know and understand its structure and content. Then, the way a Search Engine will index this page becomes more predictable.

Isn’t it true that it’s always easier to find our stuff when we are organised? Well, structured data is the same, the more organised and predictable our content is, the easier search engines find, understand and classify it. This is when semantic search makes sense, enabling Google to find us not only by a keyword, but also for semantically related terms. This better understanding of a webpage makes the search results more relevant.

Imagine a library when all the books are placed on book shelves, with neither tags nor an index. Wouldn’t it be a nightmare to quickly understand what they are about? The structured data would be like the index and tags for the robots that crawl your content.

How can Search Engines understand your structured data?

With a large collection of pieces of code called Schema.org, supported by these Search Engines.


What is Schema.org?

Schema.org was something that Google, Yahoo and Bing started together in 2011 to help webmasters by keeping a consistency between the data from different Search Engines.

Schema org is a collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet, on web pages, in email messages, and beyond. This universal markup language allows webmasters to label and enrich the content from their websites, enhancing the understanding of Search Engines and user experience.

The Schema markup consists in a bunch of HTML tags merged in the source code of your website, describing the content, structuring it with an enriched semantic language. Thus, the Search Engines like Google can understand it, and then show it in the search results, which would benefit our visibility and our organic rankings.

Schema offers around 100 different schemas for semantic tagging, used to create rich snippets. This snippets are obtained from specific microdata for every type of content (films, products, books, restaurants, places, events, reviews…)


Other benefits of Structured Data Markup

Apart of the main benefit of helping the Search Engines’ robots understand the structure of your content, this is another important benefit.

Google Rich Snippets (Rich Results)

A Snippet is the title and the description you find in a regular search result.rich snippet example - google pixel

With a proper structured data markup, you snippets could be improved and transformed into Rich Snippets, currently renamed as “Rich Result” by Google.

Rich snippets are the additional lines of information underneath search results; these often consist of breadcrumb links, product information, prices or reviews. Rich snippets are part of rich results; the catch-all term search engines use to describe parts of the search results that have a highlighted presentation. Yoast dixit.

It’s fair to point out that Google would have the last word on deciding how to show them, even though you implemented it perfectly.


Rich Snippets example

Here are a couple of snippets showed by Google for the query “hamburger recipe”. Which one would grab your attention if you were searching for it?

rich snippet example

Huge difference, isn’t it?


How do Structured Data & Schema Help with SEO?

As we’ve already seen, Structured Data won’t have a direct impact of your content’s SEO performance, as it is not a ranking signal. But it is also clear that a proper markup will help Google understand what your content is about and it will improve the user experience in your website. So, you may want to include Structure Data in your SEO campaigns.

If Google understands your content, it might show rich snippets

As we saw, this may boost the chances of being clicked and the relevance of these clicks.

Thus, these relevant visits would spend more time in your website as they might find what they were looking for.

Besides, showing more information in SERP might reduce significantly the bounce rate, as it’s possible to have more knowledge about what content you will find before clicking the snippet. Furthermore, if our content is relevant and interesting for the users, they’ll probably not return to the search engine to continue their search within just a few seconds.

And all of these factors, showing good user behaviour, could definitely positively affect your rankings.


How to implement Structured Data with Schema.org

For the structured data implementation we could go different ways. Some of them follow Schema.org and others not. I am going to talk only about the ways that follow Schema.org, which is a standard used by the main Search Engines.

Source code without microdata – example

<p><strong>Stay in touch</strong></p>


<li style="font-size:14px;">

<span>Web Behaviour Specialists</span>

<div>100 Borough High Street</div>

<span> SE1 1LB</span>

<span>London </span>

<span>United Kingdom</span>

<span> 44 (0) 203 766 0853</span>

<a href="mailto: info@web-behaviour.com"> info@web-behaviour.com</a>



Microdata method

This is a clear and easy example of microdata without and with the markup optimised for a local business (I’ve used the WBS details not to have to invent it).

Structured data with Schema.org

<p><strong> Stay in touch</strong></p>


<li style="font-size:14px;" itemscope itemtype="http://schema.org/LocalBusiness">

<span itemprop="name"> Web Behaviour Specialists </span>

<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">

<div itemprop="streetAddress">3 Lower Thames Street</div>

<span itemprop="postalCode">EC3R 6HD </span>

<span itemprop="addressLocality">London</span>

<span itemprop="addressCountry">United Kingdom</span>


<span itemprop="telephone" class="paint-accent-color">44 (0) 203 766 0853</span>

<a itemprop="email" class="paint-accent-color" href="mailto: info@web-behaviour.com">info@web-behaviour.com</a><br/>

<meta content="http://web-behaviour.com/wp-content/uploads/2017/02/logo_wbs-1-1.png" itemprop="image">



This code is indicating we are using the “local business schema”, including the business name, address and contact info.

The used labels are:

  •       Itemscope – It says that something (an item) is included inside the block <li>
  •       Itemtype – It says that this “something” is a local business and an address.
  •       Itemprop – It says the features (name, street, image, phone number…).

JSON-LD method

JSON-LD means JavaScript Object Notation for Linked Data, and became an official Web Standard in 2014.

Structured data with JSON-LD

<script type="application/ld+json">


"@context": "http://schema.org",

"@type": "LocalBusiness",

"image": "http://web-behaviour.com/wp-content/uploads/2017/02/logo_wbs-1-1.png",

"name": " Web Behaviour Specialists",

"address": {

"@type": "PostalAddress",

"streetAddress": "3 Lower Thames Street",

"addressLocality": "London",

"addressRegion": "Greater london",

"postalCode": "EC3R 6HD ",

"addressCountry": " United Kingdom "


"url": " http://www.web-behaviour.com/about-us/",

"telephone": "44 (0) 203 766 0853",

"email": " info@web-behaviour.com "



This is a fast pace method, easier to implement than microdata, but in webs with big content to mark up the loading speed could be affected, given that JSON-LD requires repeating the content to be marked up.

Besides, JSON-LD is the method recommended by Google, but neither Google nor Bing fully understand it. However, being recommended by Google is a clear signal on what to use where possible.

How to Markup Structured Data in Google Search Console

When all of this technical stuff from structured data scares you, you may prefer to markup your content via Google Search Console. It is not the most powerful way to do it, but yet the easiest.

Here you have a brief “how to” or tutorial to markup your content:

  1. Go to the GSC’s profile of the website to add structured data.
  2. Click on Search Appearance – Data Highlighter
  3. Click on “Start Highlighting”data data highlighter webmaster tools
  4. A new window will pop up, where you will fill with:

data highlighter 1 GSC

The URL you want to markup

The kind of content to markup (the entities to markup will be different depending on what you select)

Choose if you want to markup only the ‘typed URL’ or ‘this URL and other similar’. E.g. If you want to markup the products from an ecommerce site, you may want to choose “tag this page and others like this”. Then, you won’t need to markup all the product pages one by one. But if you want to markup the data from a local business (Local SEO purpose), choose “tag just this page”.

Then click “ok”

If we choose to tag just a page

A new page will pop up to do the markup. You will select with the mouse the element we want to markup and once selected, it will be shown in the right column.

Schema markup of an article

If we choose to tag a page and other similar

Then, a new window will pop up, containing the first page to markup and a time line in the top. You will have to markup all the data we can (the same way than we already saw), and click on “done” to go to the next page.

There, pages with initially the same microdata will be shown automatically. If you are not happy with Google’s detection, you could create your custom page set .

markup via GSC


For this example, we created a new page set with all the blog posts we have.

Once on the 3rd step, you will have to check the suggested tags, fixing any mistakes. After the check, click remove page to discard it in case you consider that it doesn’t match the set, or click “next” to check more pages from the set.

The last step is a final check. If everything is ok, then you can edit it (click the pencil). Click “Publish” to finally upload the markup of your pages.


How to check the structured data markup?

The data markup’s syntax is complex and it is not difficult to make mistakes, mainly if you typed the code manually. Luckily, Google has a tool to check the markup, either JSON-LD or Microdata.

The tool is easy to use, you just have to input an URL or a piece of code to be checked.

Run the test and check your pages.

Data will become available as Google recrawls your site.


Juan Álvarez

0203 766 0853 Send Us an Email