How to Rank in Multiple Cities Without Getting Penalized: The Service Area Page Playbook
Almost every home service business we look at has the same SEO problem.
They serve 8 cities. Each city has its own page. Each page is the exact same content with the city name swapped in: “Looking for a plumber in [your city]? You’ve come to the right place…” And then they wonder why none of them rank.
Worse, they sometimes get hit by a Google update and every one of those pages drops at the same time — because Google figured out the pattern and decided the whole batch is low quality.
You can absolutely rank in multiple cities. You just can’t fake it. Here’s the playbook for building service area pages that earn rankings instead of bleeding them.
Why most service area pages don’t rank
Three reasons, in order of how common they are:
- They’re thin. 200–400 words of generic boilerplate, no specifics, no proof, no reason for Google to consider them better than the competitor’s identical page.
- They’re duplicates with the city swapped. Google has been pattern-matching this for years. It’s the first thing the spam team’s algorithm looks for in the local space.
- They violate Google’s “doorway page” guidelines — pages whose only purpose is to funnel users from search results into a single main page, with no real local value of their own.
Fix all three and you’ll outrank 80% of your competitors before you even build a single link.
What “unique content” actually means for a city page
The honest answer most agencies won’t give: “unique” doesn’t mean the words are arranged differently. It means the information is different. A great service area page proves you actually work in that city.
A page for “AC Repair in Valdosta, GA” should include things you couldn’t put on the Waycross page even if you wanted to:
- The specific neighborhoods and subdivisions you serve (Stone Creek, Country Club, Five Points, etc.)
- Local landmarks near jobs you’ve done (“We replaced the rooftop unit on the Cracker Barrel off I-75 last summer”)
- Permitting quirks specific to that city or county
- Climate or seasonal patterns that affect the trade locally (humidity, hard freezes, salt air, hurricanes)
- Real photos of real jobs in that city, with EXIF data intact and alt text that includes the city
- Reviews or testimonials from customers in that city (with first name + neighborhood, not just stars)
- Schedule, response time, or service guarantees specific to that location
If you read your draft city page and could swap the name to a different city without changing anything else, the page isn’t ready. Period.
The service area page structure that works
Here’s a structure we use that consistently ranks across HVAC, plumbing, electrical, roofing, and pest control clients:
1. H1 — Local + service + benefit “AC Repair in Valdosta, GA — Same-Day Service Since 2009”
2. Trust strip near the top Stars, review count, Google Guaranteed badge if you have it, years in business, BBB rating, brands you service.
3. A local intro paragraph (2–4 sentences) Establish that you actually know this city. Reference a neighborhood, a road, a recent weather event, a permitting nuance — anything that proves you’re not a national franchise spinning up pages.
4. Services offered in this city (H2) A real list with short descriptions, each one linking to a service-detail page where appropriate. Don’t dump your whole catalog — list what’s actually relevant to that market.
5. Local proof (H2) 3–5 photos of recent jobs in the city, with location-specific alt text. A short case study or two. Testimonials from named customers in that city’s neighborhoods.
6. Service area details (H2) A list of ZIP codes, neighborhoods, or sub-areas you cover. An embedded Google Map centered on the city. Bonus: a short paragraph for each main neighborhood.
7. Local FAQs (H2) 5–8 questions that are actually specific to that city. (“Do I need a permit to replace an AC unit in Lowndes County?” beats “How often should I replace my AC unit?”) FAQ schema markup on these.
8. Pricing or starting-from costs (H2) Even a range builds trust. Most competitors hide pricing, so showing any number at all is a real differentiator.
9. Booking section Phone number, form, scheduling widget. Visible without scrolling on mobile.
10. Internal links Out to relevant service pages, your main service-area hub, and 2–3 other city pages where geographically relevant.
That structure is roughly 800–1,500 words of mostly unique content per city. Yes, it’s work. That’s the point — your competitors won’t do it.
How many cities is too many?
A reasonable rule of thumb: don’t publish a city page until you can fill it with real local content. If you’ve never actually done a job in Hahira, don’t publish a Hahira page. You’ll either get caught by Google or you’ll rank for a city you can’t service well, which is worse.
Most contractors we work with have 5–20 city pages. Some have 50+ — but those are usually multi-location operations with real crews, real reviews, and real photos from each market. They earned it.
Internal linking: the part that compounds
Service area pages don’t rank in a vacuum. They borrow authority from the rest of your site through internal linking. A few rules:
- Link from your homepage to your top 3–5 city pages by name.
- Link from each service-detail page (“AC Repair”) to the cities where you do that service.
- Link city pages to each other, but only where it makes geographic sense (Valdosta ↔ Lake Park is fine; Valdosta ↔ Atlanta is suspicious).
- Use the city name as anchor text, not “click here.”
Build the “Service Areas” hub page that lists every city you cover, and link to that hub from your main nav. That single page is often one of the highest-trafficked URLs on a contractor’s site.
Schema markup that helps
Two specific schema types pay off on service area pages:
- LocalBusiness schema on each page, with the city, state, and service area properties filled in correctly.
- FAQPage schema if you have the FAQ section (and you should).
You don’t need a developer for this. Most modern SEO plugins (Yoast, Rank Math, AIOSEO) generate it from fields you fill in.
The doorway-page line you can’t cross
Google’s spam policy has a specific call-out for “doorway pages” — and city pages are the most common trigger. The line you can’t cross:
- Pages that are nearly identical to each other except for the city
- Pages that don’t add value beyond what’s already on the main service page
- Pages that exist purely to funnel users into a single main page
- Pages where the URL or H1 is the only thing that changes between cities
If you build pages following the structure above — with real local content, real photos, real reviews, real FAQs — you’re not in doorway-page territory. You’re in legitimate local-relevance territory.
The 30-day rollout most contractors should follow
Don’t publish 20 city pages on day one. Do this instead:
- Week 1: Pick your 3 highest-value cities. Build one page following the full structure above for the most important city.
- Week 2: Build the second city. Steal the structure, replace the content with real local detail.
- Week 3: Build the third city. Add the “Service Areas” hub page that links to all three.
- Week 4: Update internal links across your service-detail pages to point to the right cities. Add LocalBusiness and FAQ schema.
After 60–90 days, look at Google Search Console for each page. Where you’re getting impressions but no clicks, the title tag or meta description needs work. Where you’re getting clicks but not converting, the page needs a stronger offer.
The bottom line
Ranking in multiple cities isn’t about having more pages. It’s about having pages that genuinely prove you serve those markets — with local detail, real photos, real reviews, and a structure search engines can read. Build them right, and one good page outranks ten lazy ones.
If you want a Local SEO partner who knows the line between aggressive and shady — and how to build service area pages that earn rankings without getting your site torched in the next Google update — we’d love to talk. Local SEO for home service businesses is most of what we do.
