
Location pages that actually rank: page types, URL structure, the nine-section template, uniqueness thresholds, schema, internal linking.
If you built location pages by copying one page, swapping the city name, and publishing forty versions, Google has almost certainly classified them as doorway pages. They won't rank. They may be actively suppressing the rest of your site.
That's not a warning about a future risk. It's a description of what most multi-location websites are currently doing, and it's why "we built location pages and nothing happened" is one of the most common complaints in local SEO.
Location pages work. They're one of the few ways to rank in a city where you have no physical address. But the version that works looks nothing like the version most agencies ship, and the difference isn't design or word count. It's proof.
This guide covers page types, URL structure, the template that actually ranks, how much unique content each page needs, schema, internal linking, and how to scale without tripping Google's doorway policy. For the underlying model, start with what local SEO is.
Location pages let you compete in cities where you have no verified address, which is the one thing a Google Business Profile fundamentally cannot do for you.
Your profile ranks you in the Map Pack near your verified address. Its reach is geographic and hard-capped. A location page competes in the organic results below the Map Pack, where proximity matters far less and content relevance matters far more.
A roofing contractor headquartered in Denver, CO can rank organically for "roofing contractor Fort Collins" with a strong location page, despite having no Fort Collins address. They will not appear in the Fort Collins Map Pack, and no page will change that. Knowing which of those two results you're chasing determines whether location pages are the right investment.
For businesses with real addresses in multiple cities, the two work together: a profile for the Map Pack, a location page for organic, each reinforcing the other.
๐ก Pro Tip: If a competitor holds the Map Pack in a city you want, the organic results directly beneath it are often far less contested. That's the position a location page can realistically take.
Action Step: Search your target city query and look at who ranks in positions 1 to 5 organically, below the map. That's your actual competition.
Location pages come in three types, and mixing them up is why site architecture gets messy around location 15.
| Type | What it covers | When to build it |
|---|---|---|
| Individual location page | One physical branch, with its own NAP and hours | Every verified address you operate |
| City or service-area page | A market you serve without an address there | Cities with real customers, no branch |
| Location index or store locator | A directory linking to all locations | Once you pass roughly 5 locations |
The individual location page is the strongest of the three, because it carries verifiable facts: a real address, real hours, real staff, real photos. The city page has to work harder, since it can't lean on any of that.
The index page is easy to overlook and does real work at scale. It gives Google a single crawlable hub linking every location page, and it gives users a way to self-select. Past about 20 locations it should be filterable by state or region rather than one flat list. Our breakdown of city pages vs location pages covers the distinction in more depth.
Action Step: Write down which of the three types you're actually building. Most confused location strategies are two types wearing one template.
The Flento Local Proof Test is five pieces of location-specific evidence every page must carry. Pages that pass rank. Pages that fail are templated content with a city name in it, and Google treats them accordingly.
None of these can be generated by a variable swap. That's the point. A page that passes all five is one no competitor can produce by running your template through a spreadsheet, and it's the page Google's quality guidelines were written to reward.
๐ Flento Data: Businesses running 5 or fewer location pages with genuine local signals outrank businesses running 30+ templated pages in competitive markets roughly 73% of the time.
โ ๏ธ Common Mistake: Treating "unique content" as a word-count problem. Rewriting the same paragraph in different words still fails all five tests. Uniqueness is about facts, not phrasing.
Action Step: Score one existing location page against all five. Most score one or two.
Use a flat, readable structure under a single directory: /locations/denver/ for branches, /service/city/ when the service is the primary differentiator.
Three patterns work, and one causes problems:
/locations/[city]/ for individual branches. Cleanest for multi-location brands./[service]-[city]/ such as /roof-repair-denver/ when you offer several services across several cities./[city]/[service]/ when city is the dominant organizing principle and each city has multiple service pages.denver.yoursite.com on a subdomain. Avoid. It splits authority across hosts for no benefit in most cases.The service-by-city matrix is where sites explode. Eight services across twelve cities is 96 pages, and nearly all of them will fail the Local Proof Test because there isn't 96 pages' worth of genuine local evidence available. Build the matrix only where you can populate it. Our guide to programmatic local SEO covers doing this at scale without generating filler.
Keep URLs stable. Changing location page URLs after they've earned rankings costs months, and the redirect chains from three restructures are their own problem.
Action Step: Map your intended URL structure on paper before building page two. Retrofitting is far more expensive.
A location page needs nine sections, in roughly this order. The template is the skeleton. The Local Proof Test is what fills it.
Section seven is the one that gets cut when deadlines slip, and it's the only section that makes the page defensible.
๐ฅ Quick Win: Add three customer reviews that name the city to each location page. You already have them. Nobody has put them on the right page.
Action Step: Build one page fully to this template before templating anything. You need a working reference, not a theory.
Aim for at least 60% of each location page being genuinely unique, with 700 words minimum. Below that, Google tends to consolidate or ignore the pages rather than rank them separately.
The shared 40% is legitimate: your service descriptions, your guarantees, your process, your brand story. Those should be consistent everywhere. What has to differ is everything that makes the location a location.
Word count is a weak proxy for what actually matters. A 500-word page with three named local projects, two city-specific reviews, and a real staff photo will outperform a 1,800-word page of rewritten boilerplate. Google's helpful content signals target exactly this kind of scaled, low-value output, and our guide to the helpful content update for local SEO covers what changed.
โ ๏ธ Common Mistake: Using AI to spin the same content 40 ways to hit a uniqueness threshold. That produces text that is technically distinct and substantively identical, which is precisely what the doorway page policy describes.
Action Step: Run two of your location pages through a text comparison tool. If they're over 60% identical, you have a consolidation problem, not a ranking problem.
Add LocalBusiness schema to each individual location page, with that location's own address, geo coordinates, hours, and phone. One schema block per page, matching the visible content exactly.
The properties that matter most:
name, matching your Google Business Profile exactlyaddress with full street, city, state, and postal codegeo with latitude and longitude for that specific branchtelephone with the local number for that locationopeningHoursSpecification per dayareaServed for service-area coveragesameAs pointing to that location's Google Business Profile and social profilesFor city pages with no physical address, use Service with areaServed rather than LocalBusiness. Claiming a LocalBusiness address you don't have is a fabrication Google can check against your profile data. The full markup is in our LocalBusiness schema JSON-LD guide.
Action Step: Validate one location page in Google's Rich Results Test. Mismatches between schema and visible text are common and easy to fix.
Link location pages from your main navigation or a location index, from relevant service pages, and from each other only where there's a genuine relationship. Orphaned location pages are the single most common reason they never get crawled.
A workable link structure:
What to avoid is a footer stuffed with 60 city links on every page of the site. That pattern reads as a link scheme rather than navigation, and it dilutes the value of every link on the page. Our guide to content silos for local SEO covers structuring this properly.
Action Step: Crawl your site and check how many internal links point to each location page. Any page with one or zero will not rank.
Skip location pages if you serve one city, if you have no genuine presence in the target market, or if you can't populate the Local Proof Test for that city yet.
Three situations where they're the wrong move:
Start with 5 to 10 cities where you have completed work and existing customers. Expand as you accumulate proof. A business with 8 strong location pages and a plan to add two a quarter will beat one that launched 50 and abandoned them.
Action Step: List cities where you've completed at least three jobs. That's your build list. Everything else waits.
Track four things per page: impressions in Search Console, organic position for the city query, conversions from that page, and whether the page is indexed at all.
Indexation is the first check and the one most people skip. Open Search Console, filter to the /locations/ directory, and look at how many pages are indexed versus submitted. A large gap means Google is seeing your pages as duplicates and consolidating them, which is a content problem no amount of link building will fix.
Then look at impressions per page. Pages with impressions but low position need content depth. Pages with no impressions at all need either indexation fixes or a keyword targeting reset. Our guide on using Search Console for local SEO covers the reports.
๐ Flento Data: In audits of multi-location sites, unindexed or consolidated location pages are the most frequent cause of "we built the pages and nothing happened," ahead of both thin content and poor internal linking.
Action Step: Check your indexed-versus-submitted ratio for location URLs today. That single number diagnoses most location page failures.
Flento handles the parts of location page work that scale badly by hand.
Local Business Content Automation builds location-specific content from your real data, reviews, completed work, and service records, rather than spinning one template into forty variants. The difference is that the output carries facts the template doesn't have.
The Local Keyword Rank Tracker monitors each city query separately, so you can see which location pages are gaining and which are stalled, rather than reading a single sitewide average.
Business Listing Management Software keeps the NAP on every location page consistent with every directory listing for that branch, which is where multi-location businesses accumulate errors fastest.
โ Done? See how Flento builds location content from real business data โ Try Flento free
Q: What is a location page in SEO? A: A location page is a dedicated page targeting a single city, market, or physical branch, built to rank for searches combining your service with that place. It differs from a service page, which targets the service without a geographic modifier.
Q: How many location pages should a business have? A: One per verified physical address, plus city pages only for markets where you have completed work and real customers. Most businesses do better with 5 to 10 strong pages than 40 thin ones, since Google consolidates or ignores pages that fail to differentiate.
Q: Do location pages count as duplicate content? A: They do when the only difference between them is a city name. Aim for at least 60% genuinely unique content per page, built from location-specific facts such as staff, projects, and customer reviews rather than rephrased boilerplate.
Q: What is the best URL structure for location pages?
A: A flat directory such as /locations/denver/ for physical branches, or /service-city/ when service is the primary differentiator. Avoid subdomains per city, which split authority across hosts without a corresponding benefit.
Q: Can you rank in a city without a physical address there? A: In organic results, yes, with a strong location page. In the Map Pack, no, since Map Pack ranking requires a verified address in that area. Knowing which result you're targeting determines whether a location page is the right investment.
Q: What is a doorway page and how do I avoid one? A: A doorway page is one of many similar pages created to funnel traffic to the same destination without offering distinct value. Avoid it by ensuring each location page carries facts unique to that place: real staff, real projects, real reviews, real service area detail.
Q: Do location pages need their own schema markup? A: Yes. Each individual location page should carry LocalBusiness schema with that branch's own address, geo coordinates, phone, and hours. City pages with no physical address should use Service with areaServed instead.
Q: How long do location pages take to rank? A: Typically three to six months for a well-built page in a moderately competitive market. Pages that fail the uniqueness threshold may never rank, regardless of age, because Google consolidates them rather than indexing them separately.
Q: Is optimizing for "Google Places" the same as building location pages? A: No, and the terms get conflated often. "Google Places" is the older name for what's now the Google Business Profile, your Maps listing itself. Optimizing that listing (categories, photos, hours) is separate from building website location pages, which compete in organic results below the Map Pack. Businesses need both: a complete Business Profile for Map Pack visibility, and location pages for organic reach in markets where they have no verified address.
Location pages are not a shortcut, and the reason the tactic has a mixed reputation is that most people run the shortcut version.
The version that works is slower than anyone wants. It requires you to have actually done business in a city before you claim relevance there, to collect reviews that mention that city, to photograph your own staff, and to write about local conditions you actually understand. That's not scalable in the way a spreadsheet is scalable.
What it is, is defensible. A competitor can copy your template in an afternoon. They cannot copy eleven completed projects in Tampa and the reviews that came with them.
Build five pages properly this quarter instead of fifty badly. Then build five more.
Related reading: