20 Checks · Code Examples · Free

Local Schema & Structured Data Checklist

Complete guide to local schema markup. Covers LocalBusiness, PostalAddress, GeoCoordinates, OpeningHoursSpecification, areaServed, and hasMap. 20 checks.

Why Local Schema & Structured Data Matters

Local schema markup explicitly tells search engines what your business is, where it is, when it is open, and what it offers. LocalBusiness schema is the foundation of local structured data. Combined with PostalAddress, GeoCoordinates, and OpeningHoursSpecification, it creates a complete local entity signal.

Schema markup is especially important for AI search. When ChatGPT or Perplexity looks for local recommendations, they use structured data to identify and verify local businesses.

Local Schema & Structured Data 2026 | Local SEO Guide at a Glance

Scan all checks grouped by category before you start. Click any row to jump to its full explanation below.

CategoryChecklist Item
LocalBusiness Schema 1Add the correct LocalBusiness schema type to your website
LocalBusiness Schema 2Add complete PostalAddress to your schema
LocalBusiness Schema 3Add GeoCoordinates with latitude and longitude
LocalBusiness Schema 4Add OpeningHoursSpecification for your business hours
LocalBusiness Schema 5Add your telephone number in international format
Service Area Schema 6Add areaServed to specify your service areas
Service Area Schema 7Add hasMap property linking to your Google Maps listing
Service Area Schema 8Add sameAs property linking to your social profiles
Service Area Schema 9Add priceRange property for your services
Service Area Schema 10Add your website URL to the schema
Advanced Schema 11Add AggregateRating schema for star ratings in search results
Advanced Schema 12Add Review schema for individual customer reviews
Advanced Schema 13Add FAQ schema for frequently asked questions
Advanced Schema 14Add Service schema for each service you offer
Advanced Schema 15Validate your schema markup with Google Rich Results Test
Schema Monitoring 16Monitor schema errors in Google Search Console
Schema Monitoring 17Update schema when business information changes
Schema Monitoring 18Add schema to all location pages (if multi-location)
Schema Monitoring 19Add Event schema for local events you host or sponsor
Schema Monitoring 20Keep schema markup up to date with current standards

Local Schema & Structured Data Checklist

Click any item to check it off. Your progress saves automatically in your browser.

0 of 0 completed (0%)

LocalBusiness Schema 5 items

Add the correct LocalBusiness schema type to your website

Use the most specific LocalBusiness schema type available. A restaurant should use "Restaurant" schema, not just "LocalBusiness." A dentist should use "Dentist" schema. This helps search engines understand exactly what type of business you are and can enable rich results.

LocalBusiness schema subtypes:

1st step: Create JSON-LD script tag

2nd step: Add to your website's head section

3rd step: Or add before closing body tag

4th step: Test with Google Rich Results Test

Add complete PostalAddress to your schema

Include your full business address in your LocalBusiness schema using PostalAddress type. Include streetAddress, addressLocality, addressRegion, postalCode, and addressCountry. This must match your GBP address exactly for maximum NAP consistency.

PostalAddress schema example:

1st step: streetAddress: Full street address

2nd step: addressLocality: City

3rd step: addressRegion: State (2-letter code)

4th step: postalCode: ZIP code

5th step: addressCountry: Country code (US, CA, etc.)

Add GeoCoordinates with latitude and longitude

GeoCoordinates tells search engines your exact location. Add latitude and longitude to your LocalBusiness schema. You can find your coordinates by searching your address on Google Maps and copying the lat/long from the URL. This helps with proximity-based ranking.

GeoCoordinates schema example:

1st step: Go to Google Maps

2nd step: Search your address

3rd step: Right-click on your location

4th step: Click the coordinates at the top

5th step: Copy latitude and longitude

Add OpeningHoursSpecification for your business hours

OpeningHoursSpecification tells search engines when you are open. Add separate entries for each day of the week. Include opens and closes times. If you have different hours on different days, add separate entries for each day. This enables "Open now" features in search results.

OpeningHoursSpecification example:

1st step: Monday, Tuesday, Wednesday

2nd step: Thursday, Friday, Saturday

3rd step: Use 24-hour format: "09:00", "17:00"

4th step: Include leading zeros: "09:00" not "9:00"

5th step: Use "00:00" for midnight

Add your telephone number in international format

Include your business phone number in international format (+1 for US). This helps search engines and AI assistants correctly identify and display your phone number. Use the same phone number as your GBP listing for NAP consistency.

Telephone schema example:

1st step: Include country code: +1 (US/Canada)

2nd step: Use dashes between groups

3rd step: Include area code

4th step: Match GBP phone number exactly

Service Area Schema 5 items

Add areaServed to specify your service areas

areaServed tells search engines which geographic areas your business serves. Add cities, ZIP codes, or a radius. This is critical for service area businesses that go to customers instead of customers coming to them. Use the same service areas as your GBP listing.

areaServed schema examples:

1st step: Add "areaServed" property to your LocalBusiness schema

2nd step: Use City objects: @type City, name "Chicago"

3rd step: Or use ZIP codes: @type PostalCode, postalCode "60601"

4th step: Or use a radius: @type Circle, geoMidpoint, geoRadius "10mi"

5th step: Match your GBP service area configuration exactly

Add hasMap property linking to your Google Maps listing

hasMap links your schema to your Google Maps listing. This creates a direct connection between your website schema and your GBP listing. Use the URL of your Google Maps listing. This helps search engines verify your location and can improve your local rankings.

hasMap schema example:

1st step: Go to Google Maps

2nd step: Search for your business

3rd step: Click on your listing

4th step: Copy the URL from address bar

5th step: Use that URL in hasMap

Add sameAs property linking to your social profiles

sameAs links your schema to your social media profiles and other online listings. This helps search engines understand that your website, GBP, Yelp, Facebook, and other profiles all represent the same business. Add URLs for all your active social profiles and directory listings.

sameAs schema example:

1st step: Facebook page

2nd step: Instagram profile

3rd step: LinkedIn company page

4th step: Twitter/X profile

5th step: YouTube channel

Add priceRange property for your services

priceRange tells customers and search engines about your pricing level. Use "$", "$$", "$$$", or "$$$$" to indicate price range. This appears in search results and helps customers decide if your business fits their budget. It also helps with commercial intent matching.

priceRange schema example:

1st step: Google search results

2nd step: Knowledge Panel

3rd step: Google Maps listings

4th step: AI search recommendations

5th step: Be honest about your pricing

Add your website URL to the schema

Include your website URL in your LocalBusiness schema. This links your schema markup to your website and helps search engines verify that the schema belongs to your business. Use your canonical URL (with or without www, matching what your site uses).

URL schema example:

1st step: Use canonical URL

2nd step: Include https://

3rd step: Match your actual domain

4th step: Use consistent format

5th step: Don't use tracking parameters

Advanced Schema 5 items

Add AggregateRating schema for star ratings in search results

AggregateRating displays star ratings in Google search results. This increases click-through rates and builds trust. Include ratingValue (your average rating), reviewCount (total reviews), and bestRating (usually 5). Only add this if you have real reviews on your website or GBP.

AggregateRating schema example:

1st step: ratingValue: Your average rating (e.g., 4.8)

2nd step: reviewCount: Total number of reviews

3rd step: bestRating: Maximum rating (usually 5)

4th step: worstRating: Minimum rating (usually 1)

5th step: Google Business Profile reviews

Add Review schema for individual customer reviews

Review schema displays individual customer reviews in search results. Add reviews from real customers with their name, date, rating, and review text. This builds trust and can increase click-through rates. Only add genuine reviews that you can verify.

Review schema example:

1st step: Add @type Review with itemReviewed pointing to your LocalBusiness

2nd step: Include author: @type Person, name "Customer Name"

3rd step: Add reviewRating: @type Rating, ratingValue 5, bestRating 5

4th step: Include datePublished in ISO 8601 format

5th step: Add reviewBody with the actual review text

Add FAQ schema for frequently asked questions

FAQ schema displays questions and answers directly in search results. This increases your visibility and can drive more clicks. Add common questions about your business, services, pricing, and area. Each FAQ should have a question and a detailed answer.

FAQ schema example:

1st step: Add @type FAQPage with mainEntity array

2nd step: Each question: @type Question, name "Your question?"

3rd step: Each answer: @type Answer, text "Your answer."

4th step: Place in a script tag with application/ld+json type

5th step: Test with Google Rich Results Test

Add Service schema for each service you offer

Service schema describes each specific service your business offers. This helps search engines understand what you do and can enable rich results for service-specific searches. Add separate Service schema for each major service with description, area served, and provider.

Service schema example:

1st step: Add "@type":"Service" with "name" as your service name

2nd step: Add "provider" pointing to your LocalBusiness

3rd step: Include "areaServed" for service locations

4th step: Add "serviceType" for service category

5th step: Include "description" with service details

Validate your schema markup with Google Rich Results Test

After adding schema markup, test it with Google Rich Results Test to ensure it is valid and can generate rich results. Fix any errors or warnings. Also test with Schema.org validator for additional checks. Re-test after any changes to your schema.

Schema testing tools:

1st step: Google Rich Results Test:

2nd step: https://search.google.com/test/rich-results

3rd step: Enter your URL or code

4th step: Shows which rich results are eligible

5th step: Highlights errors and warnings

Schema Monitoring 5 items

Monitor schema errors in Google Search Console

Google Search Console shows schema errors and warnings under "Enhancements." Check this section weekly for any issues. Fix errors immediately as they can affect your rich results. Warnings are less critical but should still be addressed. Keep your schema error-free for maximum benefit.

How to monitor schema in Search Console:

1st step: Go to search.google.com/search-console

2nd step: Select your property

3rd step: Click "Enhancements" in left sidebar

4th step: Review each schema type:

5th step: LocalBusiness

Update schema when business information changes

When your business information changes (address, phone, hours, services), update your schema markup immediately. Outdated schema can confuse search engines and hurt your rankings. Create a checklist of all schema properties that need updating when business information changes.

Schema update checklist:

1st step: Update PostalAddress in schema

2nd step: Update GeoCoordinates

3rd step: Update GBP listing

4th step: Update all citations

5th step: Re-test schema

Add schema to all location pages (if multi-location)

If you have multiple locations, add separate LocalBusiness schema to each location page. Each schema should have unique NAP, GeoCoordinates, and OpeningHoursSpecification for that specific location. Link each location to the parent organization using parentOrganization.

Multi-location schema example:

1st step: Same structure

2nd step: Different address, geo, phone

3rd step: Same parentOrganization

Add Event schema for local events you host or sponsor

If your business hosts or sponsors local events, add Event schema to those pages. This can enable event rich results in search and Google Maps. Include event name, date, location, description, and organizer. Events are a great way to build local relevance and community engagement.

Event schema example:

1st step: Add "@type":"Event" with "name" as event title

2nd step: Add "startDate" in ISO 8601: "2026-09-15T18:00:00"

3rd step: Include "location" with your LocalBusiness reference

4th step: Add "description" with event details

5th step: Include "organizer" pointing to your business

Keep schema markup up to date with current standards

Schema.org regularly updates its vocabulary and best practices. Stay current with new schema types and properties that can benefit your local SEO. Follow the Schema.org blog and Google's structured data documentation for updates. Test your schema periodically to ensure it still validates.

Schema update resources:

1st step: https://schema.org/docs/releases.html

2nd step: Check for new LocalBusiness subtypes

3rd step: Review new properties

4th step: https://developers.google.com/search/docs/appearance/structured-data

5th step: Check for new supported types

Need More Local Customers

Let's Get Your Business Found Locally

Not showing up in local search? Competitors outranking you on Google Maps? Let's fix your local SEO.

Get a Free Local SEO Audit

Frequently Asked Questions

What is LocalBusiness schema?

LocalBusiness is a schema.org type that describes a local business. It includes name, address, phone, hours, and services. You should use the most specific subtype available — such as Restaurant, Dentist, or Plumber — instead of the generic LocalBusiness type. This helps search engines understand your exact business category and can unlock richer search features like knowledge panels and "Open now" labels.

How to add GeoCoordinates?

Add latitude and longitude to your LocalBusiness schema using the geo property with the GeoCoordinates type. You can find your exact coordinates by searching your address on Google Maps, right-clicking the pin, and copying the lat/long values. Accurate coordinates help search engines match your business to proximity-based local searches and improve your visibility in Google Maps results.

What is areaServed?

areaServed is a schema property that specifies which geographic areas your business serves. It is essential for service area businesses (plumbers, cleaners, consultants) that go to customers rather than having a storefront. You can define areas using City objects, PostalCode values, or a Circle with a radius — and these should match your Google Business Profile service area settings exactly.

How to add opening hours to schema?

Use OpeningHoursSpecification with dayOfWeek and opens/closes properties to define your business hours in schema. Add a separate entry for each day of the week, and use 24-hour format with leading zeros (e.g., "09:00", "17:00"). This enables Google to display "Open now" labels in search results and Maps, which directly influences whether nearby customers contact you.

What schema for local business?

LocalBusiness (or more specific types like Restaurant, Dentist, Plumber) with PostalAddress, GeoCoordinates, and OpeningHoursSpecification. You should also include areaServed, telephone, sameAs (for social profiles), and hasMap linking to your Google Maps listing. The more complete your schema, the stronger the entity signal to Google and AI search engines — which improves your chances of appearing in local packs, knowledge panels, and AI-generated recommendations.

AA

Amir Ali

Founder of Clienvora, a content marketing agency that combines SEO and copywriting to drive rankings, traffic, and revenue. This checklist is maintained and updated regularly.