What you will learn
- LocalBusiness, OpeningHours, GeoCoordinates, and structured data for local SEO.
- Practical understanding of local business schema and how it applies to real websites
- Key concepts from local schema markup and local business structured data
Quick Answer
Local schema markup is structured data code you add to your website that tells search engines exactly what your business is, where it is located, when it is open, and what services it offers. It uses the LocalBusiness schema type from Schema.org and helps Google display rich results with your business details.
What Is Local Schema Markup?
Schema markup is a vocabulary of structured data that search engines understand. When you add LocalBusiness schema to your website, you are translating your business information into a language Google can read unambiguously.
Without schema, Google has to guess what your address is by parsing your HTML. With schema, you tell it explicitly: "This is my street address. This is my city. These are my hours. This is my phone number." No guessing required.
Only 33% of websites use any form of structured data (W3Techs, 2024). Among local businesses, the adoption rate is even lower. Adding LocalBusiness schema gives you a competitive advantage that most of your competitors are not using.
The LocalBusiness Schema Type
Schema.org offers a hierarchy of business types. LocalBusiness is the parent type, with dozens of more specific subtypes:
- LocalBusiness (generic - use if no specific type fits)
- Restaurant - for food establishments
- Dentist, Physician, Pharmacy - healthcare
- LegalService, AccountingService - professional services
- AutoRepair, AutoDealer - automotive
- BeautySalon, HairSalon - personal care
- RealEstateAgent, InsuranceAgency - financial services
- PlumbingService, ElectricalService - home services
Always use the most specific type available. A dental clinic should use Dentist, not LocalBusiness. Specificity helps Google categorize your business more accurately.
Essential Properties
Here are the properties every local business should include in their schema markup:
Core Business Information
| Property | Description | Required |
|---|---|---|
| @type | Most specific LocalBusiness subtype | Yes |
| name | Official business name (match GBP exactly) | Yes |
| address | PostalAddress with street, city, state, postal code, country | Yes |
| telephone | Primary phone number with country code | Yes |
| url | Website URL | Yes |
| image | Business photo URL | Recommended |
| priceRange | Price indicator (e.g., "$$" or "INR 500-5000") | Recommended |
Address (PostalAddress)
The address property uses a nested PostalAddress type with specific fields:
- streetAddress - your street number and name
- addressLocality - city name
- addressRegion - state or province
- postalCode - PIN code or ZIP code
- addressCountry - two-letter country code (IN, US, GB)
Match these exactly to your Google Business Profile. If your GBP says "Gurgaon" do not use "Gurugram" in your schema. Consistency across all platforms reinforces trust.
Geographic Coordinates
Adding latitude and longitude removes all ambiguity about your location:
- geo.latitude - decimal latitude (e.g., 28.4595)
- geo.longitude - decimal longitude (e.g., 77.0266)
Get your exact coordinates from Google Maps: right-click your location and the coordinates appear. Geo coordinates help Google pinpoint your location precisely, which can improve proximity-based ranking accuracy.
Opening Hours Specification
The openingHoursSpecification property tells search engines exactly when you are open. Each day or range of days gets its own entry with dayOfWeek, opens, and closes times.
Use ISO 8601 format for times (e.g., "09:00" not "9 AM"). Days of the week use their full Schema.org names: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday.
For businesses open 24 hours, use opens: "00:00" and closes: "23:59". For businesses closed on certain days, simply omit those days from the specification.
Service Area Business Schema
If your business goes to customers (plumber, electrician, delivery), use the areaServed property instead of or in addition to your address:
- GeoCircle - a radius around a point (useful for "we serve within 20km")
- City - list specific cities you serve
- State - for statewide services
- AdministrativeArea - for districts or regions
Service area businesses should still include their physical address in schema (where they dispatch from) but can add areaServed to indicate their coverage zone.
Quick Answer
Every local business website should have JSON-LD schema markup with at minimum: the most specific @type, business name, full PostalAddress, telephone, URL, geo coordinates, openingHoursSpecification, and image. Use areaServed for service-area businesses and match every detail exactly to your Google Business Profile.
Multi-Location Schema
Businesses with multiple locations need schema on each location page. There are two approaches:
Approach 1: Individual Location Pages
Each location has its own page with its own LocalBusiness schema. This is the recommended approach. Each page has unique name (with location), address, phone, hours, and geo coordinates.
Approach 2: Organization With Locations
Your main website uses Organization schema with a department property listing each location as a nested LocalBusiness. Use this when all locations share the same brand page.
Businesses with proper schema markup for multiple locations see 30% better visibility in local search across their combined service areas (Search Engine Journal, 2024). Each location with its own schema competes independently in its local market.
Additional Schema Types for Local Businesses
Beyond LocalBusiness, combine these schema types for richer results:
- FAQPage - mark up your FAQ section for rich snippets in search
- BreadcrumbList - helps Google understand your site hierarchy
- Service - detail individual services with descriptions and pricing
- Event - for businesses that host events
- Menu - for restaurants (links to menu items with prices)
Pages with structured data receive 43% higher click-through rates from search results (Milestone Research, 2024). Schema does not directly impact rankings, but the improved CTR from rich results sends positive engagement signals that indirectly help.
Testing and Validating Your Schema
After adding schema markup, validate it using:
- Google Rich Results Test (search.google.com/test/rich-results) - shows what rich results your page is eligible for
- Schema Markup Validator (validator.schema.org) - validates against the Schema.org specification
- Google Search Console - reports schema errors and warnings across your site over time
Common errors to watch for:
- Missing required properties (name, address, telephone)
- Invalid time format in opening hours
- Incorrect @type (using a type that does not exist in Schema.org)
- Mismatched data between schema and visible page content
Key Takeaways
- Only 33% of websites use structured data - local schema is a competitive advantage
- Use the most specific LocalBusiness subtype (Dentist, Restaurant, not generic LocalBusiness)
- Include address, geo coordinates, phone, hours, and image at minimum
- Match every schema property exactly to your Google Business Profile information
- Multi-location businesses need separate schema on each location page
- Pages with structured data get 43% higher click-through rates
- Always validate schema using Google Rich Results Test before publishing