Back to blog
Schema Markup Validator8 min readApril 18, 2026

LocalBusiness Schema: Complete Guide for Local Businesses

LocalBusiness schema helps Google display your business in local searches with hours, phone number, and ratings. Learn how to implement it correctly for restaurants, stores, clinics, and any business with a physical address.


If you have a business with a physical address, LocalBusiness schema is possibly the highest-impact schema type you can implement. It provides Google with structured data about your business that it can display in the Knowledge Panel, in Google Maps, and in local search results — name, address, hours, phone number, ratings, and much more.

Most common LocalBusiness types

LocalBusiness is the generic type, but Schema.org has more specific subtypes that add additional relevant properties for each sector. Always use the most specific available subtype.

Business typeRecommended schema
Restaurant, bar, caféRestaurant (or FoodEstablishment)
Hotel, hostelHotel (or LodgingBusiness)
Clinic, doctor, dentistMedicalClinic, Dentist, Physician
Lawyer, notaryLegalService, Attorney
Gym, spaSportsActivityLocation, HealthClub
Physical storeStore (or subtype: ClothingStore, ElectronicsStore...)
Auto repair shopAutoRepair
Real estate agencyRealEstateAgent
Generic businessLocalBusiness

Complete LocalBusiness implementation

json
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "name": "The Corner Restaurant",
  "description": "Traditional home cooking in the heart of downtown.",
  "url": "https://thecorner.com",
  "telephone": "+1-555-123-4567",
  "email": "reservations@thecorner.com",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 Main Street",
    "addressLocality": "New York",
    "addressRegion": "NY",
    "postalCode": "10001",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 40.7128,
    "longitude": -74.0060
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "11:00",
      "closes": "15:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "18:00",
      "closes": "22:30"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday", "Sunday"],
      "opens": "12:00",
      "closes": "23:00"
    }
  ],
  "image": [
    "https://thecorner.com/photos/interior.jpg",
    "https://thecorner.com/photos/dishes.jpg"
  ],
  "priceRange": "$$",
  "servesCuisine": "American",
  "hasMap": "https://maps.google.com/?cid=123456789",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": "347",
    "bestRating": "5"
  },
  "sameAs": [
    "https://www.facebook.com/thecorner",
    "https://www.instagram.com/thecorner",
    "https://www.yelp.com/biz/thecorner"
  ]
}
</script>

Key LocalBusiness schema properties

PropertyStatusNotes
nameRequiredExact business name (same as in Google Business Profile)
addressRequiredFull address with PostalAddress
telephoneRecommendedWith international prefix (+1 for US)
openingHoursSpecificationRecommendedAllows showing hours in Knowledge Panel
geoRecommendedExact coordinates for Google Maps
imageRecommendedAt least one image, preferably several
aggregateRatingRecommendedOnly if you have a native review system on your website
priceRangeRecommendedScale from $ to $$$$
sameAsRecommendedURLs of social media and directory profiles

Do not use aggregateRating in the LocalBusiness schema to display Google Maps or Yelp ratings — this violates Google's guidelines. Only use aggregateRating if you have your own review system on your website with real user reviews.

OpeningHoursSpecification: special and holiday hours

For special holiday hours, you can use the specialized type with specific dates. This is especially useful for restaurants and stores that have reduced or extended hours during Christmas, Thanksgiving, or summer.

json
{
  "@type": "OpeningHoursSpecification",
  "opens": "10:00",
  "closes": "15:00",
  "validFrom": "2026-12-24",
  "validThrough": "2026-12-26"
}

LocalBusiness schema and Google Business Profile

The LocalBusiness schema on your website and your Google Business Profile (GBP) are complementary signals. Google cross-references both sources to build the Knowledge Panel for your business. If there are discrepancies between the schema and the GBP (different name, different address, mismatched hours), Google may display incorrect information or ignore one of the two sources.

  • Make sure the name in the schema is exactly the same as in the Google Business Profile.
  • The address must match in format and content with the GBP.
  • The schema hours must always be kept up to date — if they change, update both sources.
  • The geo coordinates should point to the actual business location, not the postal address.

Businesses with multiple locations

If you have multiple branches, each location must have its own LocalBusiness schema on its own location page. Do not put a single schema with multiple addresses on the homepage. The correct structure is: one page per location, with a LocalBusiness schema specific to that location.

Use iRankly's Schema Validator to verify that each location page has the correct schema and that all required properties are present.

Try the tool for free

Schema Markup ValidatorAnalyze your URLs with {tool} by iRankly. No sign-up, no credit card.

Use tool for free

Try the tool for free

Analyze your URLs with Schema Markup Validator by iRankly. No sign-up, no credit card.

Use tool for free