A gym chain with forty sites has forty location pages, each the same page with the town name and phone number swapped. Search Console shows most of them as "Crawled, currently not indexed", and the rest rank for nothing. A template is still the right way to build location pages at scale. What decides whether it works is whether the template is a container for facts about one branch or a disguise for a single page.
Why swapped-city pages disappear
Google's documentation on consolidating duplicate URLs explains the mechanism. When pages are substantially the same, Google picks one as the canonical and folds the rest into it. There is no duplicate-content penalty. The folded pages simply stop existing as far as Search is concerned, and the one Google keeps isn't necessarily the one you'd choose.
Past a point it becomes a spam problem. Google's spam policies define doorway abuse as pages created to rank for specific, similar searches that lead people to an intermediate page less useful than the final destination. The examples include pages aimed at particular regions or cities that funnel visitors to one place. The same document describes scaled content abuse: many pages generated mainly to manipulate rankings rather than to help anyone. Forty near-identical town pages pushing visitors to one booking form fit both definitions.
So here's the test. A location page has to be the destination, useful to someone who already knows the brand and wants this branch. If a visitor learns nothing from your Croydon page that your Bromley page didn't already say, Google won't learn anything either.
Design the template as fields, not paragraphs
Build the template from what differs between branches. Every field should be one that would be wrong if you copied it to another branch.
- The branch's name and address, plus its phone number and hours. Show them as text that matches the Business Profile exactly.
- Directions from the way people actually arrive: the car park or the station exit.
- The services this branch offers, which is rarely the full brand list. A gym without a pool shouldn't have a pool section.
- Photos of this building and the people who work in it, not the brand's stock set.
- Reviews from this branch's own profile, quoted with the reviewer's first name and the date.
- The nearby areas this branch serves, in a sentence, so surrounding towns don't need pages of their own.
- One hand-written paragraph about the branch: when it opened, what it's known for, what's near it.
Shared content such as the brand promise can appear on every page. Keep it short and put it below the branch-specific content, so the first screen belongs to the branch.
Then make the labels distinct. Give each page a title tag and main heading that name the service and the place ("Gym in Croydon", then the brand), and write a meta description for that branch. Location pages without the spam covers what makes one page convincing.
Make every page findable and tell Google what it is
A location page nothing links to is invisible. Store locators are the usual culprit, because one that works only through a search box or a JavaScript map gives Google no links to follow. Build a plain /locations/ hub with an HTML link to every branch. Group it by region if the list is long, and keep it in the main navigation.
Then check the plumbing on each page.
- Use a consistent URL pattern such as /locations/croydon/, and put every page in your XML sitemap.
- Set a canonical tag that points to the page itself. A template that canonicalises every branch to the hub undoes everything above.
- Add LocalBusiness structured data for that branch, with the same details as its profile plus coordinates. Google documents Local business as a supported structured data type, and LocalBusiness schema covers the markup.
- Link each branch page to the service pages for what it offers.
- Point the branch's Business Profile website field at this page, as set up in One profile per location.
Ten locations versus fifty
At ten locations, one person can write every page by hand from a visit or a phone call. At fifty, nobody can. The template then needs a data source: a spreadsheet or CMS fields holding every branch-level fact. Whoever maintains the Business Profiles should maintain it too, so the two never drift apart.
The hand-written paragraph survives the scale-up if you turn it into a form. Ask each branch manager what the branch is known for, the easiest way to get there, and what's changed this year. Their answers do more for the page than anything a template can generate, because head office couldn't have written them.
Resist pages for towns you serve without a branch. It's the doorway pattern again. Name those areas on the nearest branch's page, and build a separate page only where you can say something specific and true.
When a branch closes, redirect its page to the nearest branch or the hub. When it moves, update the page the same day as the profile, because the whole structure depends on matching details.
Frequently asked questions
Can I use one template for every location page?
Yes, and you should. The template supplies the structure: the same fields in the same order on every page. What you can't reuse is the content inside the fields. If a field would read the same on another branch's page, it doesn't belong in the template.
Does Google penalise duplicate location pages?
No. Google's documentation describes folding near-identical pages into one canonical and dropping the others, so the pages simply stop appearing in Search. The risk of a spam classification comes later, when pages exist only to funnel visitors to one place.
Should I build a page for every town I serve?
Only where you can say something specific and true about serving that town. Otherwise, name the surrounding areas in a sentence on the nearest branch's page. A page for a town with no branch tends to match the doorway pattern from Google's spam policies.
How do I keep fifty location pages accurate?
Keep every branch fact in one data source, such as a spreadsheet or CMS fields, and feed both the pages and the Business Profiles from it. Ask each branch manager for the hand-written part through a short form. When a branch moves or closes, update or redirect its page the same day.
What to take away
- Google folds near-identical pages into one and drops the rest. There is no penalty; the pages just stop existing in Search.
- Pages that differ only by a town name and funnel visitors to the same place match Google's documented doorway and scaled-content spam patterns.
- A template scales when every field is a fact that would be wrong for another branch, from the address and hours to the photos, reviews and one hand-written paragraph.
- Every page needs an HTML link from a hub, a sitemap entry, a self-referencing canonical, LocalBusiness markup, and a Business Profile that points at it.
Next
With profiles and pages in place for every branch, the last chapter turns to proof, starting with Tracking calls, directions and clicks.