Multi-location SEO means making each branch of your business easy to find in local searches, while the website still feels like one brand. On WordPress, that comes down to four things: a proper page for every location, a verified Google Business Profile for each one, structured data that tells search engines which details belong to which branch, and reporting that shows how each location is doing.
It’s harder than SEO for a single shop or office. Each branch competes in its own patch, and if the details for two branches get muddled, search engines and AI assistants can send people to the wrong door. This guide covers what we set up for businesses with two, ten or fifty locations.
The short version
- Give every location its own page, with its own address, phone number, opening hours, photos and reviews.
- Each staffed location can have its own Google Business Profile. Link each one to that location’s page, not to your home page.
- Add LocalBusiness structured data to each location page, with details that match the page and the profile exactly.
- Avoid doorway pages: lots of near-identical town pages with only the place name swapped. Google treats them as spam.
- Track each location separately, so you can see which branches need help.
In this article
- Why multi-location SEO is different
- Build a proper page for every location
- Set up a Google Business Profile for each branch
- Add LocalBusiness structured data
- Keep your details consistent everywhere
- Make each location relevant locally
- Get the technical basics right
- Measure each location separately
- Don’t forget AI search
- Ready for some help?
Why multi-location SEO is different
When someone searches for a service near them, Google mainly weighs three things: how relevant you are, how close you are and how well known you are. Distance is the one you can’t change, which is why each branch needs its own presence. A Brighton office won’t appear for someone searching in Guildford, however good your website is.
There are three common problems:
- Muddled details. One branch’s phone number on another branch’s listing, or old opening hours left on a directory, confuses customers and search engines alike.
- Thin pages. Twenty location pages that say the same thing with the town name changed don’t help anyone, and they can drag the whole site down.
- Messy structure. Locations scattered across the site with no clear pattern make it harder for search engines to understand how the pages fit together.
Build a proper page for every location
Each branch deserves a page that would help a customer who has never heard of you. Include:
- The branch name, full address, local phone number and opening hours, written as text and not just shown in an image.
- An embedded map and clear directions, including parking or the nearest station.
- Who works there, with real photos of the team and the premises.
- Services that branch offers, especially if they differ from other locations.
- Reviews from customers of that branch.
- Something genuinely local: the areas the team covers, local projects you’ve done, or partnerships with nearby organisations.
If you can’t think of anything specific to say about a location, that’s a sign you may not need a separate page for it. Google’s spam policies describe doorway abuse as creating many similar pages that send people to the same place, and city pages with a swapped place name are the classic example.
Keep the structure simple
Use one clear pattern, such as /locations/brighton/ and /locations/guildford/, with a main locations page that links to them all. In WordPress, a parent page called Locations with a child page for each branch does this neatly. Link to each location from your footer or main menu so no branch is more than a click or two from the home page.
Set up a Google Business Profile for each branch
Google lets you create a profile for each location where you serve customers face to face during your stated hours. A few rules make a big difference:
- One profile per real location. Don’t create profiles for virtual offices or places where nobody works. That breaks Google’s guidelines and can get profiles suspended.
- Use the same business name everywhere. Google’s guidelines say your name should reflect your real-world branding. Don’t add towns or keywords that aren’t part of it.
- Link each profile to its own location page, not the home page. This connects the profile to the page that best matches it.
- Use a local phone number for each branch where you can, and the same number on the website.
- Ask every branch to collect reviews, and reply to them.
If you manage ten or more locations, Google offers a bulk verification route in Business Profile Manager, which saves verifying each one separately. Our Google Business Profile guide goes through setting up each profile in detail.
Add LocalBusiness structured data
Structured data, or schema markup, is code that labels the details on a page so machines can read them without guessing. For a multi-location business, it’s how you say “this address, phone number and set of opening hours belong to this branch”.
On each location page, add LocalBusiness markup (or a more specific type, such as Dentist or AutoRepair) with:
- the branch name, address, phone number and URL
- opening hours, including any that differ from your other branches
- the latitude and longitude
- a link to its Google Business Profile in
sameAs
Use the JSON-LD format, which Google recommends. Keep every detail exactly the same as the visible page and the Business Profile: Google says structured data should match what’s on the page. Most WordPress SEO plugins can output this for you, and some have multi-location add-ons. Whichever you use, run each page through Google’s Rich Results Test to check it.
Keep your details consistent everywhere
Once the website and profiles are right, check the other places your branches appear: Apple Business Connect, Bing Places, Yell, Facebook, trade bodies and industry directories. Old details elsewhere can confuse customers, and AI assistants pull information from these sources too. A simple spreadsheet listing each branch’s correct name, address, number and hours makes it easy for anyone in the team to check and fix listings.
Make each location relevant locally
Some content ideas that work for individual branches:
- Case studies of jobs done in that area, with the client’s permission.
- News about local events you’ve sponsored or attended.
- Answers to questions customers at that branch often ask.
- Seasonal advice tailored to the area, such as flood-season tips for a riverside town.
Write these as articles or add them to the location page, and link from the article to the branch. A few useful pieces of local content beat dozens of thin ones.
Get the technical basics right
- Speed. Most local searches happen on phones. Google’s Core Web Vitals give clear targets for loading, responsiveness and visual stability, and they apply to every location page.
- Sitemaps. Make sure every location page is in your XML sitemap and none are set to noindex by mistake.
- Breadcrumbs. Breadcrumbs (Home › Locations › Brighton) help visitors and search engines understand the structure.
- Titles and descriptions. Give each location page its own title, such as “Accountants in Brighton | Smith & Co”, and a description that mentions what’s special about that branch.
Measure each location separately
You can’t improve what you can’t see. Set up:
- Google Search Console, filtered by page, to see which searches bring people to each location page.
- Google Analytics 4, looking at engagement rate and enquiries for each location page. GA4 replaced the old bounce rate and average session duration with engagement metrics.
- UTM tags on each Business Profile’s website link, such as
?utm_source=google&utm_medium=organic&utm_campaign=gbp-brighton, so visits from each profile show up separately. - Business Profile performance reports for calls, direction requests and website clicks for each branch.
Review these monthly. If one branch is lagging, look at its reviews, photos and page content first.
Don’t forget AI search
AI assistants now answer questions like “who’s a good accountant near Guildford?” Google says that keeping your Business Profile and Merchant Center information up to date helps you appear in its AI answers as well as in the normal results. Clear location pages with accurate details, and plenty of genuine reviews, give ChatGPT, Gemini and Copilot the facts they need to recommend the right branch.
Should each location have its own website?
Usually not. One website with a strong page for each location builds authority in one place, is easier to manage and keeps your brand consistent. Separate websites make sense only if the branches are run as genuinely separate businesses.
Can I have a Google Business Profile for every town I cover?
Only for locations where you have staffed premises and meet customers. If you travel to customers, set up one profile as a service-area business and list the areas you cover, rather than creating profiles for towns where you have no office.
How many location pages is too many?
There’s no fixed number. The test is whether each page has genuinely useful, specific information. Pages that only swap the town name are doorway pages, which Google treats as spam.
Do I need a plugin for multi-location SEO in WordPress?
Not necessarily. Location pages are ordinary WordPress pages. A plugin or a small piece of custom code can add LocalBusiness structured data for each branch, so the details stay consistent.
Ready for some help?
If you run more than one location and some branches seem invisible online, book a free chat. We’ll check your location pages, Business Profiles and tracking and tell you where the quick wins are. Our SEO service covers the whole set-up, and our sister company, Digital Web World, builds and looks after WordPress websites.
References
- Google Business Profile Help, How to improve your local ranking on Google.
- Google Business Profile Help, Guidelines for representing your business on Google.
- Google Search Central, Local business structured data.
- Google Search Central, Spam policies for Google web search: doorway abuse.
- Google Search Central, Optimizing your website for generative AI features on Google Search, 2026.
- Google Search Central, Understanding Core Web Vitals.