Skip to content

Free tool

Local business schema generator

Fill in your business details and get LocalBusiness JSON-LD to paste into your website: address, opening hours, map location and the areas you serve. It follows the properties Google lists for local businesses and tells you what's missing as you type.

Your business

Google asks for the most specific type that fits. Not listed? Pick the closest group, or Local business.

Your homepage, or this location's page if you have several.

With the country code.

Like $$ or $20 to $50.

Address

Two-letter code, like US, GB or CA.

Service-area business with no storefront? Fill in your city, region and country, and list the areas you serve below.

Map location

In Google Maps on a computer, right-click your location: the latitude and longitude are at the top of the menu. Click them to copy, then paste each number here.

The link to your business on Google Maps.

Opening hours
Images

A photo of your business that's on your website.

Profiles and areas

One link per line: Facebook, Instagram, Yelp, LinkedIn and so on.

One per line, like a city or county. Useful if you go to your customers.

Your LocalBusiness schema

It updates as you type. Paste it into the page it describes.

Required by Google

  • Add your business name. Google requires it.
  • Add your address. Google requires it: fill in at least your city, region and country.

Recommended

  • Add the address of this location's page on your website.
  • Add the phone number customers call.
  • Add a price range, like $$ or $20 to $50.
  • Add your map coordinates (latitude and longitude).
  • Add your opening hours.
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness"
}
</script>

After you publish, check the page with Google's Rich Results Test and the Schema Markup Validator. Nothing you type leaves your browser.

What does local business schema do?

The short answer: it describes your business to search engines in a standard format, so they don't have to guess your address, phone number and hours from the page text. Google calls this structured data and says it "uses structured data that it finds on the web to understand the content of the page" (from its introduction to structured data).

What it doesn't do is promise anything. Google's local business structured data page says it "does not guarantee that features that consume structured data will show up in search results", and its guide to local ranking doesn't mention schema at all. Your place on Google Maps comes from your Google Business Profile. Our guide to ranking higher on Google Maps covers what moves that. Add schema because it makes your website clear and consistent, not as a ranking trick.

Which properties does Google ask for?

Google's LocalBusiness documentation requires two properties and recommends the rest. Here is what it says about each, and what the generator does with it.

LocalBusiness properties: what Google says and what the generator does
PropertyGoogle saysThe generator
nameRequiredYour business name, as customers know it.
addressRequired. Include as many parts as you can.Street, city, region, postal code and country. A service-area business can leave out the street.
urlRecommended. The URL of this location's page; it must work.Adds https:// if you leave it out.
telephoneRecommended. Include the country and area code.Reminds you when the number has no country code.
geoRecommended. At least 5 decimal places.Checks the range and the decimals.
openingHoursSpecificationRecommendedGroups days with the same hours. Closed days, 24 hours, breaks and hours past midnight are written the way Google describes.
priceRangeRecommended. Under 100 characters.Leaves it out if it's too long.
menu, servesCuisineRecommended for food businessesAppear when you pick a food or drink type.
aggregateRating, reviewOnly for sites that collect reviews about other businessesNever added. See below.

Google's rules for hours are easy to get wrong by hand: a day you're closed is opens and closes both at 00:00, open 24 hours is 00:00 to 23:59, and hours past midnight (6 PM to 3 AM) stay in one block. The generator writes them that way.

The tool also fills in a few schema.org properties that Google's page doesn't list: logo, image, sameAs (your profiles on other sites), areaServed and hasMap (a link to your map). They're all valid on schema.org's LocalBusiness type. Google doesn't say whether it uses them for local businesses, so treat them as extra description, nothing more.

Why doesn't the generator add review stars?

Because Google won't show them. Its review snippet documentation says that when the business being reviewed controls the reviews about itself, its pages using LocalBusiness markup are ineligible for the star review feature. Copying your Google rating into your own schema is exactly that case. Google's structured data guidelines also warn that misleading markup can lead to a manual action, which removes a page's eligibility for rich results.

If you want reviews on your website for visitors to read, show them on the page itself. Our guide on embedding Google reviews on your website covers how.

Which business type should you pick?

Google's local business page says to use the most specific LocalBusiness type possible, so a plumber is Plumber, not LocalBusiness. Every type in the list is a LocalBusiness type on schema.org. Two common ones are left out on purpose: schema.org marks ProfessionalService and Attorney as deprecated, and recommends LegalService in place of Attorney. If nothing fits, pick the closest group or plain Local business.

The schema type is not your Google Business Profile category. They're separate lists, and you choose each on its own. Our guide to Google Business Profile categories covers the one that matters on Maps.

How do you add the schema to your website?

  1. Pick the page. Use your homepage if you have one location, or each location's own page if you have several, with one block per page.
  2. Check for existing schema first. Website builders and SEO plugins often add their own. Open your page, view its source and search for application/ld+json. If a LocalBusiness or Organization block is already there, edit or switch off that one rather than adding a second description of the same business.
  3. Paste the code. Use Copy code for anything that accepts HTML, or Copy JSON only for a box that asks for JSON-LD. The steps for common builders are below.
  4. Test it. Run the page through Google's Rich Results Test. Google's local business page says to "fix any critical errors"; non-critical issues aren't needed to be eligible. The Schema Markup Validator checks the code against schema.org.

WordPress

Paste the code with a plugin that adds code to a page's head or to the whole site, or in your theme's header if you edit theme files. If you use an SEO plugin, check its settings first: many already output business schema, and the fix is to complete theirs or turn it off, not to run two.

Wix

Wix already creates Local Business markup for your homepage from your Business Info, with your name, site URL, logo and address (Wix help). To add the fuller version from this tool, open Pages & Menu, click the More Actions icon next to the page, choose SEO basics, then the Advanced SEO tab and Structured Data Markup, and click +Add New Markup (Wix help). Wix accepts JSON-LD only, under 7,000 characters, up to five markups a page. Its help page doesn't say whether to include the script tag, so if the code doesn't go in, use Copy JSON only. Our advice: then exclude Wix's own Local business markup from the same menu, so the page describes your business once.

Squarespace

Use code injection. The site-wide Header field adds code to the head of every page; for one page, hover over it in the Pages panel, click the gear icon, then Advanced, and paste it into Page Header Code Injection. Squarespace says code injection is on the Core, Plus and Advanced plans and some legacy plans (Squarespace help).

How do you keep the schema accurate?

  • Show the same details on the page. Google's guidelines say "Don't mark up content that is not visible to readers of the page", so the address, phone and hours in the code should also be on the page.
  • Match your Business Profile and listings. Use the same name, address and phone number as your Google Business Profile and the directories you're listed on. Our list of free business listing sites helps you check them.
  • Update it when your hours change. When your regular hours change, update your Business Profile, your page and this code on the same day.

FAQ

Common questions

Does local business schema help my Google Maps ranking?

Google doesn't say it does. Its guide to local ranking names relevance, distance and popularity as the main factors and doesn't mention structured data. Schema helps Google read your website; your Google Business Profile is what shows on Maps.

Is JSON-LD better than microdata?

For most sites, yes. Google supports JSON-LD, Microdata and RDFa, and recommends JSON-LD if your site's setup allows it. It also sits in one block, so you can paste it without touching the rest of the page.

Should the code go in the head or the body of the page?

Either works. Google says JSON-LD can sit in a script tag in the head or the body, and that it can read JSON-LD that's added to the page by JavaScript or a website builder.

I have several locations. Do I need one schema or several?

One per location. Google describes url as the URL of the specific business location, so give each location its own page with its own block, address, phone and hours.

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

They do different jobs. Your Business Profile is what Google shows on Maps and in local results. Schema describes your business on your own website. Keep the details identical in both.

My business has no public address. What do I put?

Google lists address as required, so fill in your city, region, postal code and country and leave the street empty. Then list the towns or areas you serve under Areas you serve. That's our approach; Google's page doesn't cover service-area businesses.

Is the generator free?

Yes. There's no signup and no limit, and the code is built in your browser. Nothing you type is sent to us.

Start your 7-day free trial.

Pick a plan and try every feature free for 7 days. Cancel before the trial ends and you pay nothing.

Start free trial