Overview
Local SEO ranks a business in the Map Pack, Google Maps, and localized organic results. Google says local results rank on relevance, distance, and prominence. Distance is outside your control; Google Business Profile (GBP), citations, and reviews are the levers for the other two. It applies only to businesses with a physical location or a defined service area, and most developer-tool and SaaS sites should skip it.
Apply local SEO only when a place is part of the business
Use it when customers visit an address (store, office, restaurant), when you serve a defined area (plumber, photographer, lawyer), or when you are a regional B2B with location-specific compliance. Otherwise do not present as local; invest in content and internal-linking.
Claim and complete Google Business Profile
GBP is the ranking surface for local intent. Google can list an unclaimed business, but only a verified owner controls details, categories, and replies.
- Claim it at
business.google.comand verify with the method Google offers (postcard, phone, email, or video). - Fill every field: name, address, phone, hours, categories, attributes, description, photos.
- Pick the most specific primary category and add secondary ones that describe what the business is, not what it has. Google allows up to nine additional categories.
- Keep hours and holiday hours current. Post only when there is real news.
Mark up each location with LocalBusiness JSON-LD
The markup states business details in machine-readable form on your site and must agree with GBP. It does not replace the profile.
{
"@context": "https://schema.org",
"@type": "Restaurant",
"name": "Example Cafe",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "Springfield",
"addressRegion": "IL",
"postalCode": "62701",
"addressCountry": "US"
},
"telephone": "+1-555-555-5555",
"openingHoursSpecification": [
{ "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"], "opens": "08:00", "closes": "18:00" }
],
"geo": { "@type": "GeoCoordinates", "latitude": 39.78170, "longitude": -89.65010 }
}- Google requires
nameandaddress; it recommendstelephone,url,openingHoursSpecification, andgeo(at least 5 decimal places). - Use the most specific schema.org subtype that fits (
Restaurant,Dentist,Plumber). - Ship one block per location, on that location’s own page.
- Do not mark up reviews of your own business on your own pages with
LocalBusiness; Google makes pages ineligible for review stars when the reviewed entity controls the reviews.
Build one page per city, with unique content
A service business in several cities needs a page per city, not a list of cities.
- One URL per city (
/locations/austin/) with its own photos, testimonials, landmarks, and pricing. - Each page carries its own
LocalBusinessblock with that location’s details. - Avoid doorway pages. Dozens of near-identical pages with only the city name swapped violate Google’s doorway abuse policy.
Keep NAP consistent across every citation
A citation is a mention of the business name, address, and phone (NAP) on another site. Consistency builds trust and is hygiene, not the strongest signal.
- Choose one canonical spelling, address format, and phone format and use it everywhere. Conflicting phone numbers or old addresses cause real confusion.
- The website footer, contact page,
LocalBusinessmarkup, and GBP must match exactly. - Audit with Moz Local, BrightLocal, or Whitespark, and fix mismatches rather than abandoning old listings.
- List first on Google Business Profile, Apple Maps, Bing Places, Yelp, and Facebook, then on vertical directories your customers use (Avvo, Houzz, OpenTable) and local ones. The tiering is a practitioner prioritization, not a Google list. Skip paid services that push listings to hundreds of scraped directories.
Earn Google reviews, answer them, and never manufacture them
Google says more reviews and positive ratings can improve local ranking. Any star or count target is a practitioner goal, not a Google threshold.
- Ask every customer at the moment of value, with a direct-link QR code.
- Reply to every review. Answer negative ones with facts and a next step; the audience is future customers.
- Never buy reviews, write them for customers, or offer incentives such as discounts. Google’s policy prohibits fake engagement and incentivized reviews.
- Never gate reviews by soliciting only happy customers. Google forbids selectively soliciting positive reviews.
- Flag policy-violating reviews through the profile’s reporting tool instead of arguing in a reply.
Related
- content
- structured-data
- schema-markup-deep
- technical
- e-e-a-t
- hreflang: for language and country variants, not city targeting
- glossary
- audit-checklist