LocalBusiness schema: a copyable example, and what gets you named in your city
The LocalBusiness JSON-LD block to paste, the subtype to pick, and the local work that puts your name in an assistant's city recommendation.
Published by AI Knows Us · Updated 12 October 2026
LocalBusiness schema is a JSON-LD block that describes one place customers can visit: its name, street address, phone number, coordinates, opening hours and price range. Write one block per location, put it on that location's own page, use the most specific subtype that fits your trade, and keep every value identical to what a visitor reads on the page. That makes your details machine readable everywhere at once. The names an assistant reaches for when somebody asks for the best option in a city come from three more places, and this page covers all of them: your Google Business Profile, your reviews, and the third party lists those engines quote.
Last verified: 08 October 2026
A copyable example
A working block for one clinic. Change the values, keep the structure.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Dentist",
"@id": "https://example.com/locations/indiranagar#localbusiness",
"name": "Example Dental Indiranagar",
"url": "https://example.com/locations/indiranagar",
"image": "https://example.com/img/indiranagar-clinic.jpg",
"telephone": "+91-80-4000-0000",
"email": "indiranagar@example.com",
"priceRange": "INR 500 to INR 15000",
"paymentAccepted": "Cash, UPI, Credit Card",
"address": {
"@type": "PostalAddress",
"streetAddress": "12, 100 Feet Road, Indiranagar",
"addressLocality": "Bengaluru",
"addressRegion": "KA",
"postalCode": "560038",
"addressCountry": "IN"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 12.9719,
"longitude": 77.6412
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "09:30",
"closes": "19:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Saturday",
"opens": "09:30",
"closes": "14:00"
}
],
"areaServed": { "@type": "City", "name": "Bengaluru" },
"parentOrganization": { "@id": "https://example.com/#organization" }
}
</script>
Use the most specific subtype
LocalBusiness is a subtype of Organization, and has subtypes of its own. The narrower the type, the more it tells a machine, so pick the one that fits your trade exactly.
| Business | Type to use |
|---|---|
| Dental clinic | Dentist |
| Law firm or advocate | LegalService, or Attorney |
| Restaurant or cafe | Restaurant, or CafeOrCoffeeShop |
| Retail shop | Store, or a narrower one such as ClothingStore |
| Clinic or diagnostic centre | MedicalClinic |
| Plumber, electrician, contractor | Plumber, Electrician, or HomeAndConstructionBusiness |
| Gym or studio | SportsActivityLocation, or HealthAndBeautyBusiness |
| Accountant or consultancy with an office | AccountingService, or ProfessionalService |
| Any other visitable address | LocalBusiness |
The fields that carry the weight
name,address,telephone. Match your signage, footer, contact page and Google Business Profile character for character. Getting those four to agree is the highest value edit here.image. A real photo of the place, on a URL that returns 200 to an anonymous request. Google's local business documentation lists the required and recommended properties, so keep it open as you work.openingHoursSpecification. Use this rather than the olderopeningHoursstring, in 24 hour times. Add holiday hours as a separate entry withvalidFromandvalidThrough.geo. Take the coordinates from your map pin.@idandparentOrganization. Give each location a stable id and point it at your company levelOrganizationid. That line tells a machine the branch and the company are one business. See how structured data affects whether AI quotes you.aggregateRating. Include it once real customer reviews are collected and shown on that page. Google's review snippet guidance covers self serving reviews, so keep the field tied to genuine ones.
Two rules make the markup count. Everything in it is also readable by a human on the page, and the block sits in the HTML your server returns, not in a tag manager.
Several locations
One page per location, one block per page, each with its own @id, address, coordinates and hours. The home page keeps the company level Organization block, and branches hang off it through parentOrganization. When you add a branch, change every field, coordinates included.
What the markup does for AI search
It gives every engine one parseable statement of your name, place, hours and contact route, and connects a branch to its parent company. When an assistant describes your business, it works from facts that agree with each other. It is also a single file edit you can verify in minutes. Technical GEO setup covers the rest of the plumbing.
What gets you named in your city
A city recommendation is assembled from map results, review sites and third party lists. Here is the work that puts you in each, in the order that pays off fastest.
- Claim and complete your Google Business Profile. It is the primary place Google expects local business information to be managed. Correct category, current hours, real photos.
- Make your details identical everywhere. Name, address and phone the same on your site, your profile and every directory that lists you. Tracking down one old number does more than any markup change.
- Build reviews on the sites engines read. Recency, specificity and your replies carry further than raw volume. Ask after the service, and answer critical ones in public. See reviews and directories in India.
- Get onto the third party lists assistants quote. Roundups, directories and local publications are what a "best in city" answer cites. See getting into best of lists.
- Give each location a page worth quoting. Services, prices where you publish them, parking, the languages your staff speak. Specifics get quoted.
- Keep the crawlers reading you: see which AI crawlers to allow in robots.txt.
For the same work laid out for a service business, see local services.
How to confirm it is live
- Check the block against the vocabulary in the Schema Markup Validator at
validator.schema.org. - Run the page through Google's Rich Results Test.
- Fetch the page anonymously and confirm the
ld+jsonblock is in the response body. - Open your
imageURL in a private window. - Read your schema and your Google Business Profile side by side and settle every field where they differ.
Where AI Knows Us fits
AI Knows Us measures whether ChatGPT, Gemini, Perplexity, Claude and Google AI Overviews name a business when buyers ask, finds the reasons it is not named, then fixes them by writing pages and getting the business onto the sites those engines read. Every tracking question is asked without naming the business, because naming it primes the engine. A free scan needs no account.
The LocalBusiness schema questions worth an answer
Is LocalBusiness schema worth adding when I already have a Google Business Profile?
Yes, and they do different jobs. The profile is what Google works from for local results. The schema states the same facts in a form every engine reads. Complete the profile first, then add the block.
Which type should I use when my trade is not in the list?
Use plain LocalBusiness. Accurate and general beats specific and wrong. Check the subtype list on schema.org first, since the vocabulary is wider than most guides show.
I work from home and visit customers. What should I publish?
Describe the area you cover with areaServed, keep address to the city, and set your Google Business Profile up as a service area business so the two agree. Buyers then get a clear answer about where you work.
Can I include ratings in the block?
Include aggregateRating once you are collecting genuine customer reviews and showing them on that page. Google's review snippet guidance covers self serving reviews, so keep the field tied to real ones.
Will this get my business named when somebody asks an assistant for the best option in my city?
The schema puts your facts in machine readable form, which every other step builds on. The names in a city answer come from your profile, your reviews and the lists assistants quote, so work the six steps above and measure which sources the answers use. See how to measure AI visibility.
How often should I update the block?
Whenever the facts change. Add holiday hours as dated entries, and keep a dated comment in the template.
What to do first
Open your location page, your Google Business Profile and your schema block in three tabs and settle every field where any two differ. Then paste your city's buying question into one assistant without naming your business, and read which sources it used. That list is your next month of work.