Blog

How to Plan & Implement Schema Markup, Avoiding Common Mistakes

Published on: 
December 16, 2022
Updated on: 
August 17, 2023
by
Begüm Kaya
Begüm Kaya
Sam Torres
Sam Torres

Schema markup is the language of web crawlers. Also referred to as structured data, schema is based on its own semantic vocabulary, or coding language, that minimizes the guesswork for search engines in understanding the context and meaning of a site and what it's all about. And in the dynamic, ever-evolving world that is SEO, structured data remains steadfast in proving its worth in more ways than one.

Screenshot of a Twitter conversation between John Mueller and Aleyda Solis about 2021 excitement in the SEO / web world.

Most SEOs today (even non-tech SEOs) admit they're keen on the importance of schema and the role it plays. Yet, despite an overwhelming nod in agreement among the SEO collective that "Yes. Schema is important. You should be using schema," it's still a topic that's hazed with mysticism. 

That is, a lot of SEOs know that structured data is significant. Many have even thrown up some scripts on a few pages and perhaps seen some results. But only some have the tools and skills to leverage it correctly and cohesively on both a page level and more broadly on a site level. 

As a team that's rooted in tech SEO, we're privy to the opportunities that schema offers in helping elevate the search appearance for brands, businesses, and blogs alike. This guide shares our processes on how we go about planning and implementing structured data while avoiding common mistakes.

1. Planning Phase

Planning and outlining your structured data is one of the most widely overlooked yet fundamentally crucial aspects of schema. This is the initial strategic organizing of your structured data across the site from a global perspective. As a result of neglecting this stage, a site's schema "strategy" (or lack thereof) is typically not well thought out and mistakes are destined to occur. For instance, we may later discover:

  • Competing scripts – two or more scripts on the same page, each declaring the page as a different thing. Which should Google prioritize and how do we correctly convey that information? Does it make sense to take the risk with nested schemas?
  • Improper script setup – global scripts that should be page specific, or page-level scripts that should be global. (Note that this setup is rarely, if ever, correct & accurate.)
  • Missed opportunities – relevant schema types that are underutilized or entirely overlooked. 

Think of this initial process as an exercise in defining the "why" behind your structured data and what you hope to achieve when it's implemented properly.  In short, you want to understand the potential gains from schema. 

Google Product Manager, Aylin Altiok, is quoted as saying, 

"By just adding a bit of markup, your content becomes eligible for rich results in search, speech recognition, and natural language understanding on the assistant and discovery on all these devices and surfaces."  

via Watch Google IO 2019: Enhance Your Search and Assistant Presence with Structured Data

Preface: Myths and Misconceptions

Before jumping into the planning phase, it's important we bring clarity to underlying myths and misconceptions surrounding schema. 

  • Myth: Deploying structured data assures rich search results. 
  • Truth: Structured data only increases the likelihood of rich search results; there is no guarantee and ultimately Google decides.  
  • Myth: Structured data is a search engine ranking factor.
  • Truth: Structured data is not a direct ranking factor and does not guarantee higher search rankings.

Schema is just another tool at our disposal to help search engines understand our sites' contents. It should be taken at both a page level and a site level, thereby underscoring the importance of properly planning your approach and identifying templates that can be used.

Define Your Brand's Preferred Search Experience

A central theme in this planning phase is outlining how you want your business to look in search and determining which aspects to focus on. There are a few ways to approach this.

To start, explore what represents the business or brand via Google's Knowledge Graph – a system that understands facts and information about specific entities (typically the people, places, or things that are important enough to warrant a Wikipedia page) and displays that info in bite-sized pieces as knowledge panels in Google Search. 

Screenshot #1 of a Knowledge Panel in Google search for the query "Shakira". Includes links to places to find Shakira's music and an about section.
Screenshot of a Knowledge Panel in Google search for the query "Shakira" - as you scroll down the page. This version includes a list of songs with links and video image previews, as well as links to social media profiles.

In simple terms, the Knowledge Graph draws from various sources and materials shared across the web; most commonly Wikipedia and Wikidata. The latter provides a sound launching pad for SEOs to explore and find what represents certain business concepts (e.g. check out the item for SEO for an obvious example).

Another good place to inspire your planning is to explore Google's search gallery of rich features based on structured data types. Depending on the nature of your content, you can identify the most relevant and applicable categories worth utilizing. This is a great source of insight, as you may stumble upon schema types that you may not know existed.

Identify Page Templates To Align with Entities

Perhaps the most important aspect of this planning exercise is pinpointing the actual objects that can be marked up with certain schema types. Knowing which forms of schema will work best requires knowing your content and identifying potential page templates that can be used. 

To help articulate this process, here is a simple example using The Gray Dot Company site and which objects can be used to identify common page templates.

Object Entity Schema Corresponding URL
Gray Dot Company The Gray Dot Company, Inc. Organization https://thegray.company/
Tory Gray Tory Gray Person https://thegray.company/team#tory-gray
The SEO Customer Funnel: KPIs & SEO Metrics Worth Monitoring Purchase Funnel
Performance Measurement
Search Engine Optimization
Blog Posting https://thegray.company/blog/seo-customer-funnel
Data Storytelling Data Storytelling Service https://thegray.company/services/dashboarding-storytelling
O/SEO/O™ E12: Opinions About Evolving eCommerce SEO Requirements E-Commerce
Search Engine Optimization
Video Object https://thegray.company/blog/o-seo-o-e12-opinions-about-evolving-ecommerce-seo-requirements

Establish Connections Between Different Schema Items

Based on the schema types mentioned above, let's take the example of blog posting a little deeper. We can state that there is a published blog on the Gray Dot site. Or, we can identify that:

  • Gray Dot Company's (organization) 
  • CEO Tory Gray (person) 
  • published a blog post (blog posting) 
  • about data storytelling (service). 

Similarly, the concept of mapping entities together is a way to drive home all the different facets of your organization and offering. For instance, instead of constantly adding the SAME structured data, you can link to that entity's primary page, and easily make these relationship connections FOR Google. 

Take for example a blog written by Tory. Instead of having to repeat all of the info about Tory for the author portion of the blog, we can declare the relationship and add the ID of the dedicated page about Tory.

Screenshot of author schema nested within BlogPosting schema

Pro Tip: Use SchemaApp's Schema Paths Tool to identify such relationships and opportunities to bind the schema together.

Also worth noting when establishing connections between items, if you're building nested schema code, the error on the sub-schema affects the overall integrity of that entire schema block as a whole. 

We usually see this with Product Rating schema: if there are no ratings or reviews but the schema is implemented, you'll see an error in Google Search Console (GSC).

Screenshot of schema errors in Google Search Console (GSC)

Consider Creating a Visual Map of Schema Item Connections

When planning, you may want to create a visual map of the various entities and relationships that make up your brand and its website. A couple of visual mapping tools designed specifically for schema are JSON Crack and Classy Schema's Structured Data Viewer. Both tools enable you to map visual relationships based on different schema types.

Screenshot of the tool: Classy Schema, a Structured Data Tool

You can also use more standard mind-mapping tools, like Lucid Charts, Miro, and Figma. There are tons of these tools available, some of which may be available as part of existing work management platforms (e.g. ClickUp.)

Common Schema Mistakes in the Planning Phase

There are common mistakes we see that are rooted in the planning phase. At large, these mistakes involve choosing the improper schema type due to misinformation/lack of research or using structured data improperly. More specifically, the types of mistakes we see include

1) Wrong or unnecessary schema types being used, such as

  • Article schema implemented on content that isn't newsworthy (use BlogPosting schema instead!)
  • HowTo schema implemented on recipe pages instead of Recipe schema
  • LocalBusiness schema left too generic, lacking specification (e.g. Restaurant)

2) Schema types implemented in the wrong places (site-wide vs. page-level) – e.g. Organization schema improperly deployed globally versus being implemented only on the homepage as it should be.

3) Not correctly nesting parent/child relationships – e.g. Reviews/Ratings not appropriately nested under Product schema or on actual product pages. Using Product schema on eComm category pages instead of properly using CollectionPage or ProductCollection schema.

4) General missed opportunities – e.g. parent schema types lacking specification (what type of LocalBusiness?) or not including adequate detail.

Regularly Revisit Your Strategy

Like any core piece of a larger channel or strategic initiative like SEO, it's important to have a system in place for reviewing and assessing your structured data. This involves addressing errors in GSC, evaluating existing schema relationships, and looking for further improvements. For most brands, quarterly assessments are a good cadence.

Also, you don't have to feel limited to what's documented in Google Guidelines or simply doing what others are doing. There's a range of schema types that can uniquely support your brand and the content that represents it. 

Aside from SEO and attaining certain SERP features, it can be a way to communicate the meaning and top information about your page content. Because structured data is a closed language set, it is easier to convey meaning and eliminate confusion/ambiguity.

2. Implementation Phase

Now that we've outlined what we envision our Schema strategy to look like, the next major step is implementation. This phase will take different shapes depending on the site and the current structured data that's been previously deployed, but the fundamentals remain consistent. 

Audit the Current Schema on the Website

For sites with schema already in place, we'll want to first audit the existing markup. In doing so, we're looking to identify improvements that can be made, errors to fix, and missed opportunities. 

  • Head to GSC and take an in-depth look into each element and investigate why certain elements may be invalid
  • Run a crawl and extract schema types for auditing (here's a guide on how to do this using Sitebulb or Screaming Frog)
  • Identify potential new opportunities by referring to the Schema.org documentation for additional properties

Identify Schema Type Gaps & Evaluate Opportunities

Next is the process of mapping the schema types to be implemented and building the semantic relationships between types. This is where your visualization map can be very useful, as you can see the relationship or connections between types and where they exist on the site. 

Screenshot of GSC's Enhancements navigation, with links to specific reports for the schema types we've implemented.

Audit for the Most Common Schema Errors

Auditing is a critical component to ensure your schema is functioning as it should be. 

It's not all that difficult, either. Google's Rich Result Test tool makes it easy to assess specific URLs and syntax ("code") to see which types of structured data are detected, and which items may be valid or invalid. And if invalid, the tool helps in understanding why.

Screenshot of example results from Google's Rich Result Test tool

There are certain types of schema errors that tend to occur more frequently than others. These are largely due to improper formatting, missing fields, or general syntax errors. Below are some of the common schema types that encounter issues and why.

Product Ratings and Review Schema

  • Missing fields (e.g. "ratingValue," "name," et.)
  • Either "ratingCount" or "reviewCount" is not specified

Breadcrumb/Collection Page/List Schema

  • Missing field "item" (in "itemListElement") – make sure all the fields are populated; the error is mostly caused by not entering URLs

Unparseable Structured Data Errors

1) Parsing errors

  • e.g. missing comma or a curly bracket '}'
  • Review your syntax using the Rich Results Test and pinpoint which line is causing the error

2) Date/time not in ISO 8601 format in field "uploadDate" 

  • Review property's formatting requirements carefully

3) X is not a known valid target type for the Property

  • This happens due to an invalid attribute being applied to the target type
Screenshot of a schema warning for Recipe markup

4) Duplicate unique property 

  • When there are multiple types of properties in one schema

5) Unknown Type 

  • X is not a type known to Google 
  • Often occurs due to misspellings

Other Errors Related to Properties

1) Provider property has to be identified as either a person or an organization

Incorrect:

"provider": "The Gray Dot Company"

Correct:

"provider": {    
      "@type": "Organization",     
 "name": "The Gray Dot Company",        
 "@id":"https://thegray.company"      }

2) sameAs property can have multiple links and the syntax changes when multiplier URLs are added.

"sameAs": [
 "https://twitter.com/GrayDotCo",
 "https://www.youtube.com/@GrayDotCo",
 "https://www.linkedin.com/company/graydotco/"
]

3) A value for the field is required – when a property field doesn't have value 

Identify if that is due to manual or dynamic errors - We usually find relevant Wikidata or Wikipedia entries e.g. a single and multiple sameAs properties:

Single-source:

"sameAs":"https://www.wikidata.org/wiki/Q180711"

Multiple-sources:

"sameAs": [
 "https://twitter.com/torylynne",
 "https://www.linkedin.com/in/torygray/",
 "https://thegray.company/team#tory-gray"
]

Since this is rather a manual process that's implemented either manually or in bulk (dynamically), the errors should be revised accordingly.

4) Accidentally using double quotes inside a field (instead of single quotes), which will break the field and everything after it. 

Make sure to replace any double quotes within a field with single quotes instead.

Copy and Paste Error

It happens fairly often that when you copy and paste code from a document (Google Docs or Microsoft Word), the special characters (" or ') are no longer the correct character causing parsing errors.

To fix, use a program that's made for code, such as Sublime Text or Microsoft Visual Studio Code (tons of extensions available for either to help with formatting too)

3. Post-Launch Phase

There are certain post-launch activities that help ensure your structured data is in place and working properly. Here's a rundown on what to assess after deploying your schema markup. 

Determine if Schema is Properly Implemented

First, let's make sure Google has crawled and indexed the page(s) containing the newly implemented schema markup. We can do this by:

  • Taking a look at the enhancements report in GSC
  • Using the URL Inspection tool in GSC and conducting "spot checks" to see if the page has been indexed and whether any errors are present

Once we can confirm that Google has in fact indexed our page(s), and schema scripts alongside it, we can ensure schema is properly implemented and monitor its impact.

Monitor Error/Warning Updates in GSC

You'll also want to periodically check in with any issues detected with your schema enhancements in GSC.  There are error reports conveniently organized for you that flag any critical issues. Or you can click on each type of schema under the enhancements drop-down in GSC to see if any items are invalid.

Screenshot of a GSC report on the performance of Review Snippets, including Invalid and Valid types.

If you've implemented schema at scale, you can oftentimes identify patterns in certain errors/warnings. Depending on the sheer size of your site and the extent of structured data markup involved, you'll want to keep up with this monitoring effort on a monthly or quarterly basis.

Measuring the Impact of Your Schema

In addition to periodically monitoring your schema, you'll want to measure and convey the impact of your efforts. There are a lot of ways you can do this, several of which are shown in this handy resource from SchemaApp.com. We also break down a few examples of how to measure the impact of schema with our reporting processes.

Create an Overall Report

In GSC, an overall report will include general search metrics across all active schema types, providing a high-level overview of how impactful the structured data is performing as a whole. This overall view might be enough for certain reporting needs, however, we can drill into the activity of specific types (more on this below).  

For an overall report, we can consider comparing:

  • The percent (%) change of impressions and clicks for the segments' rich results that are implemented. (This tells us if rich results are making a difference from a site-wide perspective.)
  • The performance of the site (or specific pages) before and after implementation.
Screenshot of the performance of an example site's GSC performance report for schema

Use Search Appearance Filters for Specific Schema Types

To filter your report based on certain schema types of interest, select type under the search appearance filter: 

Screenshot of GSC's Search Appearance Filter options

Here's an overview of search appearance metrics based on Recipe rich results:

Screenshot of GSC's performance report for search appearance metrics based on Recipe rich result

Alternatively, we can also include search appearance metrics of Recipe Gallery: 

Screenshot of GSC's performance report for search appearance metrics of Recipe Gallery

Also, you can also cover the validity or "health" of the structured data and communicate an issue-free setup via the enhancement report:

Screenshot of GSC's Review Snippets report, showing all Valid snippets

Recommend Error Fixes & Improvement Opportunities

Additional information is provided under each rich result report. These insights can point to opportunities where missing fields can be populated and item appearance can be improved. In short, this adds a layer of action or potential next steps to your report.

Screenshot of GSC's error report on Improving Item Appearance

Or, in cases in which you have invalid structured data or critical issues present, such as with the Review snippet schema below, you can also call these out as errors to fix in your report.

Screenshot of GSC for an example site wherein there is both valid and invalid schema

Although these matters are highly technical, there's no shortage of creativity that can be employed when reporting on schema and articulating your findings. Distill what matters most to the teams and stakeholders involved, and always consider what action you can take next to further optimize search appearance and rich results.

Need Support with Your Schema?

As a company that's deeply rooted in all things tech SEO, our team is comprised of highly experienced specialists in the world of schema and we help brands leverage the search impact of rich results. If you're struggling to make schema work for your site, it's likely that we can help. Get in touch with us and let's get the ball rolling.

Work With Us
We’ll help craft, teach, and carry out SEO roadmaps that check all the boxes.
CONNECT THE DOTS WITH US