Ultimate How-to Guide for Local Business Schema Markup

Schema Markup

There’s something satisfying about searching for a business and finding all the information you want presented in an attractive knowledge panel. Have you wondered how to make your own business eligible for this kind of search experience? We’ve compiled this ultimate guide to teach you all you need to know about local business markup. Adding Local Business Schema Markup to your website can make you eligible for rich results, and these results can help you stand out in search, generating higher click-through rates, higher organic traffic, and more conversions. 

What is “Local Business” Schema?

When we talk about Local Business schema, we’re really talking about types and properties within the schema.org vocabulary that are used to categorize and define information about businesses. The LocalBusiness type, or one of its associated types, should typically be used to markup your homepage. Adding Local Business markup to your website translates your human-readable content into the machine-readable language of JSON-LD.

We will show you how to use specific identifiers (@ids aka URIs) to define objects in your content as distinct entities with their own properties and relationships to other entities. Once defined, these entities can be linked to a search engine’s knowledge graph through structured data like schema markup. Knowledge graphs represent the linking of information and data across the Web, providing content for search engines as they crawl your website.

Within the schema.org vocabulary, the LocalBusiness type is a subtype of both Organization and Place, so it inherits the properties of both these types. Schema.org defines LocalBusiness as “A particular physical business or branch of an organization. Examples of LocalBusiness include a restaurant, a particular branch of a restaurant chain, a branch of a bank, a medical practice, a club, a bowling alley, etc.” You’ll notice that the definition lists many more specific kinds of local businesses.

Much like this list, the LocalBusiness type contains a wide variety of subtypes that can be used to define your business more specifically. The full list of schema.org types can be found in their Full Hierarchy where indentations denote a subtype relationship in the hierarchy of terms. We encourage you to check out schema.org’s definitions for any types that are relevant to your business, that way you can be sure you’re using the most accurate type. 

What kind of local business organization are you?

The next step is to identify what kind of business you are optimizing. As you can see from the list above, schema.org provides you with a lot of options. When choosing a type, you want to be as specific as possible. If nothing fits well, don’t worry. Pick a more generic type, like LocalBusiness or Organization, and use the sameAS property to connect to a Wikipedia or Wikidata entry that further defines your business type.

💡 TIP! Both Wikipedia and Wikidata can help you specify your business, but if given the option, link to Wikidata. Wikidata has been optimized for machines, while Wikipedia is meant for human readers.

The most general type of business is an Organization. Organization has the following types:

  • Airline
  • Consortium
  • Corporation
  • Educational Organization (more specific types include College, University, Elementary School, High school, Middle School, Preschool, School)
  • Funding Scheme
  • Government Organization
  • Library System
  • Local Business (*see more below)
  • Medical Organization (more specific types include Dentist, Hospital, Pharmacy, Physician)
  • Library System
  • Medical Organization
  • NGO
  • News Media Organization
  • Performing Group (more specific types include Dance group, Music Group, Theatre Group)
  • Project (more specific types include funding Agency, Research Project)
  • Sports Organization (more specific types include Sports Team)
  • Workers Union

Local Business has the following types:

  • Animal Shelter
  • ArchiveOrganization
  • AutomotiveBusiness (more specific types include AutoBodyShop, AutoDealer, AutoPartsStory, AutoRental, AutoRepair, AutoWash, GasStation, MotorcycleDealer, MotorcycleRepair)
  • ChildCare
  • Dentist
  • DryCleaningOrLaundry
  • EmergencyService (more specific types include FireStation, Hospital, PoliceStation)
  • EmploymentAgency
  • EntertainmentBusiness (more specific types include AdultEntertainment, AmusementPark, ArtGallery, Casino, ComedyClud, MovieTheater, NightClub)
  • FinancialService (more specific types include AccountingService, AutomatedTeller, BankOrCreditUnion, InsuranceAgency)
  • FoodEstablishment (more specific types include Bakery, BarOrPub, Brewery, CafeOrCoffeeShop, Distillery, FastFoodRestaurant, IceCreamShop, Restaurant, Winery)
  • GovernmentOffice (more specific types include PostOffice)
  • HealthAndBeautyBusiness (more specific types include BeautySalon, DaySpa, HairSalon, HealthClub, NailSalon, TattooParlor)
  • HomeAndConstructionBusiness (more specific types include Electrician, GeneralContractor, HVACBusiness, HousePainter, Locksmith, MovingCompany, Plumber, RoofingContractor)
  • InternetCafe
  • LegalService (more specific types include Attorney, Notary)
  • Library
  • LodgingBusiness (more specific types include BedAndBreakfast, Campground, Hostel, Hotel, Motel, Resort)
  • MedicalBusiness (more specific types include CommunityHealth, Dentist, Dermatology, DietNutrition, Emergency, Geriatric, Gynecologic, MedicalClinic (COVIDTestingFacility), Midwifery, Nursing, Obstetric, Oncologic, Optician, Optometric, Otolaryngologic, Pediatric, Pharmacy, Physician, Physiotherapy, PlasticSurgery, Podiatric, PrimaryCare, Psychiatric, PublicHealth)
  • ProfessionalService
  • RadioStation
  • RealEstateAgent
  • RecyclingCenter
  • SelfStorage
  • ShoppingCenter
  • SportsActivityLocation (more specific types include BowlingAlley, ExerciseGym, GolfCourse, HealthClub, PublicSwimmingPool, SkiResoirt, SportsClude, StatiumOrArena, TennisComplex
  • Store (more specific types include AutoPartsStore, BikeStore, BookStore, ClothingStore, ComputerStore, ConvenienceStore, DepartmentStore, ElectronicStore, Florist, FurnitureStore, GardenStore, GroceryStore, HardwareStore, HobbyShop, HomeGoodsStore, JewleryStore, LiquorStore, MensClothingStore, MobilePhoneStore, MovieRentalStore, MusicStore, OfficeEquipmentStore, OutletStore, PawnShop, PetStore, ShoeStore, SportingGoodsStore, TireShop, ToyStore, WhoesaleStore)
  • TelevisionStation
  • TouristInformationCenter
  • TravelAgency

Not sure where to start with your local business schema markup?

Before You Begin

Required and Recommended Properties for Local Business Structured Data

Google maintains documentation explaining exactly what’s required for “Local Business” markup to be eligible for rich results within search. We’ve captured the required fields below, as listed when this post was published. You must populate the required properties for your content to be eligible for display as a rich result. Recommended properties add more information to your structured data, which could provide a better user experience.

https://schema.org/LocalBusiness

Schema Property: @id
Priority: Required
Mapping Notes: Schema App automatically creates @ids for each of your data items. This is a globally unique ID of the specific business location which is stable and unchanging over time.

Schema Property: address
Priority: Required
Mapping Notes: The physical location of the business. Include as many properties as possible. The more properties you provide, the higher quality the result is to users.
https://schema.org/PostalAddress 

Schema Property: name
Priority: Required
Mapping Notes: The name of the business.

Schema Property: aggregateRating
Priority: Recommended
Mapping Notes: The average rating of the local business based on multiple ratings or reviews.
https://schema.org/AggregateRating

Schema Property: department
Priority: Recommended
Mapping Notes: A nested item for a single department. 
https://schema.org/LocalBusiness

Schema Property: geo
Priority: Recommended
Mapping Notes: Geographic coordinates of the business.
https://schema.org/GeoCoordinates

Schema Property: openingHoursSpecification
Priority: Recommended
Mapping Notes: Hours during which the business location is open.
https://schema.org/OpeningHoursSpecification

Schema Property: priceRange
Priority: Recommended
Mapping Notes: The relative price range of a business, commonly specified by either a numerical range (for example, “$10-15”) or a normalized number of currency signs (for example, “$$$”)

Schema Property: review
Priority: Recommended
Mapping Notes: A review of the local business
https://schema.org/Review

Schema Property: telephone
Priority: Recommended
Mapping Notes: A business phone number meant to be the primary contact method for customers. Be sure to include the country code and area code in the phone number.

Schema Property: url
Priority: Recommended
Mapping Notes: The fully-qualified URL of the specific business location. Unlike the @id property, this URL property should be a working link.

💡 TIP! For more information about adding Rating and Review markup, check out our tutorial Creating “Review” Schema Markup Using the Schema App Editor.

The following types (GeoCoordinates, OpeningHoursSpecification) were listed above as being recommended by Google. However, adding these to your markup can make rich results more robust. These recommended types have their own required and recommended properties:

https://schema.org/GeoCoordinates

Schema Property: latitude
Priority: Required
Mapping Notes: Number. The latitude of the business location. The precision should be at least 5 decimal places.

Schema Property: longitude
Priority: Required
Mapping Notes: Number. The longitude of the business location. The precision should be at least 5 decimal places.

💡 TIP! Don’t know your business’ geo coordinates? They can be found by searching for the associated address in Google Maps. The URL of the location will have both the latitudinal and longitudinal values.

https://schema.org/OpeningHoursSpecification

Schema Property: closes
Priority: Required
Mapping Notes: The time the business location closes, in hh:mm:ss format.
https://schema.org/Time

Schema Property: dayOfWeek
Priority: Required
Mapping Notes: One or more of the following:

  • Monday
  • Tuesday
  • Wednesday
  • Thursday
  • Friday
  • Saturday
  • Sunday

Schema Property: opens
Priority: Required
Mapping Notes: The time the business location opens, in hh:mm:ss format.
https://schema.org/Time

Schema Property: validFrom
Priority: Recommended
Mapping Notes: The start date of a seasonal business closure, in YYYY-MM-DD format.
https://schema.org/Date

Schema Property: validThrough
Priority: Recommended
Mapping Notes: The end date of a seasonal business closure, in YYYY-MM-DD format.
https://schema.org/Date

💡 TIP! If certain days have different opening hours, create a separate OpeningHoursSpecification data item for those days.

Google’s documentation also lists some types that are specific to the FoodEstablishment type, or it’s more specific subtypes (e.g Bakery; BarOrPub; Restaurant). These are:

https://schema.org/FoodEstablishment

Schema Property: menu
Priority: Recommended
Mapping Notes: URL. The fully-qualified URL of the menu.

Schema Property: servesCuisine
Priority: Recommended
Mapping Notes: The type of cuisine the restaurant serves.

As you can tell from the number of properties at your disposal, there’s a lot you can leverage with your Local Business schema markup. Wondering how all of it might fit together? This diagram illustrates an example of LocalBusiness markup in the form of a graph. It shows all the required properties (in yellow), and some of the more common recommended properties (in blue).

💡 TIP! For the most current guidelines on required and recommended fields, reference the Google documentation on Local Business markup.

Preparing Your Local Business Schema Markup

Before we start creating your schema markup, you’ll need to gather the information found in the table below. This strategy piece will be the most time-consuming part of your Local Business markup, but it makes the process more efficient in the long run. Examples of the various fields have been provided as well as additional guidance to help you complete the list. Note: the homepage of the business is usually what you markup as the Local Business.

We also have a handy Google Sheets template that you can use to do this prep work for your markup. You can make yourself a copy of it here.  

Schema Property: type
Field in English: Local Business Type
Description & Guidance: Look at the list of Local Businesses above and choose the most specific type possible.
Example: Bar or Pub

Schema Property: url
Field in English: Website URL
Description & Guidance: Include http:// and https:// where applicable
Example: https://bakerstreetstation.ca/

Schema Property: name
Field in English: Business Name
Description & Guidance: Name of the Business as it appears in your directory listings (NAP)
Example: Baker Street Station

Schema Property: address
Field in English: Address
Description & Guidance: Same Address as you use in your directory listings and in NAP
Example: 76 Baker St, Guelph, Ontario, Canada, N1H 4G1

Schema Property: additional Type
Field in English: Business Type Descriptor
Description & Guidance: Use this to clarify the business type with more specificity using a Wikipedia definition.
Example: Gastro Pub. Wikipedia entry: https://en.wikipedia.org/wiki/Gastropub

Schema Property: sameAs
Field in English: Social Media profiles or listings.
Description & Guidance: In essence it is asking for other pages on the web that represent the same thing.  Link to social media accounts or directory listings shown on the page.
Example:
https://twitter.com/BakerStStation
https://www.facebook.com/bakerstreetstation/
https://www.instagram.com/bakerststation/

Schema Property: description
Field in English: Description of the Business.
Description & Guidance: Use the description visible on your page or your meta description. 
Example: Craft Beer and Good Food in #Guelph.

Schema Property: hasMap
Field in English: Map
Description & Guidance: If the map is shown on the page then you can include the map. To get the link, find the business on Google Maps, and click on the “share” icon. Copy URL.
Example: Link to map.

Schema Property: geo
Field in English: Latitude and Longitude
Description & Guidance: Go to http://www.latlong.net/  and enter your business address
Example:
Long: 43.547751
Lat: -80.252402

Schema Property: telephone
Field in English:
Telephone Number
Description & Guidance: Country Code and Number. Use format +X-XXX-XXXX or +XX-XXXXXXX
Example: +1-519-265-7960

Schema Property: image
Field in English:
Image
Description & Guidance: URL of an image that is on the page. You can often get this by right clicking on the image and copying the address or from your website media folder.

Schema Property: logo
Field in English:
Logo
Description & Guidance: Link to the logo of the business on the website. You can often get this by right-clicking on the image and copying the address, or from your website media folder.

Schema Property: opening hours specification
Field in English:
Opening Hours
Description & Guidance: What days is the business open and what time?  Is there a period with specific opening hours? You can create as many of these as you need for current hours and also special holiday hours. Time format will be in the 24 hour clock and use the format HH:MM:SS
Example:
Monday-Friday Opens: 11:30:00
Closes: 00:00:00
Saturday-Sunday Opens: 11:00:00. Closes: 00:00:00

Schema Property: menu
Field in English:
menu URL
Description & Guidance: URL to the Menu on the website if applicable.
Example: https://bakerstreetstation.ca/menu/

Schema Property: accepts reservations
Field in English:
Restaurants only.
Description & Guidance: Yes/No
Example: No

Schema Property: serves cuisine
Field in English:
Type of Cuisine. Restaurants only.
Description & Guidance: What type of cuisine do you serve?
Example: English Pub Food

Schema Property: aggregate rating
Field in English: Average Rating from business’s reviews

Description & Guidance: Using reviews that exist on your website (not Google or Facebook) and are from a third party app. The average rating across those reviews is the aggregate rating. 

By defining objects on your homepage as unique entities using schema markup, you are effectively connecting them to a search engine’s knowledge graph. This adds context and relevance for your site content, supporting your E-A-T and establishing relationships between your local business and other defined entities across the Web.


Creating Your Local Business Schema Markup

To see how to create your local business schema markup using the Schema App Editor, check out our how-to article here.

 

Testing Your Markup

Structured Data Testing Tool or Schema Markup Validator

Export the JSON-LD and run it through the SDTT or the Schema Markup Validator, to view any errors or warnings. In the Schema App Editor, you can use the “Test with Google” button to test the markup directly. This serves as an alert to either correct the markup or to highlight gaps in the content. 

Rich Results Preview Testing

To validate and preview your structured data, use Google’s Rich Result Test. This tool will indicate if your page is eligible for rich results. Please note that Google’s Rich Result Test is only valid for certain supported rich result types.

Deploying Your Markup

If you are satisfied with your markup, ensure that your integration method is set up and the markup will deploy to your page. 

What’s next?

Schema markup is constantly evolving and as such, it is unfortunately not something you can simply set and forget. It also has limitless possibilities beyond just your homepage markup. We will provide you with some tips to manage both your existing markup and new opportunities. 

Maintain your Local Business schema markup

It’s important to update your schema markup based on content changes on your site and updates to Google’s documentation.

Google has recently begun posting all changes regarding structured data on their “What’s new” page. Keeping an eye on this will help you stay on top of any changes.

Another great resource is Google’s Webmasters Blog. You can subscribe via email and get all the latest news right in your inbox. 

Sign up for our newsletter to receive timely updates about the ever-changing schema markup world.

 

Expand your local business schema markup

You’ve done your homepage markup and are now wondering: What next? That’s a great question! 

Here is a summary of schema types you may want to use for other common pages on your website. To make things even simpler, you’ll find links to tutorials further defining each of these.  

Contact Us

If you have a “Contact Us” page on your website, you can create a ContactPage data item and connect the various types of locations and phone numbers as ContactPoints

For example, if you have a sales line and a technical support line, you can have these as Contact Point data items, linked to the Contact Page data item via the “main entity” property.  

You can find more detail about this here

About Us

For your About Us page, you can create an AboutPage data item. You will see that there are no required or recommended fields for this data item. That being said, you can still fill out the relevant fields. We recommend linking the homepage data item using the about property. 

Based on the kind of information you have on your About page, you can use as many or as little properties as you want to describe this data item. 

FAQs

If you have a page dedicated to frequently asked questions, marking this up with FAQPage schema is a great way to make this page eligible for Google Rich Results.

This tutorial takes you through the step-by-step of how to do this markup. 

You can also create FAQPage markup for FAQs that live on other pages, such as within blogs, tutorials, or even at the bottom of your menu page. 

In order to link these together, you’ll want to use our Schema Paths tool to determine the best property for the linkage. Here is a link to a tutorial on how to use our Schema Paths tool. Often, the about property is the best way to state that the FAQPage is about the LocalBusiness.

Blog

If you have a blog and blog posts on your site you will want to add Blog and BlogPosting markup. This can be done via a plugin, such as our WordPress plugin, manually via our Schema App Editor or at scale (lots of pages) and dynamically through our Schema App Highlighter.  BlogPosting data items are often connected back to the LocalBusiness using the about, author, publisher, or sourceOrganization properties.

News

If you have news articles on your website you can add NewsArticle markup with a plugin or with our tool. Check out this video which shows how to add article markup via the Schema App Editor. Properties to connect NewsArticle markup back to the LocalBusiness are similar to those used for BlogPosting.

Product

If you have products on your website you could be eligible for rich results if you apply the Product schema markup correctly. If you are on Shopify, BigCommerce or WooCommerce, you can install our easy to use plugin which will automatically markup your product pages.

We also have a highlighter tool, which is part of our premium subscription which can help you create markup and apply it across all our pages. Check out this great tutorial to learn more about product markup with our highlighter tool. It’s best to connect Products back to your LocalBusiness via the manufacturer or brand properties provided they appropriately define the relationship. 

💡 TIP! Markup you create for other pages should always connect back to your homepage in some way since it’s the heart of the knowledge graph of your content.

Frequently Asked Questions about Local Business Schema Markup

Is it better to use LocalBusiness or Organization markup?

Use the LocalBusiness type (or one of its subtypes) if the business is a brick-and-mortar facility that has address information publicly available. If the business doesn’t have an address associated with it—for example it’s an eCommerce business or a service provider that does house calls—the Organization type may be the better choice. Both of these types are eligible for rich results within search, but LocalBusiness rich results are more robust.

If you’re still unsure which type to use, ask yourself the following questions:

  1. Does the business have a physical location people would walk into? If the answer is no, you should probably use the Organization type.
  2. Is there a schema.org type/class that fits well? If yes, use that type. If not, use a broader type, and provide a more specific definition by linking to Wikipedia or Wikidata by way of the additionalType or sameAs property.

How can I mark up a business that has multiple locations?

If your business has multiple locations, there are a few different ways you can mark them up. Your strategy should be informed by the architecture of your site.

If the business defined on the homepage DOES NOT have an address, use the Organization type.

    1.  If the other locations (and their addresses) are also listed on the homepage, select the Organization’s subOrganization property, and create LocalBusiness markup for each of the locations.
    2.  If each location has its own page, create a separate LocalBusiness data item for each location page. Then, from each LocalBusiness data item, use either the parentOrganization or branchOf property to connect back to the main Organization data item.

If the business defined on the homepage DOES have an address and could be considered a “Headquarters”, use LocalBusiness or one of the more specific subtypes.

      1. If the other locations (and their addresses) are also listed on the homepage, select the main LocalBusiness’s subOrganization property, and create LocalBusiness markup for each of the subsidiary locations.
      2. If each subsidiary location has its own page, create a separate LocalBusiness data item for each location page. Then, from each subsidiary LocalBusiness data item, use either the parentOrganization or branchOf property to connect back to the main LocalBusiness data item.

If you don’t feel the subOrganization, parentOrganization or branchOf properties adequate describe the relationship between your entities, use the Schema Paths tool to see all the properties that are available to the types you’re connecting. 

What is a multi-type entity and when should I use it?

A multi-type entity (MTE) is one entity that is defined using multiple schema.org types (though usually not more than two). Creating a multi-type data item allows you to utilize all the properties available to both types. You may want to create a multi-type entity for your business if, for example, you’re using the Physician Local Business type and want to add alumni information that’s only available to the Person type. To resolve this, your local business would be typed as both Physician and Person.

Can I use external ratings and reviews (e.g. Google or Yelp) to add Review or AggregateRating markup to my Local Business?

AggregateRating and Review markup can only be created if the content is visible on the page. According to Google’s documentation, this markup is only eligible for review snippet rich results if the information is coming from a third party application to show impartiality. What’s more, while the Local Business type is eligible for rich results with AggregateRating and Review markup, the Organization type is only eligible for rich results with Review markup. For more information about how to create review markup, see Creating “Review” Schema Markup Using the Schema App Editor.

How should I mark up an action?

Google no longer supports potentialAction markup but instead states: If you want to help users to make a reservation or place an order directly in Search results, you can use the Maps Booking API to enable bookings, payments, and other actions. If you’re interested in creating SearchAction markup to be eligible for the Sitelinks Searchbox feature, see How to create Sitelinks Searchbox markup.

Schema App is at the forefront of schema markup strategy and implementation, providing solutions to some of top clients across the world. To learn more about our structured data solutions and how we could help you reach your online business goals, contact our expert team. We’d love to hear from you and help you get started!

Do you need help marking up your local business with structured data?

 

Martha is the CEO and co-founder of Schema App. She is an active member of the search engine optimization community, and the work that she does through Schema App is helping brands from all over the world improve their organic search performance.

Menu