Skip to content

LocalBusiness schema (JSON-LD): a copy-paste guide with examples

By Narek NikoghosyanUpdated 8 min read

The short answer

LocalBusiness schema is a short block of code on your website that states your business name, type, address, phone and opening hours in a form search engines and AI tools read without guessing. Google requires only a name and address. Use the most specific type, like Restaurant or Dentist, and paste it into your homepage.

What LocalBusiness schema is

Schema is a short block of code, usually in a format called JSON-LD, that states the facts about your business in a form machines can read without guessing: your name, what kind of business you are, your address, phone number and opening hours. Visitors don't see it; search engines and AI tools that read your page do.

LocalBusiness is the type for a business with a place customers visit or an area it serves. It comes from schema.org, the shared vocabulary that Google, Bing and others use. It has more specific types, like Restaurant, Dentist or Plumber, and you should use the most specific one that fits you.

Does schema help you appear in AI answers?

Honestly: it helps machines understand you, but it won't make AI recommend you on its own.

  • Google says there is “no special schema.org structured data” you need to appear in AI Overviews or AI Mode. What it does ask is that your structured data “matches the visible text on the page”.
  • Microsoft: Fabrice Canel, then a lead on Bing, said in March 2025 that schema markup helps Microsoft's AI models understand content. Bing's index is used by Copilot, and it's one of the sources ChatGPT search can draw on.
  • The facts AI repeats are the ones in your schema: your type of business, address, phone, hours. Stating them clearly, the same way as on your page and your listings, removes guesswork.

It takes about 15 minutes and costs nothing, so it's worth doing. Just don't expect it to replace the things that decide who gets recommended: clear text about what you do and where, AI crawlers being able to read your site, and being on the sites AI trusts in your city. Our guide to ranking in ChatGPT covers those.

Pick the most specific type

Google asks you to “use the most specific LocalBusiness sub-type possible”. If no specific type fits, use LocalBusiness. If you're several things at once, list them: "@type": ["Electrician", "Plumber"].

Schema types for common local businesses
Your businessSchema type
RestaurantRestaurant
Café or coffee shopCafeOrCoffeeShop
BakeryBakery
HotelHotel
Dental clinicDentist
Medical clinicMedicalClinic
Hair salonHairSalon
Beauty salonBeautySalon
Gym or fitness clubHealthClub
Law firmLegalService
Real estate agencyRealEstateAgent
Car repairAutoRepair
Plumber, electricianPlumber

These are 13 of the 130 types schema.org has for local businesses. Our schema generator lists all of them, grouped and searchable: type “nail”, “hostel” or “mechanic” to find yours.

The fields that matter

Google requires two fields and recommends the rest. Fill in every one you can, with the same details as on your page:

LocalBusiness schema fields
FieldWhat to put in it
nameYour business name, exactly as on your sign and listings. Required
addressStreet, city, postcode and country code (like GB or AM). Required
telephoneYour main number, with the country code: +44 161 496 0000
urlThe page of this business or location. It must work
openingHoursSpecificationDays with opening and closing times, 24-hour: 09:00 to 18:00
geoLatitude and longitude, with at least 5 decimal places
imageA photo of the business: the front, the room, your team
priceRange$$ or a range like $10–15, under 100 characters
servesCuisineRestaurants: the cuisine, like Italian
menuRestaurants: the full address of your menu page
areaServedIf you go to customers: the cities or districts you cover
sameAsLinks to your profiles: Google Maps, Instagram, Facebook, Tripadvisor

Hours: open past midnight is one entry, like 18:00 to 03:00. Open 24 hours is 00:00 to 23:59. For a day you're closed, leave the day out, or set both times to 00:00.

Reviews: don't add your own star rating. Google recommends review markup only for sites that collect reviews about other businesses, and ratings that aren't from real users on your page can lead to a penalty.

Three examples to copy

Replace every value with your own. Keep the punctuation as it is: one missing comma or quote breaks the whole block.

A restaurant: hours past midnight, cuisine and menu
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "name": "Example Bistro",
  "url": "https://www.example.com/",
  "telephone": "+374 10 123456",
  "image": "https://www.example.com/photos/dining-room.jpg",
  "priceRange": "$$",
  "servesCuisine": ["Armenian", "Mediterranean"],
  "menu": "https://www.example.com/menu",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "12 Example Street",
    "addressLocality": "Yerevan",
    "postalCode": "0010",
    "addressCountry": "AM"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 40.17762,
    "longitude": 44.51262
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday"],
      "opens": "12:00",
      "closes": "23:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Friday", "Saturday"],
      "opens": "12:00",
      "closes": "01:00"
    }
  ],
  "sameAs": [
    "https://www.instagram.com/examplebistro",
    "https://www.tripadvisor.com/Restaurant_Review-example"
  ]
}
</script>
A dental clinic: the essentials
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Dentist",
  "name": "Example Dental",
  "url": "https://www.example.com/",
  "telephone": "+44 161 496 0000",
  "image": "https://www.example.com/photos/clinic.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "1 Example Street",
    "addressLocality": "Manchester",
    "postalCode": "M1 1AA",
    "addressCountry": "GB"
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "08:30",
      "closes": "18:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": "Saturday",
      "opens": "09:00",
      "closes": "13:00"
    }
  ]
}
</script>

If you go to your customers and don't show your address, give your city and list the areas you cover, as a plumber would:

A business that goes to customers: open 24 hours
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Plumber",
  "name": "Example Plumbing",
  "url": "https://www.example.com/",
  "telephone": "+971 4 000 0000",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Dubai",
    "addressCountry": "AE"
  },
  "areaServed": ["Dubai Marina", "Jumeirah", "Downtown Dubai"],
  "openingHoursSpecification": {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
    "opens": "00:00",
    "closes": "23:59"
  }
}
</script>

Where to put the code

  • Any website: paste it into the <head> of your homepage, or of the page about this location.
  • WordPress: SEO plugins like Yoast and Rank Math add basic business schema in their settings. For the full code, use a plugin that adds code to the header.
  • Wix, Squarespace, Shopify and other builders: look for “custom code”, “code injection” or “header code” in the site settings.
  • Several locations: one block per location, on that location's own page, each with its own address, phone and hours.

Test it

  1. Google's Rich Results Test. Paste your page address or the code into search.google.com/test/rich-results and fix anything marked as an error.
  2. The Schema Markup Validator. validator.schema.org checks every schema.org field, including ones Google doesn't use.
  3. Check your page shows the same facts. The name, address, phone and hours in the code should be written on the page too, and match your Google Business Profile.

Common mistakes

  • Using LocalBusiness when a specific type exists. A dentist is a Dentist.
  • Facts that don't match your page or your Google Business Profile: old hours, a different phone number, an old address.
  • Marking up things visitors can't see, like services or reviews that aren't on the page. Google's rules say not to.
  • All branches in one block on the homepage, instead of one block per location page.
  • Example values left in: the example.com address, or coordinates of 0.0.

Our free check reads your website and tells you if the schema is missing or uses a general type, as part of its website readiness check.

Questions

What is LocalBusiness schema?

A block of structured data, usually JSON-LD, that describes a local business: its name, type, address, phone, opening hours and links. It uses the schema.org vocabulary that Google and Bing read.

Does schema help me appear in ChatGPT or Google's AI Overviews?

Not on its own. Google says no special schema is needed for AI Overviews or AI Mode, only that structured data matches the page. Microsoft has said schema helps its AI models understand content. It's worth adding because it states your facts clearly, but clear text, readable pages and mentions on trusted sites matter more.

Which fields are required?

Google requires name and address. It recommends telephone, url, opening hours, geo coordinates, image and price range, and for restaurants servesCuisine and menu.

Can I add my Google reviews to my schema?

Better not. Google recommends review and rating markup only for sites that collect reviews about other businesses, and ratings that aren't from real users on your page can lead to a penalty.

Where do I paste the code?

In the head of your homepage, or of each location's own page. Website builders call this custom code, code injection or header code; on WordPress an SEO plugin or a header code plugin does it.

How do I check that it works?

Paste your page address into Google's Rich Results Test and fix any errors. The Schema Markup Validator at validator.schema.org checks every field.

Sources

  1. Google Search Central: Local business (LocalBusiness) structured data, checked 3 Nov 2026
  2. Google Search Central: AI features and your website
  3. Google Search Central: General structured data guidelines
  4. schema.org: LocalBusiness
  5. Search Engine Land: Microsoft Bing, Copilot use schema for its LLMs (March 2025)

Narek Nikoghosyan · Founder and CEO
Narek Nikoghosyan is the founder and CEO of stuckUP, the AI visibility checker for local businesses.