Block fraudulent clicks on your Google Ads

Google Local Schema Guidelines Updated: What Now?

  • 610
  • 4.2K
Google Local Schema Guidelines Updated: What Now?

“How can you make my site stand out in the search engines?”

It’s one of the most common questions my local business clients have.

“How can you get more traffic to my site from Google?”

These are big asks.

After all, there’s no shortage of local SEO tips out there for just about any problem you might come across. But, Google always surprises us with something new. On August 27, 2016, Google announced they made updates to their local schema guidelines. Mike Blumenthal posted the announcement on Twitter.


Anyone who has ever worked on local SEO knows how valuable schema markup can be. You have 400 different variations of business types to choose from in the schema markup. Then throw in the vast array of custom properties like sameAs, geo, and hasMAP and you’re head is spinning like you’re Regan from The Exorcist.

The more you use structured data, the more important it is to dig up the details about the ongoing updates. I’ve done a deep dive on all the parameters for Google’s latest schema guidelines update. Let’s take a look.

What Is Schema Markup?

Your schema markup makes your site smooth like butter for the search engines. Your schema markup is microdata that mostly makes it easier for the SERPs to understand your website so it can match you to relevant search queries. It creates interactive elements and rich snippets in the search results for a more engaging user experience.

Before you start adding any schema markup to your site, you need to learn how schema works. First, pop over to to search for a type of microdata you might use. provides sets of structured markup for all different business types. It’s a compilation of work from Google, Bing, Yahoo, and Yandex.

Let’s break down some of the popular schema markup languages:

Types of Schema Markup

Organization Schema Markup

Organization schema markup enhances your Knowledge Graph and snippet in the search results.

organization schema markup starbucks

Schema Person Markup

Person markup is similar to organization markup in that it enhances your Knowledge Graph display, but it’s for an individual.

person schema markup matt cutts

Website Schema Markup

Website schema markup creates a Sitelinks Search Box feature and enhances the name of your site in the SERPs. The Sitelinks Search Box will only work if you already have a site search on your site.

website schema markup

Site Navigation Schema Markup

Site Navigation schema markup helps the search engines read your site architecture and can increase organic sitelinks.

site navigation schema markup

Breadcrumbs Markup

Breadcrumb schema markup creates rich snippets for your site in the search results.

breadcrumbs schema markup

Video Schema Markup

Video schema markup allows Google to display rich snippets for your YouTube videos.

video schema markup

Event Schema Markup

Event markup is used for local events or festivals.

events schema markup

Schema Local Business Markup

LocalBusiness and PostAddress schema markup can be used by local businesses to enhance your local listing.

<!-- FOOTER -->
    <div class="footer left">
        <div class="footer-top left"></div><!--/footer-top-->
        <div class="wrapper">
            <div class="footer-widgets-content left">

                <div class="footer_box left">
                    <div class="footer-widget-holder"><h2>Get to Know Us!</h2> <div class="textwidget"><div itemscope itemtype="">
<a itemprop="url" href=""><div itemprop="name"><strong>Toybrary
Austin, TX</strong></div>
<div itemprop="description">The Toybrary is a toy lending library and kids' birthday party venue that
also offers drop-in
childcare in Austin, TX</div>
<div itemprop="address" itemscope itemtype="">
<span itemprop="streetAddress">2001 Justin Lane</span><br>
<span itemprop="addressLocality">Austin, </span>
<span itemprop="addressRegion">TX </span>
<span itemprop="postalCode">78757</span>
<span itemprop="addressCountry"> USA</span><br>
<span itemprop="telephone">5127654174</

Schema Ratings & Reviews Markup

Rating schema markup (mostly used by e-commerce sites and local businesses) creates the star rating rich snippet in the search engines.

ratings and reviews schema markup

There’s also a few other options for e-commerce companies, recipes, etc. but, we’ll dive into that another time.

Google has only updated the schema for local businesses ratings and reviews markup language.

How Do I Optimize My Local Schema MarkUp?

Here’s an example of schema microdata by Tampa local coffee shop, Buddy Brew Coffee:

buddy brew coffee serps

Now, here’s an example of their microdata on the backend:

<script type='application/ld+json'>{"@context":"http:\/\/","@type":"WebSite","url":"http:\/\/\/","name":"Buddy Brew Coffee","potentialAction":{"@type":"SearchAction","target":"http:\/\/\/?s={search_term_string}","query-input":"required name=search_term_string"}}</script>
<script type='application/ld+json'>{"@context":"http:\/\/","@type":"Organization","url":"http:\/\/\/","sameAs":["https:\/\/\/BuddyBrewCoffee","https:\/\/\/BuddyBrewCoffee\/","https:\/\/\/user\/buddybrewcoffee","https:\/\/\/BuddyBrewCoffee"],"name":"Buddy Brew Coffee","logo":"http:\/\/\/wp-content\/uploads\/2016\/05\/BBC_Logo_black_thin-outline-Small.png"}</script>

Can you guess what type of microdata Buddy Brew coffee is using? If you answered website and organization, you are correct. So, what’s missing? Adding local business schema markup would help them expand more into the local search results, and they may see higher positions compared to their competitors.

Here’s a look at Green Planet Plumbing in Seattle:

<div itemtype="" itemscope="itemscope">
<span itemprop="name"><strong>Green Planet Plumbing</strong></span><br />
<div itemtype="" itemscope="itemscope" itemprop="address">
<span itemprop="streetAddress">6044 Fauntleroy Way SW</span><br />
<span itemprop="addressLocality">Seattle</span>, <span itemprop="addressRegion">WA</span> <span itemprop="postalCode">  98136</span><br />
Phone: <span itemprop="telephone"> (206) 937-1220</span><br />
Email: <span itemprop="email"><a id="footer-email" href=""></a></span>

Notice how the schema reads:

<div itemscope itemtype=”“>
This is great! But, with local business schema we can still get more granular because simply “local business” is still pretty fuzzy to the search engines. I’d suggest getting more specific with your itemType. For example, Green Planet Plumbing could change “local business” to “plumber” or “HomeAndConstructionBusiness.”

Their schema markup would read like this now:

<div itemscope itemtype=””>
<span itemprop=”name”>Green Planet Plumbing</span>
<div itemprop=”address” itemscope itemtype=””>
<span itemprop=”streetAddress”>6044 Fauntleroy Way SW</span>
<span itemprop=”addressLocality”>Seattle</span>,
<span itemprop=”addressRegion”>WA</span>
<span itemprop=”postalCode”>98136</span>
<span itemprop=”telephone”>(206) 937-1220</span>

32Whites Dental Care does an awesome job at this:

<div class="four columns widget">
 <div itemscope itemtype="">
 <h3 class="title">Our address</h3>
 <p class="footer-address">
 <a href="" target="_blank" title="Get directions">
 <span itemprop="name">32Whites</span><br />
 <div itemprop="address" itemscope itemtype="">
 <span itemprop="streetAddress">100-102 Church Lane</span><br />
  <span itemprop="addressLocality">Marple</span><br />
                                                                                 Stockport </br>  
 <span itemprop="addressRegion">Cheshire</span><br />
 <span itemprop="postalCode">SK6 7AR, UK</span>
 <div itemprop="geo" itemscope itemtype="">
     <meta itemprop="latitude" content="53.392634" />
     <meta itemprop="longitude" content="-2.063884" />

And, Mitten Clarke does too:

<p itemscope itemtype="">
<a itemprop="url" href=""><span itemprop="name">Mitten Clarke Chartered Accountants</a>
<span itemprop="address" itemscope itemtype="">
<span itemprop="streetAddress">Festival Way,</span>
<span itemprop="addressLocality">Stoke-on-Trent,</span>
<span itemprop="addressRegion">Staffordshire,</span>
<span itemprop="postalCode">ST1 5SQ</span>
<span class="geo" itemscope itemtype="">
                <meta itemprop="latitude" content="53.032042 </span>
                 <meta itemprop="longitude" content="-2.198206</span>

If you’re unsure of what your itemType is, gives you a full list under “Local Business.”

As you can see from the above, schema microdata is the evolution of semantic search as it helps the search engines define what your site is and how they should read it. Search engines always appreciate a little extra help guiding them to match search queries better.

The good news: Proper implementation of schema markup will do a lot of heavy lifting, and can easily be plugged into your site quickly.

The not-so-good-news: Google made updates to their local schema guidelines, which may throw you for a loop if you’re not careful when implementing to your site.

Let’s explore some of the changes to help you make the most of your local schema markup.

What Changes Have Been Made to Schema Local Guidelines?

Here are the new guidelines by Google announced on August 27, 2016:

Local business schema:

  • Snippets must not be written or provided by the business or content provider unless they are genuine, independent, and unpaid editorial reviews.
  • Reviews must allow for customers to express both positive and negative sentiments. They may not be vetted by the business or restricted by the content provider based on the positive/negative sentiment of the review before submission to Google.
  • Reviews cannot be template sentences built from data or automated metrics. For example, the following is not acceptable: “Based on X number of responses, on average people experienced X with this business.”
  • Reviews for multiple-location businesses such as retail chains or franchises can only be submitted for the specific business location for which they were written. In other words, reviews for multiple-location businesses cannot be syndicated or applied to all business locations of the same company.
  • Aggregators or content providers must have no commercial agreements paid or otherwise with businesses to provide reviews.
  • Do not include reviews that are duplicate or similar reviews across many businesses or from different sources.
  • Only include reviews that have been directly produced by your site, not reviews from third- party sites or syndicated reviews.

So, what has changed?

1. No third-party sources in your schema markup.

If you’re using schema for your local business markup, do not use third-party reviews (Yelp, Google+, Facebook, etc.) in your markup. You can still gain reviews from third-party sources, but keep them out of your schema markup. Google states they want reviews “That have been directly produced by your site.”

You will be violating Google’s guidelines if you continue to markup third-party reviews.

Here’s an example from Fitch Claremont Vineyard Bed and Breakfast using Tripadvisor:

fitch claremont reviews

If they used schema markup language for this, they would receive a penalty. However, since there is no schema markup language, Fitch Claremont is ready to go!

Here’s another example from Boyd Law in Los Angeles, CA.

As you can see from the search results, they are using schema review and rating schema:

Boyd Law rating example schema

And, here’s a look at the backend:

<script type="application/ld+json">
  "@context": "",
  "@type": "Review",
  "name": "Google Plus Review",
  "datePublished": "2015-04-03",
  "itemReviewed": {
    "@type": "Thing",
    "name": "Boyd Law Los Angeles"
  "author": {
    "@type": "Person",
    "name": "Michael Strong",
    "description": "They treated me like I was their only client, they educated me and walked me through a stressful case to a successful outcome"
  "reviewRating": {
    "@type": "Rating",
    "ratingValue": "5",
    "bestRating": "5",
    "worstRating": "1"
  "publisher": {
    "@type": "Organization",
    "name": ""


And, as you can see in the backend they are using Google Plus Reviews in their schema markup.

If Boyd Law doesn’t remove this soon, they could get dinged for a penalty.

And, the same goes if you’re using software like GetFiveStars or TrustPilot. While you can use both of these to gather reviews, you cannot use them to capture third-party reviews if you’re planning to add schema markup.

Take a look at Nektar Juice Bar that uses GetFiveStars:

<div class="donde-card donde-card-yelp" itemprop="review" itemscope itemtype="">
            <div class="yelp-header">
              <div class="yelp-logo">
                <img src="" alt="Yelp Reviews" />
              <div class="yelp-rating">
                <img class="yelp-stars" src="" />
            <div class="yelp-excerpt" itemprop="reviewBody">Dallas is booming with juice bars so how does Nekter stand out?

Product. Service and Locations! Nekter first won me over with their outstanding customer... <a data-collection="llp-track-external-link" data-store="{&quot;_id&quot;:&quot;563a33d00f7d17ae42fdd5b1&quot;,&quot;city&quot;:&quot;Dallas&quot;,&quot;name&quot;:&quot;Nekter Juice Bar&quot;,&quot;zip&quot;:&quot;75205&quot;,&quot;country&quot;:&quot;US&quot;,&quot;state&quot;:&quot;TX&quot;,&quot;street&quot;:&quot;6712 Snider Plaza&quot;,&quot;Location&quot;:{&quot;type&quot;:&quot;Point&quot;,&quot;coordinates&quot;:[-96.78762476,32.8479663]},&quot;phone&quot;:&quot;(214) 224-0404&quot;,&quot;externalId&quot;:&quot;55e34179e4b0b054f6808154&quot;,&quot;llp_url&quot;:&quot;/tx/dallas/6712-snider-plaza.html&quot;}" data-tag="yelp-card" data-url=";utm_campaign=yelp_api&amp;utm_medium=api_v2_business&amp;utm_source=jHvRgvzmmpOm0beo2eMCQA?hrid=uyoBPUInXI7STq7Q4dErpQ" href=";utm_campaign=yelp_api&amp;utm_medium=api_v2_business&amp;utm_source=jHvRgvzmmpOm0beo2eMCQA?hrid=uyoBPUInXI7STq7Q4dErpQ"> Read&nbsp;more</a></div>

So, double check your schema even if you’re using software to host your reviews.

2. Local businesses with multiple locations cannot display reviews and ratings as an aggregate, and they must be posted by individual location.

You will be at risk of a penalty if you show your ratings and reviews aggregately. If you have 30 business locations with an average of 4.9 stars and display this as an aggregate, you will be penalized. If your average is 4.9 stars, you need to markup them up by individual location.

Let’s take a look at Roto Rooter:

The homepage lists aggregate ratings:

<span itemtype="" itemprop="aggregateRating" class="average">4.89</span> out of <span class="best">5</span> <span itemprop="ratingValue">4.89</span> </span> based on <span class="votes">2589</span> ratings. <span itemprop="ratingCount" class="count">2589</span> user reviews. </div> <div id="roto-customer-reviews">

This could cause problems for them down the line because they do have multiple locations. But, let’s dig deeper into their location pages.

As we move into their location pages, Roto-Rooter in Alafaya, Florida lists the ratings and reviews correctly because it has its location:

roto rooter local review schema

And, here it is in the source code:

<span itemscope itemprop="review" itemtype=""> <span itemprop="reviewRating" itemscope itemtype=""> 
<meta itemprop="worstRating" content="1"> <meta itemprop="ratingValue" content="5"> <meta itemprop="bestRating" content="5"> </span> 
<span itemprop="itemReviewed" itemscope itemtype=""> <meta itemprop="name" content="Roto-Rooter"> 
<meta itemprop="url" content=""> </span> <meta itemprop="reviewBody" content="I enjoy not worrying about being scammed 
out of my money. I have been using Roto-Rooter for 4 yrs now."> <meta itemprop="author" content="Carla P."> </span>

They are not aggregating the reviews and ratings plus this location has its own schema markup. This is ideal!

3. Positive and negative reviews must be included.

Reviews can no longer be pruned to positive by local business owners. With the new guidelines, businesses must include both positive and negative reviews.

Based on Google’s history of releasing updates and taking three months or so to kick in, it’s most likely businesses have a few months to get their schema fixed before any harsh penalties pop up.

Here’s an example from Intoxalock:

intoxalock reviews schema

As you can see, they only use the 4 or 5-star ratings in their reviews. But, it is not included in their schema markup, so they are okay.

<a target="_blank" href="" title="Trustpilot Intoxalock Reviews"><h2>Intoxalock is a top rated ignition interlock device provider</h2></a><p>&nbsp;</p><br><div class="trustpilot-widget desktop-widget" data-locale="en-US" data-template-id="53aa8912dec7e10d38f59f36" data-businessunit-id="53ff80d9000064000579ffa1" data-style-height="130" data-style-width="100%" data-stars="4,5"></div><div class="trustpilot-widget mobile-widget" data-locale="en-US" data-template-id="539ad0ffdec7e10e686debd7" data-businessunit-id="53ff80d9000064000579ffa1" data-style-height="350px" data-style-width="100%" data-stars="4,5"></div>

Another example is The Law Offices of David Kohm:

law offices of david kohn reviews

Now, as we take a look at the backend, we see they’re using the aggregate schema rating in the source code:

<div itemscope itemtype="">
   <span itemprop="name">David S. Kohm &#038; Associates</span>
<div itemprop="aggregateRating" itemscope itemtype="">
     Rated <span itemprop="ratingValue">4.9</span>/5 based on <span itemprop="reviewCount">194</span> reviews.

This still isn’t bad. But, if we’re adhering to Google’s new local schema guidelines, you’ll notice if you compare the reviews on the site to the reviews from the third-party sites, Birdeye is not pulling in negative reviews.

For example, on David Kohm’s Avvo page, the first review is negative.

kohm avvo review

If possible, David Kohm should open up Birdeye to have access to all positive and negative reviews. Also, The Law Offices of David Kohm already fall out of the new schema guidelines from the first criteria we stated above — no third-party sources.

What Should I Do Next?

Schema markup often gets overlooked and is underappreciated, but, when done right, it can help establish credibility and trust in the search engines. Attempting to play around with your website code can feel like you’re in uncharted territory if you’re a newbie. What if you make a mistake, and you’re just unaware? Will you get a Google penalty?

It’s clear with the past few Google announcements that they are looking at enhancing crawl data, and reviews are just another way to do that. As marketers and business owners, you need to get set clear local SEO goals and align them with your overall business objectives.

With that in mind, let’s look at a few ideas to consider when implementing your local SEO tactics to find and fix faults in your local search results experience.

1. Test your schema markup language.

After you plop your schema markup into your code, check to make sure it’s working properly in the Structured Data Testing Tool before going live. Just copy/paste your code then click Validate. You should receive a green checkmark if your code has no errors. If, for some reason, you have errors, go back and check to make sure you didn’t miss anything.

Once you get the green checkmark, be sure to monitor the Structured Data Report in Google Search Console. This will tell you if any errors occur with your markup. If you’re a noob to schema markup, play around with the Structured Data Markup Helper tool.

2. Develop a review acquisition strategy.

Review acquisition strategy has always been a big driver of local traffic. But, it takes you and your staff to get amped up enough to start to create the review strategy efforts. I won’t dive into the nitty gritty details of how to get more reviews, but here are a few ideas:

  • Create multiple touch points for your customers. ModCloth is active on multiple social channels:


  • Let your customers know their feedback is appreciated. GoPro posts a Video of the Day by a fan.


  • Give your customers different channels to provide feedback. Petco sends follow-up emails a few days after customers purchase.

petco order review3. Create a response strategy for handling negative reviews.

When juggling customer complaints, you’re tasked with a large set of responsibilities from solving their problems, responding quickly, and gaining their trust back. Let’s take a look at a few examples of brands handling negative reviews:

  • JetBlue guides the conversation offline.
  • Wendy’s response time is fast and funny!


  • Amy’s Bakery responds on Yelp.

Read Kara M.‘s review of Amy’s Baking Company on Yelp

union green reviews on tripadvisor
  • Pigalle Restaurant explodes on Facebook.

bad review on facebook


Local Schema FAQs

I frequently get asked questions about local schema, so here’s a few common issues and answers:

If I have multiple locations, what schema markup language is best for me?

If you’re a local business, I would first add the LocalBusiness microdata. As I mentioned above, make this specific to your niche (i.e. plumber, accounting service, etc.). Next, add the AggregateRating for each location page if you have reviews from nonthird-party sites.

Do I need to add LocalBusiness schema markup to every location page?

Yes, if every location page has a different NAP, then I would add the schema markup to the individual pages.

My mailing address isn’t public. Can I add the address to my microdata even though it’s not shown?

No, this is against Google’s guidelines.

Why aren’t my rich snippets showing in the search results?

Google does not guarantee rich snippets will be displayed in the SERPs.

How long will it take for my Knowledge Graph to appear?

Again, Google does not guarantee this will appear in search results.

If I have a virtual location, can I use local schema markup?

No, this is also against Google’s guidelines.

Can I use local schema for a P.O. box?

Nope, sorry guys also against Google’s guidelines.

Where should I put my schema markup?

Your schema markup should go in the header or the footer.

What is the Future of Local Search?

Anyone who’s worked in SEO has heard this saying: “Google will figure it out.” SEO has many rewards; in the case of local search, it takes the knowledge and expertise of SEO marketers to connect the dots between the location and the search engines.

Maybe I’m a dreamer, but I think the future of local search is crossing over to a more seamless approach from website to a search result. Will users even find the need to click through to websites? Search engines want people to locate the information they are looking for faster and simpler. Optimizing your website for local SEO is what counts — the traffic comes with the strategy. Everything else is secondary. (This local SEO guide can help you do that.)

If you’ve updated your local schema markup, mind sharing with us? It’d be great to see what you’re noticing!

And if you have any tips for us on the changes you’ve made, or if you have any questions about anything I’ve mentioned here, feel free to drop a line in the comments. I’d love to chat!

Image Credits

Featured Image: SimpleFoto / Deposit Photos
All screenshots by Anna Crowe. Taken September 2016.

CategoryLocal Search

Subscribe to SEJ

Get our daily newsletter from SEJ's Founder Loren Baker about the latest news in the industry!


Anna Crowe

Assistant Editor & Director of Outreach & PR at Jason Hennessey Consulting

Anna is the Assistant Editor for Search Engine Journal and Director of Outreach & PR for Jason Hennessey Consulting. Over ... [Read full bio]

Read the Next Article
Read the Next