Most service businesses have seen the pitch. An agency offers to build fifty city pages, one for every town within an hour's drive, so you rank everywhere. A few weeks later the site has pages for Garland, Mesquite, Rowlett, Wylie, and Plano, and they all say the same thing with the city name swapped.
Sometimes those pages rank for a while. More often they sit unindexed, pull nothing, and quietly put the rest of the site at risk. Google has a name for this pattern, and it's in its spam policies.
Service area pages can work very well. The difference between a page that brings in calls and one that drags the site down is almost entirely about what's on it. This guide covers which cities deserve a page, what Google actually says, what to put on each page so it earns its ranking, and how to tell whether it's working.
What is a service area page?
A service area page is a page on your website built for one city or area you serve, explaining what you do there. A roofer based in Rockwall might have a page for roof repair in Garland. An IT company in Dallas might have one for managed IT in Frisco.
It's different from a location page. A location page is for an actual office, shop, or branch, with its own address and phone number. A service area page is for a place you travel to but don't have an office in. Both are useful, and the rules for each are a little different, which we'll get to.
Why service area pages matter
The map results on Google lean heavily on distance. In our Google Business Profile guide we covered Whitespark's 2026 Local Search Ranking Factors survey, where the distance between the searcher and the business ranked second for map results and having an address in the city searched ranked fourth. If you're based in one city, your profile will have a hard time showing up in the map for a city twenty miles away.
The regular search results below the map are a different story. There, a strong page about your work in that specific city can rank, because organic results lean more on how well a page answers the search. Location still counts in the content itself: in the same Whitespark survey, the city or neighborhood relevance of a page's content ranked 18th out of 187 factors, even for map results.
So for most service businesses, service area pages are the realistic way to show up in nearby cities. They're also where buyers in those cities decide whether you actually work in their area or just say you do.
What Google says about city pages
Google's spam policies describe doorway abuse as pages "created to rank for specific, similar search queries" that "lead users to intermediate pages that are not as useful as the final destination." One of the examples Google lists is "having multiple domain names or pages targeted at specific regions or cities that funnel users to one page."
The same policies cover scaled content abuse, which is when "many pages are generated for the primary purpose of manipulating search rankings and not helping users." Google's examples include using generative AI tools "to generate many pages without adding value for users."
Read those two together and the line is clear. Google doesn't object to city pages. It objects to near identical pages that exist only to catch a search and don't give the visitor anything the next page wouldn't. A page with real work, real customers, and real local detail isn't a doorway. A template with the city name swapped usually is.
This isn't theoretical. Google ran a spam update from June 24 to June 26, 2026. It didn't name specific targets, and Google said little about it beyond calling it a normal spam update, but doorway and scaled content rules were in force throughout. Our view: if a page only exists because a keyword exists, assume it's exposed every time one of these updates rolls out.
The swap test
Here's the fastest way to check an existing city page. Open it, and in your head replace the city name with another city you serve. Does anything on the page become false?
If nothing changes, the page fails. Every sentence on it is true of every city, which means it tells a buyer nothing about whether you know their area, and it tells Google nothing either.
A page that passes has details that would break if you swapped the name: a project on a specific street, a review from a customer in that city, a note about the local permit office, how long it takes your crew to get there. Those are the details that make the page worth ranking.
Which cities deserve a page?
Not every town on your service area list. Start with the places where you can prove you work. A good page needs real material, and you can't write real material about a city you've been to twice.
Rank your candidate cities on four things:
- Jobs you've done there. Pull the last two years of invoices and count by city. This is the strongest signal, because it's also your source of photos, examples, and reviews.
- Revenue from there. A city with five large commercial jobs may matter more than one with twenty small ones.
- Demand. Bigger cities have more searches. A keyword tool or Google Search Console will show which city names already appear in searches that find you.
- Whether you want more work there. If the drive kills your margin, don't build a page to attract more of it.
Pick three to five cities to start. Build those properly, see how they perform, then add more. Five strong pages will do more for you than fifty thin ones, and they won't put the site at risk.
What to put on a service area page
Each page should answer the questions a buyer in that city has: Do you actually work here? Have you done jobs like mine nearby? How fast can you get here? What will it cost? Here's what earns that trust.
Real projects from that city
Two or three jobs you completed there, each with a photo, a short description of the problem, what you did, and roughly when. "Replaced a 40 year old flat roof on a dental office near downtown Garland, finished in four days" says more than a paragraph of copy. If you've written case studies, link the ones from that city.
Reviews from customers in that city
Pull reviews where the customer is in that city or mentions it. Quote them with a first name and the city. If you don't have any yet, that's a sign to start asking customers there, and maybe a sign the page should wait.
Local specifics only you would know
This is where the page becomes impossible to copy. Think about what's actually different about doing the work there:
- Permit requirements or inspection timelines at that city's building office
- Common building types, ages, or problems in that area
- HOA rules that affect your work
- Typical response time from your shop, and how you schedule there
- Whether you charge a trip fee, and when
You don't need all of these. Two or three accurate ones are enough to make the page clearly about that place.
Pricing guidance
If your prices differ by area, say so. If they don't, a range for typical jobs still helps. Our post on putting prices on your website explains why buyers reward this, and a city page is a natural place for it.
Questions people in that city ask
Two to four short questions and answers that come from real calls. "Do you service the Firewheel area?" "Can you meet the city inspector on site?" These help buyers, and they give AI search tools clear, quotable answers.
A clear next step
A phone number, a short form, and a line on how fast you respond. A buyer who reached a page about their city is close to calling. Don't make them hunt for how.
A template page next to a real one
Here's what the difference looks like in practice.
Template version: "Looking for roof repair in Garland, TX? Our team of experienced professionals provides top quality roofing services to Garland residents and businesses. We are committed to customer satisfaction and use only the best materials. Call today for a free estimate in Garland!"
Real version: "We've repaired or replaced roofs on more than 40 commercial buildings in Garland since 2022, most of them flat roofs on strip centers and office parks built in the 1980s. Those roofs tend to fail at the seams and around rooftop units, and we see a spike in leak calls after the first big storm each spring. Garland requires a permit for most reroofs, and inspections usually get scheduled within a few days. From our shop in Rockwall, we're typically on site within two hours for emergency leaks."
The first could be about any city. The second could only be about one, and it answers the questions a facilities manager in Garland actually has. All of the numbers in that example are illustrative. Yours should come from your own records.
On page SEO for service area pages
The content does most of the work, but the structure helps Google and buyers understand what the page is about.
- Title tag: service, city, and your name. "Commercial Roof Repair in Garland, TX | Smith Roofing." Keep it under about 60 characters so it doesn't get cut off.
- Main heading: say the same thing in plain words. "Commercial roof repair in Garland."
- URL: short and readable, like
/service-areas/garlandor/garland/roof-repair. Pick one pattern and use it for every city. - Meta description: one or two sentences with a specific detail from the page, not a list of keywords.
- Internal links: link each city page from a main service areas page, and from the relevant service page. Link back to the service page from each city page. Orphan pages that nothing links to rarely rank.
- Schema markup: use LocalBusiness or Service markup with the areaServed property for the city. Don't add a street address for a city where you don't have an office.
- Images: real photos from jobs in that city, with alt text that describes what's in the photo.
Location pages for cities where you have an office
If you have an actual office or branch in a city, build a location page instead. It should include the full address, a local phone number, hours, directions, photos of the building and the team, and a map. Link that page from the Google Business Profile for that location, since the profile's landing page carries real weight in local rankings.
Never list an address on a city page for a place where you don't have a staffed office. A virtual office or mailbox address is one of the fastest ways to get a Google Business Profile suspended, and it undermines trust on the page too.
Can you use AI to write city pages?
You can use it to help, but not to do the job. Google's scaled content policy names generative AI used "to generate many pages without adding value for users" as an example of abuse. The problem isn't the tool. It's that an AI tool doesn't know about your job on Fifth Street, your review from a Garland property manager, or how long the local permit office takes.
A workable approach: write down the real material for each city first, using the list above. Then use AI to help organize it into a clean draft, and have someone who knows the work check every claim before it goes live. If the AI is supplying the facts, the page will fail the swap test.
What to do with thin city pages you already have
If your site already has dozens of near identical city pages, you don't need to panic, but you should clean them up.
- Check which ones get traffic or leads. In Google Search Console, look at clicks and impressions by page for the last six months.
- Upgrade the ones that matter. For cities where you do real work and the page gets some traction, add projects, reviews, and local detail.
- Combine or remove the rest. For cities where you rarely work, either redirect the page to your main service areas page or remove it. A single page listing the cities you serve, with a sentence or two about each, is better than fifty empty ones.
Cleaning up usually feels like losing ground. In practice, removing thin pages tends to make the remaining ones stronger, because the site as a whole looks more trustworthy.
How to measure whether service area pages are working
Give a new page six to twelve weeks before judging it. Then look at:
- Impressions and clicks for the page in Google Search Console, especially for searches that include the city name
- Average position for the main service and city search
- Calls and form fills from the page, which a call tracking number or form source field will show
- Jobs and revenue from that city, compared with the same period last year
The last one is the number that matters. A page that ranks but brings in no work is decoration. Our post on the four numbers a marketing report needs covers how to tie a source to real revenue.
Common mistakes with service area pages
- One template, fifty cities. The most common mistake and the riskiest one.
- Pages for cities you don't want work in. Ranking for a city you can't serve profitably just fills your phone with jobs you'll turn down.
- Fake local addresses. They risk suspension and break trust.
- Stock photos. A picture of a generic house tells a buyer you've never been there.
- No internal links. City pages that only appear in the sitemap rarely rank.
- Keyword stuffing. Repeating "roof repair Garland TX" in every paragraph reads badly and helps nothing.
- Set and forget. A page with projects from 2021 says you stopped working there.
A checklist before you publish a city page
- The page passes the swap test: at least three details would be false for another city.
- It includes at least two real projects from that city, with photos.
- It includes at least one review from a customer in that city.
- It covers two or three local specifics, such as permits, building types, or response time.
- The title, main heading, and URL follow your standard pattern.
- It's linked from your service areas page and the related service page.
- It has a clear way to call or request a quote.
- Someone who knows the work has checked every claim.
Frequently asked questions
How many service area pages should I have?
As many as you can fill with real material, and no more. For most local service businesses that's somewhere between three and fifteen. Start small and add cities as you collect projects and reviews there.
Can I reuse content across city pages?
Some shared material is fine, like a short description of your services or your warranty. But most of each page should be unique to that city. If more than half of a page is the same as another, it's probably closer to a doorway than a useful page.
Do I need a separate page for every service in every city?
Usually not. Start with one page per city that covers your main services. Only split out a page for one service in one city when you have enough jobs and demand to justify it, such as a large city where one service brings most of your revenue.
How long does it take a city page to rank?
Expect six to twelve weeks to see movement, and longer in competitive markets. Pages on sites that already rank well tend to move faster. If a page shows nothing after three months, look at whether it's linked internally and whether it truly offers more than competitors' pages.
Will service area pages help me show up in the Google map?
Not much directly. The map leans on your Google Business Profile and your distance from the searcher. Service area pages mainly help you rank in the regular results below the map, which is where most out of town buyers will find you.
Where to start this week
Pull your invoices from the last two years and count jobs by city. Take the top three cities and open your current page for each one, if you have one. Run the swap test.
For every page that fails, write down two real projects, one customer review, and two local details from that city. That's the raw material for a page that earns its ranking. Turning it into pages that rank and bring in calls is a core part of our local SEO work. Book a call and bring your city list.



