Structured data for local businesses: what schema.org LocalBusiness does and does not do

What structured data is, which fields Google asks for local businesses, how to test them and why they are no guarantee of a rich result.

Photograph of an orange measuring tape, tailor's chalk and shears on dark wool

Structured data is extra code on your pages that tells search engines, in plain “machine language”, what is there: this is a business, this is the address, these are the opening hours. For local business owners that sounds like a quick road to nicer search results, and there is a kernel of truth in that. But Google's documentation is clear about what it does and does not do. In this article we walk through what you need to know.

What is structured data?

Structured data is a standardised way of describing information about a page. The vocabulary comes from schema.org, a joint project of major search engines. Google supports three formats: JSON-LD, Microdata and RDFa, and states that JSON-LD is the recommended format. JSON-LD sits as a separate block in the page, apart from the visible layout, making it easy to add and maintain.

What does Google do with it for local businesses?

According to Google, local business markup can help get your information shown in Search and Maps, for example in a knowledge panel. In it you describe your name, address, phone number, opening hours and departments, among other things. For Google the required parts include the context, the type, the name and the address; the other fields are recommended.

Important: structured data is no guarantee. Google writes on its guidelines page that structured data makes it possible for a search feature to appear, but does not guarantee that it will, even if the markup is technically correct. Search results are tailored to location, device and search history, among other things.

The link with your Google Business Profile

For local visibility your Google Business Profile is the most important source. Google itself says that businesses with complete and accurate information appear in local results more often. Your markup on the website is a supplement, not a replacement. Make sure the details match. Read our article Local SEO and Google Business Profile for the profile itself.

Which fields do you use?

Basic markup for a business with one location contains:

  • @type: the most specific type that fits, such as LocalBusiness or a subtype such as Dentist, Restaurant or HairSalon.
  • name: your business name, exactly as in your profile.
  • address: street, town, postcode and country, as part of a PostalAddress.
  • telephone and url: your phone number and main page.
  • openingHoursSpecification: your opening hours, per day or group of days.
  • geo: coordinates, if you are sure of them.
  • image: a suitable image of your business.
  • priceRange: optional, in plain terms.

If your business is a service-area business without a visitor address, you can stick to the fields that are true. Do not add anything that is not true.

A simple example

In JSON-LD this is one block with the values “@context” (schema.org), “@type” (LocalBusiness), the name, the url, the phone number, a nested “address” of type PostalAddress and a list of opening hours per weekday. Your developer or CMS can generate that block for you; what matters is that every value matches the visible page.

Place it on the page where that information is also visible, usually your contact page or homepage.

Google's rules

From Google's general guidelines it follows that your markup:

  1. Must match the visible content. Do not mark up information visitors cannot see.
  2. Must not be misleading. Data that is not representative of the main content of the page can make you ineligible for a rich result.
  3. Must be accessible to Googlebot. Do not block the page with robots.txt or noindex.
  4. Must be correct and current. Update the markup when opening hours or address change.

If you violate the guidelines, it can lead to a manual action where your pages lose eligibility for display as a rich result. According to Google, that does not affect how the page ranks in regular search results.

Testing and checking

  1. Validate your code with Google's Rich Results Test and with the URL Inspection tool in Search Console.
  2. Place the markup on a few pages first and check those before you change everything.
  3. After changes, check that the data still matches your profile, website and other listings.

Common mistakes

  • Markup for reviews you wrote yourself or that are not on the page. Google's guidelines prohibit that.
  • Multiple conflicting blocks on the same page, for example from a plugin and manual code at once.
  • An outdated address or phone number. Markup must match what is on the page and in your business profile.
  • The wrong type. “LocalBusiness” is fine if you cannot find a subtype, but choose a more specific one if it fits.

What it delivers (and what not)

Structured data helps search engines understand your pages better and makes it possible for them to be shown in a richer way. What it does not do: rescue poor content, replace a missing Google Business Profile or guarantee a higher position. Think of it as tidy administration: little work, little risk, sometimes useful.

In conclusion

At CUBO Agency we deliver websites with clean markup that matches your visible details, and we re-check it after every change. Want us to review your current site? Book a free intro call.

Sources

Reviewed on 28 October 2026 against the sources below. Rules and guidelines change; this article is general information, not legal or tax advice.

Curious what this means for your business? Book a free intro call, in the evening between 6:30 and 8:30 pm.

Book an intro call