Home / Blog / Local landing pages
Local landing pages

What should a multi-service business do when it has ten services and thirty cities?

Ten services times thirty cities is three hundred potential pages. Almost nobody needs all of them. Here is how to decide which combinations deserve their own URL and which should stay as a section on a hub.

A workshop desk with dozens of blank paper index cards arranged in a grid, a person's hands sorting them into rows and columns, a mug of coffee and a pencil nearby, warm afternoon light through a window

The full matrix is a trap

The math is seductive. Ten services, thirty cities, three hundred pages, each one supposedly capturing a search like water heater repair plus a town name. In practice, most of those combinations have no search demand, and the pages written to fill them end up nearly identical to one another. Search engines have gotten good at recognizing a template with the city and service swapped, and even when they do not penalize it, they simply decline to rank most of it. You end up with three hundred URLs, a handful of which get traffic, and a maintenance burden you did not sign up for. Related: What a Good Service Area Page Contains

There is also a human cost. Someone has to write, review, and eventually update each page. A three hundred page matrix means that when your phone number changes or you drop a service, you have hundreds of edits to make or a generator to trust completely. Businesses that build the full grid tend to abandon it within a year, leaving stale pages that promise services they no longer offer in towns they no longer serve. Starting smaller is not timid; it is what keeps the site honest. Related: Keeping Local Pages Fast

Keep reading: Why Thin City Pages Hurt You, Building Genuinely Useful Local Pages, Ranking for a Service Area. See how Localander helps you service-area city landing page generator for local businesses.

Rank combinations by demand and margin

Instead of the full grid, score each service and city pair on two things: whether people in that city actually search for that service, and whether the job is worth driving there for. A drain cleaning call in a town forty minutes away may not be profitable, while a full repipe in the same town absolutely is. Keyword tools give you rough volume signals, but your own call logs and invoices are better evidence. Look at which service and town pairs you have completed repeatedly and which ones produced your best margins.

When you plot it out, a pattern usually emerges: a few core services deserve a page in nearly every city, a few niche services deserve a page only in the two or three largest cities, and the rest belong as a mention on a broader page. A typical outcome for a ten by thirty business is somewhere between forty and ninety real pages rather than three hundred, and those pages carry nearly all the value the full matrix would have.

Use hub pages for the rest

Every city still deserves a page, but that page can be a hub rather than a stub. A city hub page describes your presence in that town, lists every service you offer there with a sentence or two each, and links out to the dedicated service pages that exist for that city. For the services that did not earn their own page, the hub is where they live. This keeps every service findable in every city without generating a URL for each combination. Related: Scaling Local Pages Without Spam

The same works in the other direction. Each service page at the top level lists the cities where you offer it and links to the city-specific version where one exists. A visitor or crawler can move from service to city or city to service without hitting a dead end, and the site structure reflects real priorities rather than an artificial grid. Hubs also give you a natural place to add a combination later, when a new service starts getting calls in a new town.

Write the dedicated pages to be actually different

The pages that do earn their own URL need to justify it. A water heater page for one city and a water heater page for a neighboring city should differ in more than the place name. Housing age, common heater types you find there, local code quirks such as expansion tank requirements, the utility that serves the area, and your actual crew's experience in that town are all fair game. If you cannot find anything to say that is specific to that service in that city, that is strong evidence the combination should stay on the hub. Related: Why Thin City Pages Hurt You

A practical workflow is to keep a short fact sheet per city and a short fact sheet per service, then write the intersection from both. The city sheet holds things like neighborhood names, housing stock notes, and permit contacts. The service sheet holds the typical job scope, what varies by property, and the questions customers ask. The dedicated page draws on both, and the parts that come from neither are the ones you write fresh. That structure is also what a decent page generator should be built around, which is the approach we took with Localander.

Key takeaways
  • A full service by city grid produces mostly unranked pages and a maintenance debt you will not keep up with.
  • Score each pair by real search demand and job margin, then build only the pairs that earn it.
  • City hub pages hold the services that did not earn a dedicated URL, so nothing is unfindable.
  • If a service in a city has nothing specific to say, it belongs on the hub, not on its own page.
Julien Jimenez
Written by

Julien Jimenez

Julien Jimenez is an independent software builder based in Paris. He designs, ships, and operates focused SaaS products for small businesses and independent professionals. Read the full author page.

A real page for every city you serve

Service-area city landing page generator for local businesses. Localander is built to help you put this into practice.

Generate my pages

More from the Localander blog

Get the Localander playbook

Practical guides on local landing pages, straight to your inbox as we publish them. No spam, unsubscribe any time.

By subscribing you agree to our privacy policy.