Eleven city URLs with identical body copy, a swapped H1 and the same NAP block in the footer is how a multi-location site becomes a doorway set. Google does not wait for a manual spam report. The folder looks like a ranking machine from the CMS. From the index it looks like one page printed eleven times.

A multi-branch marketing lead usually inherits that folder, not the decision that created it. Local seo for multiple locations still needs a URL per real branch. It does not need a template that exists only to catch a city query and shove the visitor back to a national enquiry form.

We will not ship a location URL unless that page can stand if every other city page disappeared. That is the whole job. Unique location pages, clean NAP, and internal links that name the branch - not a doorway farm with a map embed.

What doorway pages look like in a location folder

A doorway page in this trade is a location URL whose only job is to rank for “[service] in [city]” and then hand the visitor to a different destination. Same 280-400 words. City name in the H1. A stock photo. A form that posts to head office. Hours that do not match the door.

The tell is interchangeability. Swap Makati for Cebu in the source and the page still “works”. That is the pattern Google’s spam systems already treat as a doorway. Multi location local seo fails at that point, before anyone argues about map-pack pixels.

Thin location hubs also leak into the rest of the site. Service pages start linking to “all locations” with identical anchor text. The footer repeats one phone number. Citations drift. The Google Business Profile for branch three still points at the homepage.

If the location set was built to capture geo queries rather than to help someone choose a branch, treat it as a doorway set until each URL proves otherwise.

Unique location pages that survive if the others vanish

One physical location, one URL, one reason to land there. The page has to answer the person who is already in that city: can I use this branch, what does it actually do, how do I get in, who do I call.

That means a unique H1, a unique opening, a unique block of proof, and a unique path onward. Not a token. Proof is the unit number, the parking note, the services that branch actually sells, a photo of that frontage, staff or kit that only exists there, and hours that match the listing.

We write the page as if the other ten cities will 404 tomorrow. If the copy collapses without the city name, it was a doorway. If it still helps a visitor in that catchment, it can stay.

Parent service URLs stay national or regional. The location URL is the local object. Do not clone the full service catalogue onto every city page. Name the services that branch delivers, then link to the canonical service URL for depth.

NAP across the site, the listing and the citations

NAP is name, address, phone - and it has to be the same string everywhere that string appears. The location page, the footer of that URL, the Google Business Profile, the citation, the invoice, the sign on the door.

Inconsistent NAP is how a genuine branch starts looking like two businesses, or like none. We see it when head office publishes a 1800 number on every city page while the profile shows a local landline. We see it when the legal entity name on the page does not match the listing name.

Pick one format per branch and lock it. Spell the street the same way. Do not abbreviate on the page and expand on the profile. If a branch has no public phone, do not invent one for the template.

The location page should display that NAP in visible text, not only in a widget. Markup can repeat it. The visible block is what a user and a crawler both get. When the NAP on the URL and the NAP on the profile disagree, local seo for multiple locations starts fighting itself.

Internal links are how a location URL inherits meaning from the rest of the site without becoming a doorway. The national service page should link to the branches that actually deliver that service, with anchors that name the place.

“Visit the Cebu branch” is a link. “Locations” as a repeated footer dump is not. We want a human path: service → relevant branches → that branch’s page → enquiry or directions for that address.

Location pages should link back to the two or three services they truly offer, not to the entire catalogue. They can link to nearby branches when a visitor is in the wrong catchment. They should not all link to each other in a fully connected mesh that exists only for crawl.

The homepage is not the internal destination for this work. The objects that matter are the unique location pages, the service URLs, and the paths between them. If a branch page cannot be reached from the service it claims to sell, it is an orphan with a city in the slug.

One Google Business Profile per real address

A profile is not a page. A page is not a profile. Each real, staffed, customer-facing address gets one Google Business Profile. That profile’s landing page should be the unique location URL, not a national homepage and not a search-filtered store-locator.

Do not create profiles for territories you do not occupy. Do not point three profiles at one URL. Do not point one profile at eleven URLs. The map pack is matching an entity to an address. Multi location local seo falls over when that entity is fuzzy.

Categories, hours, photos and Q&A belong to that branch. Head office can administer the group. It should not paste the same cover image and the same three-line description onto every listing.

If a branch closes, the profile and the URL have to be retired together. A live city page pointing at a suspended listing is how users and crawlers both lose trust.

Copy only that branch can defend

Doorway copy is copy nobody in that building would sign. Unique copy is copy the manager could read aloud without wincing: the loading bay, the languages at the desk, the services they refuse, the appointment rule, the landmark.

We gather that from the branch, not from a city Wikipedia stub. A paragraph about the local economy is almost always doorway padding. A paragraph about how that unit handles same-day work is not.

Photos must be of that site. Reviews on the page should be reviews of that site, or omitted. Opening hours that disagree with the door are worse than no hours.

This is where the writing stops being a find-and-replace. The copy itself is a content SEO services in the Philippines job: each branch needs proof it exists, not a city-name swap on a 400-word stub. The sentence before that work is the interview with the branch. The sentence after is a URL that can rank without pretending to be eleven other URLs.

Titles, headings and markup without the city token trick

Title tags and H1s have to be unique, and they have to match what the page actually is. “[Service] in [City] | Brand” on eleven URLs with identical bodies is still a doorway, just with tidy SERP text.

Write the title for the person choosing a branch. Include the locality because it is true, not because it is a token. If two branches share a city, the title must separate them by area, unit or function.

Meta descriptions should not be the same sentence with a city swap. H2s on the page should reflect real sections - how to get here, what this branch does, who it is for - not a list of keyword variants.

LocalBusiness markup belongs on the location URL and should match the visible NAP. Do not mark up eleven branches on a national page and then also mark them up on thin city pages. Pick the object.

Titles, H1s, metas and NAP markup have to differ on every location URL. That sits inside our on-page SEO services in the Philippines because the HTML has to tell the truth per branch, not host a template with a city token. Crawl the folder after you ship. If titles collapse to one pattern, you are back in doorway territory.

When a location should not get its own url

Not every pin deserves a URL. A locked warehouse, a registered office with no walk-in, a pop-up, a staff-only yard - those are not location pages. Creating them is how doorway sets start: the CMS can generate a city, so someone does.

A branch that shares a building with another brand still needs a careful NAP and a profile that matches the public entrance. It may not need a 1,200-word page.

If two “locations” are a five-minute walk apart and share staff, ask whether the user is choosing between them. If they are not, one URL and a clear note beats two thin twins.

Service areas without a premises are not location pages. They are service-area copy on a profile and, if needed, a single catchment explanation on a real branch URL. Do not mint /pasig, /taguig, /mandaluyong stubs for a brand that only occupies one unit.

Branches in more than one country

Multi location local seo and multi-regional SEO overlap when the same brand occupies more than one country. That is a different object from eleven cities on one ccTLD.

Separate hosts, hreflang, and country folders are host decisions. They do not excuse duplicate location copy. A Philippines branch page and a UK branch page can share a brand voice. They cannot share a body.

If some branches sit on a different country host or language version, use the notes on Google multi-regional sites rather than cloning one location template across hosts. The page still has to be the local object. Hreflang does not turn a doorway into a useful URL. It only tells Google which host is for which audience.

Keep NAP in the script and format the user in that country expects. Do not publish a PH mobile number as the primary contact on a UK location URL because the CMS defaulted.

The check we run on an existing location set

Before we write or keep a city page we crawl the folder, dump titles and H1s, and diff the bodies. Near-duplicate clusters are doorway candidates. We then line up each URL against a real address, a live profile, and a service the branch actually sells.

We check NAP strings across page, footer, profile and a sample of citations. We check internal links from service URLs into the location set, and from each location page back out. Orphans and identical-anchor dumps both fail.

We look at the enquiry path. If every city page posts to one national form with no location field, the URL is a doorway even when the copy is unique. The next useful action on that page has to belong to that branch.

We look at index bloat: old suburbs, closed units, paid-landing leftovers, printer-friendly duplicates. Those get 301s or removal, not a rewrite.

Only then do we decide write, merge, or kill. Multi location local seo without doorway pages is mostly that decision, not a new template.

Decide the next url, then ask for the audit

Pick one branch that is real, staffed, and already confusing in the index. Make that URL unique: NAP, proof, internal links, profile destination, titles and markup. Do not roll a new template across the estate until that one page would still help if the folder vanished.

If the rest of the set is already live and the duplicates are in the index, the next useful step is a scoped audit of the unique location pages, the NAP strings and the internal links - not another city stub. Send the current URL list and access to the profile group. We will say which pages stay, which get rewritten, and which should 301.

That is local seo for multiple locations done as a set of real places. The map pack follows the entity. The entity follows the address. The address needs a page that is not a door.