How to create a site-by-service Matrix

Step 1: List all your services.

Make the list as comprehensive as possible. For this example, we’ll just list 5 services. Keep in mind, a typical trades business has 8 to 15 distinct services worth a dedicated page.

Step 2: List your service areas across the columns.

This is a comprehensive list of every suburb you service or want to service. For a plumber based in the suburbs of Dallas-Fort Worth that may look like below. Again, to keep it simple I’ve just listed 5 cities. That brings the total grid to 25 potential URLs (5 x 5). However, not all of these city - service combo has real demand.

Step 3: Check the cells with real demand

There are three sources of signal.

  • Your job log. Every cell where you have actually completed a job in the last 12 months has real demand.
  • Google Trends and Google Keyword Planner. Search volume for "service + suburb" tells you whether queries are happening.
  • Local competitor coverage. Look at the businesses currently ranking for the queries you care about. If they have dedicated pages for the cell, the demand is real.

Mark the cells that have demand. Most matrices end up with 30 to 60 viable cells.

Step 4: Dedicate a URL to each viable cell

Build a page for each viable cell with the URL pattern /service/suburb/. For example: /water-heater-repair/plano/ or /drain-cleaning/frisco/. The page should be about exactly the service in exactly the suburb, and nothing else.

Expert Tips

The 100,000-population threshold

Not every suburb should get its own page. The clearest rule for cadence is to create a dedicated page per every 100,000 people. Suburbs with populations above 100,000 have enough native search volume to support dedicated service pages.

For areas below 100,000 people, group regionally. Smaller DFW suburbs such as Mansfield or Cedar Hill often do not have enough query volume to support a dedicated page per service. Group 3 or 5 neighboring small suburbs into a regional page like “Drain Cleaning in South Tarrant County”. The regional page must name each suburb that you are trying to target. That way, your webpage will get enough cumulative query volume to rank, and avoids the thin-content trap.

Related guides

A spreadsheet matrix with service categories down the left and DFW suburbs across the top, with check marks in cells that have demand
SEO

Why your business site needs one service per page

May 14, 2026
A drag-and-drop interface on the left, a developer working at a desk on the right
Strategy

Squarespace Is $200/Year. We're $1,800. What the Extra $1,600 Actually Buys.

Jun 1, 2026
A 27-inch monitor next to a small smartphone showing the same website rendered at very different sizes A 27-inch monitor next to a small smartphone showing the same website rendered at very different sizes
Performance

Designed on a 27-inch Monitor. Used on a 6-inch Phone.

Apr 17, 2026