Getting found on Google

Schema markup for a local business, explained for owners.

Schema markup is a block of code on your website that states your business details in a form Google reads without guessing. This guide explains what it does and does not do, which fields matter for a local business, and how to check yours without reading code.

Updated 29 October 2026, about 8 minutes to read

The short answer

LocalBusiness schema is code on your website that states your name, address, phone number, opening hours and type of business in a fixed format Google reads directly. Google requires only the name and address, and recommends hours, phone, the page address and map coordinates. It helps Google read your details correctly. It does not lift your rankings by itself, it earns no stars for your own reviews, and FAQ results have gone from Google.

What schema markup is

Schema markup, also called structured data, is a short block of code in a web page that describes what the page is about in a shared vocabulary, published at schema.org. Visitors never see it. Search engines read it to understand the page without guessing.

For a local business, the useful part is the LocalBusiness type and its more specific relatives. In plain words, the block on a dental practice's contact page says: this is a dentist called Riverside Dental, at this address and these map coordinates, open Monday to Friday from 8am to 6pm, on this phone number, and this page is its home on the web.

Most sites write it in a format called JSON-LD, which sits in the page code apart from the visible text. You do not need to read it to check it, as the testing section below shows.

What it does for a local business

Google's documentation says the markup can tell it about your business hours, your departments and, where they apply, reviews. When people search for a business, Google may show a panel of details about it, and markup is one way to hand Google those details in a form it does not have to interpret.

It helps most when Google could otherwise get it wrong:

  • Several businesses share your name, and Google needs to know which one this page belongs to.
  • The page mentions more than one phone number or set of hours, and the markup says which are current.
  • You have several locations, each with its own page, hours and phone number.

It is one more consistent source next to your Business Profile, not a replacement for it. Map results come from Business Profiles, which Google ranks on relevance, distance and prominence.

What it does not do

Plenty of offers sell schema markup as a ranking trick. Google's own documentation describes structured data as a way to help it understand pages and to make them eligible for certain kinds of result, and it says plainly that it does not promise your markup will show in results, even when it is correct. Nothing in it promises a higher position.

So it will not:

  • Move your profile up the map. That still depends on relevance, distance and prominence.
  • Put review stars next to your own site in results, for the reason explained below.
  • Bring back FAQ results, which Google no longer shows.
  • Get you into AI answers. Google says no special markup is needed for AI Overviews or AI Mode, and how a local business shows up in Google's AI answers covers what does help.

It is worth having because it is cheap once built in and stops Google guessing. It is not worth buying as a growth plan.

The fields worth filling

Google's documentation for local businesses requires two properties and recommends several more. The ones that matter for most businesses:

  • name: the business name exactly as on your sign and your Business Profile. Required.
  • address: the full postal address, with as many parts as you can give, such as street, town, postcode and country. Required.
  • telephone: the main customer number, with the country and area codes.
  • url: the page for this location. Google says the link must work.
  • openingHoursSpecification: opening and closing times for each day. It can carry start and end dates, for seasonal hours or a seasonal closure.
  • geo: latitude and longitude, which Google says need at least five decimal places.
  • priceRange: a rough price level, under 100 characters, if you want to state one.

Restaurants can add menu, for the address of the menu page, and servesCuisine. A business with separate departments, such as a car dealership whose service centre keeps different hours from the showroom, can describe each department inside the main block.

Use the most specific type that fits, as Google advises: Dentist, Plumber or Restaurant rather than plain LocalBusiness. A business that is two things at once, such as a bakery that is also a cafe, can list both types.

One location, field by field

Here is what the block for one practice holds, in plain words rather than code. The values come from the practice's master record, the same one its Business Profile uses:

  • Type: Dentist.
  • Name: Riverside Dental, as on the sign.
  • Address: the street, the town, the postcode and the country, each in its own part.
  • Telephone: the reception number, written with the country code.
  • Url: the practice's contact page, which shows the same address and hours.
  • Opening hours: Monday to Friday, 08:00 to 18:00, and Saturday, 09:00 to 13:00.
  • Geo: the coordinates of the entrance, to five decimal places.
  • A second set of hours with start and end dates, for the week the practice closes each August.

Every value on that list also appears on the contact page, in words a patient can read. That is the test for any field: if a visitor cannot see it on the page, it does not belong in the markup.

Make it match the page and the profile

Google's structured data rules say not to mark up content that readers of the page cannot see, and to keep the information up to date. Hours in the markup that differ from the hours in your footer, or a phone number that appears nowhere on the page, break both. Markup that breaks Google's rules can earn a manual action, which takes away the page's eligibility for those special results.

It should match your Business Profile too. Google builds profiles partly from public web pages, including your own site, so a website that disagrees with your profile can lead Google to change the profile. Why Google changed your business hours covers that problem.

The safest setup is markup generated from the same place as the visible details, so changing the hours on the website changes both. Hand-written markup that nobody remembers is how a site ends up telling Google last summer's hours.

Why your own reviews get no stars

Star ratings in results are what many schema sellers promise, and they are exactly what a local business cannot get for its own reviews. Google's rules say that when a business controls the reviews about itself, its pages using LocalBusiness or Organization markup are not eligible for review stars. That covers reviews placed on your site directly and reviews shown through an embedded widget, such as a box of your Google or Facebook reviews.

Google recommends the review and aggregateRating fields only for sites that collect reviews about other businesses, such as a directory. So leave them out. Show real reviews to visitors as plain text with a link to where they were posted, and let your Business Profile carry your rating on the map. How to ask for Google reviews without breaking the rules covers collecting them.

What happened to FAQ results

For a few years, FAQ markup made questions and answers appear under a page in Google's results, and it was sold to every small business going. In August 2023 Google limited those results to well-known, authoritative government and health websites. Then it ended them: its documentation says the feature stopped appearing in Google Search from 7 May 2026, for every site, and the documentation for it was later removed.

Keep the questions and answers on your pages. Customers read them, and they answer what people search for. The FAQ markup itself no longer earns anything in Google's results, so do not pay anyone to add it.

If customers never visit you

LocalBusiness markup is built around a street address, and Google lists the address as required. If you hide your address on your Business Profile because you work from home and travel to customers, do not publish it in your website's markup either. The code is public, even if visitors never see it.

Use Organization markup instead, with the business name, logo, phone number and website, and write the towns you cover on the page itself. This site works the same way: GGSites has no premises customers visit, so its pages describe it as an organisation rather than a local business. Google Business Profile for a business without a storefront covers the profile side.

Several locations

A business with several sites should give each location its own page, with its own markup: name, address, phone number, hours and the address of that page. One block on the home page listing every branch tells Google less than one block per branch, on the page customers land on.

Match each block to that location's Business Profile, and link each profile to the same location page. The profile, the page and the markup then say the same thing three times, in three forms Google reads.

Check it without reading code

You can check any page yourself:

  • Run the page address through Google's structured data test, which Google's documentation links to. It lists the types it found, such as LocalBusiness or Dentist, with any errors or warnings.
  • Open the item it found and read the values: name, address, phone number, hours. Wrong values with no errors are still wrong.
  • In Search Console, inspect the live page with URL Inspection to confirm Google can fetch it, and that no noindex tag, robots.txt rule or login blocks it.
  • For anything Google's test does not cover, the Schema Markup Validator at validator.schema.org checks markup against the full schema.org vocabulary.

If the test finds two LocalBusiness blocks on one page, often one from a theme and one from a plugin, remove one. Two blocks that disagree are worse than one.

After a change, Google has to crawl the page again before it sees the new markup, which its documentation says can take several days. Google Search Console for business owners covers the reports that show how your pages appear.

How it gets onto your site

Many website platforms and SEO plugins add some markup from your settings, often Organization or a basic LocalBusiness block. Check what yours outputs with the test before you add anything, because a second block will clash with the first.

If you need it added by hand, a developer writes one JSON-LD block per location page, fills it from the master record of your business details, and tests it. It is a small job while the site is built, and easy to forget afterwards.

Structured data is part of every website we build, alongside the page titles, descriptions, sitemap and Search Console, as the websites page lists.

What to ask whoever builds your site

If someone else looks after your website, these questions tell you whether the markup is right without you touching code:

  • Which type does each location page use, and why that one?
  • Where do the values come from? The answer you want is the same place as the visible hours and phone number.
  • What happens to the markup when we change our hours or add a holiday closure?
  • Is there more than one block on the page, from the theme, a plugin or an app?
  • Can you send me a screenshot of Google's structured data test for the contact page?

When to leave it alone

If your site already outputs correct LocalBusiness markup that matches your profile, schema has nothing more to give you. Spend the time on the profile, the service pages and your reviews instead.

Be wary of anyone who sells schema as a ranking package, promises review stars for your own reviews, or offers FAQ markup for search results. Each claim runs against what Google's documentation says. What a small business website needs puts structured data in its place among the search basics.

Questions people ask

Does schema markup improve local rankings?

Not by itself. Google describes structured data as a way to understand pages and qualify for some result types, and map rankings come from the Business Profile, on relevance, distance and prominence. Markup helps Google read your website's details correctly, which supports the profile. It is worth having, not worth buying as a ranking plan.

What is the difference between LocalBusiness and Organization schema?

LocalBusiness describes a place customers can visit, with a street address, hours and phone number, and it has specific types such as Dentist or Restaurant. Organization describes the business as a whole: its name, logo and contact details. A shop or clinic uses LocalBusiness on its location page. A business with no premises customers visit uses Organization.

Do I need schema markup if I have a Google Business Profile?

The profile matters more for the map. Markup helps Google match your website to the profile and read the same details from both. If your website platform already outputs correct markup, you have what you need. If it outputs none, a simple block on the contact or location page is a small job.

Can I get review stars for my own website?

No. Google says a business that controls the reviews about itself is not eligible for review stars on its pages, whether the reviews are in the markup or shown through an embedded widget. Show real reviews to visitors with a link to where they were posted, and let your Business Profile show your rating.

How do I test my schema markup?

Run the page through Google's structured data test, linked from its documentation, and read the values it found as well as any errors. Use URL Inspection in Search Console to check that Google can fetch the live page. The Schema Markup Validator at validator.schema.org checks markup against the full schema.org vocabulary.

Why did my FAQ results disappear from Google?

Google limited FAQ results to well-known government and health websites in August 2023, and its documentation says the feature stopped appearing in Search for every site from 7 May 2026. Nothing is wrong with your page. Keep the questions and answers for your visitors, and drop any plan built on FAQ results.