What is JSON-LD, How Does it Apply to SEO?

written by Janet L Bartoli | Technical SEO

May 2, 2019

In the world of technical SEO you may run across something known as JSON LD. I’ve worked with loads of SEOs who don’t either realize what and why this is something they should know in their day to day SEO work, or have never understand the basic concept of JSON LD. 

I decided to dig into this a bit further and help those less familiar become more familiar and apply it to their SEO work.

JSON-LD stands for JavaScript Object Notation for linked data. It offers a simpler means to create machine readable data from sites to promote search results. Google uses structured data it finds throughout the web to understand the content on a page. In a JSON-LD structured data snippet - you could include things like event, recipes, reviews and other content you’re interested in promoting.

What are the technical guidelines around JSON-LD?

Google has very nicely outlined the technical quality guidelines around how to properly implement and use JSON-LD - here’s where you can find those guidelines.

Something most SEOs won’t inherently realize is that these are guidelines for eligibility for inclusion in Google search results, but Google does not guarantee your structured data will show up in search results even if it’s marked up correctly. 

Like other SEO guidelines, this is also a best practice that should be applied where relevant. 

schema.org has been recommending the use of JSON-LD since 2013 and not that much later on, Google decided to jump onboard. Also, similarly to other SEO best practices, don’t use structured data to deceive, or mislead visitors or using things like fake reviews, impersonating a person, organization or anything that may seem obviously illegal.

 There are three Google supported formats you should be familiar with:

  1. JSON-LD (Recommended)
  2. Microdata
  3. RDFa





JavaScript notation embedded in a <script> tag in the page head or body. The markup is not interleaved with the user-visible text, which makes nested data items easier to express, such as the Country of a PostalAddress of a MusicVenue of an Event. Also, Google can read JSON-LD data when it is dynamically injected into the page's contents, such as by JavaScript code or embedded widgets in your content management system.


An open-community HTML specification used to nest structured data within HTML content. Like RDFa, it uses HTML tag attributes to name the properties you want to expose as structured data. It is typically used in the page body, but can be used in the head.


An HTML5 extension that supports linked data by introducing HTML tag attributes that correspond to the user-visible content that you want to describe for search engines. RDFa is commonly used in both the head and body sections of the HTML page.

The following webpage schema markup types includes:


checkout page

collection page



There are many various types of schema markup tags available to choose from and having a solid schema markup strategy for your site is important. 

Start by visiting schema.org - make sure you become familiar with the various types found at https://schema.org/docs/full.html  Run down through that list and take note of all that apply to your site, and the business. You might want to establish a separate document to refer your development team to in helping outline all the schema markup and which pages within your site you’d apply them to. 

Does Bing Support JSON-LD? 

As of March 2018, Bing does now support JSON-LD for Schema. They decided to support based on the popularity and preference of most developers. Not only does Bing support JSON, but if you work internationally, Yandex is also supporting JSON-LD.  Do realize that the major search engines: Google, Bing, Yahoo, Yandex all support schema markup.

How Do I Add Structured Data Markup?

The process of creating JSON-LD structured data markup is dependent on one’s comfort with the Schema.org vocabulary and the JSON-LD syntax.

I’ve created a process for a person newer to JSON-LD and schema.org to create markups, as they develop a much deeper level of understanding.

You should be able to answer

  1. What is it that you’d like to markup? Making sure to determine that you can markup the content with schema.org vocabulary 
  2.  What do you want to markup? Avoid marking content up for the sake of marking up content. Here’s where you should refer to the resources on markups Google supports. 
  3.  If you are using markup Google is explicitly using via resources page, then find the specific documentation and any examples Google provides
  4. Don’t feel you need to reinvent the wheel here - Occasionally you’ll find an existing example you can reverse engineer. 
  5. Go to schema.org item type page - when you’re starting off with Schema.org, review the Schema.org technical documentation page to get a gist of what the item type entails, how many sites are using this markup, and its various properties can facilitate a better understanding as you continue along your structured data journey. 
  6.  Copy and paste the immutable elements ( from <script to “@type”:)  - occasionally in Google’s examples they will leave out the <script> tags, but note they are vital for the content within the HTML document, as JavaScript can’t be parsed without the <script> tags. 
  7.  Add the desired item type you’re interested in marking up as the value of @type: List item properties and values
  8. Add JSON-LD syntax, nesting where required or appropriate. 
  9. Test with the structured data testing tool 

Anytime you ever need assistance or direction in how to something - check in with Google. Here’s a really great process Google walks you through and even has a timer to help show you that it can be accomplished in less than 30 minutes.  This is particularly perfect if you have a simple HTML site and have a basic understanding of HTML and JSON syntax. If you do not, I still would recommend you get your hands in there and actually apply it. 

Then once you’ve completed your Schema, go back to the Structured Data Testing Tool and test it.

Once you’ve successfully tested out your data you have a much better chance of having your content appear in the Knowledge Graph among other areas in Google’s search results. 

What is Structured Data in Search Console?

If you revert back to the old version of Google Search Console, you’ll find Structured Data under the Search Appearance area of the dashboard. There it will send you right back over to the new version. The report used to be housed in the old version.  If you have any structure data types the reports will be found there. If there are any errors at all you’ll get a list of those errors and specifically when it was last detected. 

Need a Structured Data Markup Example?

First, I’ll share a pretty cool website that actually has a method for you to make and validate the JSON-LD markup for your site.

Validate tools Google

There you can find loads of examples including Events, Person, Recipe, Video, Local Business and loads more. They even include a JSON-LD generator. 

The bottom line for all things JSON-LD, is keep it simple, make sure you only have accurate and relevant data to markup and be sure to always have your Schema strategy in place anytime you work on a site.

Just because something might appear to be a bit more advanced technically should not automatically be ignored. Taking the time to understand and appreciate the complex nature of the search engines and their even smarter and powerful ability to decipher searchers queries and be able to return the exact or near exact result is a marvel. 

It is incumbent upon us, the SEOs, to understand and empower our digital assets with just what the bot is in need of and what they can leverage to learn even more about the content we produce. Search engines like Google, does give the advantage to those web pages that use structured data markup.

In the most basic sense information is conveyed through a language, whether machine or human, in both the languages two things are primary 

vocabulary (set of words + Grammar (set of rules to use the vocabulary)

VOCABULARY (Schema) + GRAMMAR (JSON-LD)  = Structured Data Markup

This is the best combination of structured data for SEO

Microformats is the only one to provide both vocabulary and grammar. Google suggests using Schema as a vocabulary with JSON-LD as grammar, however, it does also support Microdata as well. 

Google does clearly state that display of rich snippets is not guaranteed, a simple blue link can be more powerful and enough to replace your rich snippet result. Keep the following elements to win a rich snippet in search results 

  1. strong on page SEO
  2. Well defined structured markup 
  3. Highly targeted content 
  4. Good speed score 
  5. Established PA and DA 

If you are working on a WordPress CMS platform the best and most recommended method is to use a plugin.

There are a few available and you can find those over here from WordPress.

If you see anything missing, let me know in the comments below. Was this helpful to you? Tell me that too!