Local SEO
Making a business eligible and prominent in place-qualified results — how Google says local ranking is decided, what the structured data requires, and what changes when an assistant answers instead.
Karl-Gustav Kallasmaa, Founder & CEOLast updated Local SEO is the practice of making a business eligible for, and prominent in, results that are qualified by place — map listings, "near me" queries, and the place facts an assistant repeats when someone asks where to go. It differs from the rest of SEO in one structural way: the searcher's location is an input to ranking that the publisher does not control.
How the ranking is decided
Google's Business Profile Help names three factors and does not hide them behind a metaphor:
- Relevance — how well a Business Profile matches what someone is searching for. Complete, detailed business information is what makes a match possible; a category left blank cannot match anything.
- Distance — how far each business is from the searcher, using the location given or the location Google infers.
- Prominence — how well known a business is, influenced by links pointing to it and by the quantity and quality of reviews.
Two consequences follow immediately. Distance is not a lever; a business does not become closer by publishing better pages, which is why the same query returns different businesses to two people standing a mile apart. And Google states plainly on the same page that there is no way to request or pay for a better local ranking, so any offer to buy one is selling something else.
The machine-readable layer
Place facts travel further when they are written for a parser. Google's LocalBusiness structured data reference requires only two properties — name and address, the latter as a PostalAddress with streetAddress, addressLocality, addressRegion, postalCode and addressCountry. Everything else is recommended: geo, openingHoursSpecification, telephone, url, priceRange, menu, servesCuisine, department, aggregateRating, review.
The recommended set is where the value is, and also where the silent failures are. Google documents that priceRange must be shorter than 100 characters or the price range simply will not be shown; that geo should carry at least five decimal places of precision; that times use hh:mm:ss and seasonal dates use YYYY-MM-DD; and that a business with more than one type declares them as an array, because additionalType is not supported. None of these produce an error message on the page. They produce an absence. See schema markup for the general mechanics.
What changes when an assistant answers
A map result shows a listing. An assistant states a fact — the address, the hours, whether the place is open now — and usually states it without the listing around it. That shifts the risk from ranking to correctness.
Google's AI features documentation says there are no additional requirements to appear in AI Overviews or AI Mode and no special optimizations necessary, and that a page must be indexed and eligible to be shown with a snippet to be used as a supporting link. So the eligibility path is the ordinary one. What is new is the extraction path: a passage is lifted out and repeated, and the surrounding page does not travel with it. A sentence reading "we open at nine, except in July" is safe on a page and dangerous out of context. Write the qualifier into the same sentence as the fact.
The other change is that the answer is assembled from whichever copy of a place fact retrieval happened to reach. A business's hours exist on its profile, on its own site, inside its structured data and across directories it does not control. Nothing reconciles them. Consistency across the copies you own is the only lever, and it is the highest-value maintenance task in local SEO. See entity SEO for why an entity with agreeing descriptions is easier for a system to resolve at all.
Failure modes
- Categories and hours left partially filled. Relevance is computed against what is there. An empty field is not neutral; it is an absence of evidence.
- Structured data that disagrees with the visible page. Two answers to the same question, and no rule about which wins.
- One page for many locations. A single page cannot be the closest result to several places at once; distance is per location.
- Reviews treated as a score to raise rather than as evidence. Google names review quantity and quality inside prominence, and the same help page rules out paying for position.
- Client-rendered contact details. A fact that appears only after JavaScript runs is a fact some fetchers never see. See crawling and indexing.
- Chasing an AI-specific trick. There is no documented local-specific requirement for AI surfaces; the honest work is eligibility, accuracy and consistency, and E-E-A-T style evidence that the business is real.
Frequently asked questions
What decides local ranking?
Relevance, distance and prominence, per Google Business Profile Help — and distance is not something a publisher controls.
What does the structured data require?
Only name and address. The rest is recommended, and several recommended fields fail silently when malformed.
Does any of it change for AI answers?
The eligibility path does not. What changes is that a fact gets repeated without its page, so qualifiers must sit in the same sentence.
Why do assistants get hours wrong?
Because several copies of the fact exist and retrieval picks one. Make the copies you control agree.
Terms related to Local SEO
The Schema.org vocabulary and the JSON-LD you embed with it, what it is genuinely good for, and the limits of what it can make happen.
Publishing so that a machine can resolve which real-world thing your page is about, and reconcile it with the same thing described elsewhere.
The superseded three-letter form of what Google's rater guidelines now call E-E-A-T, after Experience was added in December 2022, and which Google states is not a ranking factor.
Search where a model composes the answer and fetches pages through named crawlers, rather than returning a ranked list of links for you to read.