Local SEO for one location is a checklist. Local SEO for twenty is an operations problem, and it fails for operational reasons: nobody owns the Business Profiles, the location pages were generated from one template with the town name swapped, and reviews accumulate at whichever branch has a manager who cares.
Here is how to run it properly across a real estate of locations.
The Business Profile is most of the ranking
For map pack results, the Google Business Profile does more work than the website. Prioritise accordingly.
Primary category is the single biggest lever. Not a close call. A dental practice categorised as “Dentist” and one categorised as “Cosmetic dentist” compete in measurably different result sets. Choose the primary category to match the highest-value query you want to win, then add secondary categories for the rest. Check what the businesses currently ranking above you have chosen.
Complete every field. Services, attributes, opening hours including holiday hours, description, opening date, and the full products list where the category supports it. Incomplete profiles rank worse, and the effect compounds across a whole estate.
Photos, per location, genuinely. Exterior shots so people recognise the building, interior, team, product. Stock imagery repeated across twenty locations is worse than fewer real photos.
Service area versus storefront. If customers do not visit the address, set it as a service-area business and hide the address. Listing a storefront that is actually an office is a guideline violation and a suspension risk.
Assign an owner. The most common failure across an estate is not a bad profile, it is an unclaimed or half-claimed one that nobody has logged into for a year.
Location pages: one per address, and actually different
The two failure modes are opposite and both common.
One page listing every location. It cannot rank for “[service] in [town]” for twenty towns, and it gives the map pack nothing to associate with each address.
Twenty pages from one template with the town name substituted. Technically distinct URLs, functionally duplicate content, and Google treats them accordingly.
A location page that earns its place contains things that are true only of that location:
- The actual address, phone number and hours for that branch, matching the Business Profile exactly
- An embedded map and genuine directions — landmarks, parking, transit
- The staff at that location, named where the business allows it
- Services offered there, since estates are rarely uniform
- Reviews from that location
- Photos of that building
- Anything locally specific: neighbourhoods served, local partnerships, parking arrangements
The test: if you swapped the town name out, would the page still make sense for a different branch? If yes, it is a template, not a location page.
Each of these carries LocalBusiness markup with fields matching the profile. Google’s LocalBusiness structured data documentation lists the required and recommended properties.
NAP consistency is about the aggregators
Name, address and phone consistency matters less as a direct ranking factor than it used to, and still matters because inconsistent data propagates.
The important detail: most directory listings are populated from a handful of data aggregators. Correcting a hundred individual directories while the aggregators still hold an old phone number means the old number returns.
Fix the aggregators first, then the major directories, then the long tail. And decide the canonical format once — “Suite 4” or “Ste 4”, “Street” or “St” — and apply it identically everywhere including the website footer and the schema.
Suite numbers cause a specific problem for estates with multiple businesses at one address: they are frequently dropped by directory software, merging two distinct locations into one record.
Reviews as a workflow, not a campaign
Review velocity and recency both matter, and both come from process rather than effort.
What works at scale:
- A single moment of ask, built into the existing customer interaction — at checkout, on completion, in the follow-up email.
- A direct review link per location, short enough to print on a card or put in an SMS.
- A response commitment. Every review answered within a few days, negative ones included and especially. Response rate is visible to customers and correlates with conversion from the profile.
- Per-location reporting, so the branches that never ask become visible.
What to avoid: review gating — asking customers privately how they feel and only routing the happy ones to Google. It is against Google’s policies and it is the kind of thing that gets an entire estate’s reviews removed at once.
Track on a grid, not from one point
A single citywide rank for “dentist near me” is close to meaningless. Map pack results vary street by street, and the whole point of a multi-location estate is covering specific catchments.
Geo-grid tracking samples positions across a grid of coordinates around each location, which tells you the thing that actually matters: how far from each branch does your visibility extend, and where does a competitor take over. On an estate you want the grid per location, rolled up so you can compare branches.
The pattern that shows up almost immediately is that one or two branches are dragging the average, usually for a mundane reason — a miscategorised profile, an unclaimed listing, no reviews.
What to do in what order
- Audit every profile. Claimed, categorised, complete, correct. This alone frequently moves rankings before anything is built.
- Fix NAP at the aggregators, then the major directories.
- Build location pages with genuinely distinct content, and mark them up.
- Install the review workflow at whichever branches are weakest.
- Set up geo-grid tracking per location so there is a baseline before anything else changes.
- Then work on the wider site — service pages, internal links, technical health — which is where organic (non-map) local rankings come from.
The order matters because steps 1 and 2 are cheap and fast, and they frequently produce the first movement.
This is the sequence behind local SEO engagements here, and it scales from three locations to sixty. If you want a read on your estate before committing to anything, send us your domain — the free audit covers profile completeness and location page architecture alongside the technical checks.