The Blog / For the trades
For the trades9 min readBy Jamie · FounderJuly 14, 2026

Why your contractor website doesn’t rank for the towns you actually drive to

You’ll drive 45 minutes for the right job. But search for your trade in that town and you’re nowhere. This is the most common, most expensive structural mistake on contractor websites — and it’s fixable.

Here’s a conversation I’ve had more times than I can count. A contractor tells me they cover Kitchener, Waterloo, Cambridge, Guelph, Brantford, and Paris. Six towns, happily, all day long. Then we search their trade plus each town name. They show up in the one where their shop is. Everywhere else: nothing. Not page two — nothing.

Then we search their competitor — a smaller outfit, honestly not as good on the tools — and there they are, ranking in four of the six. The contractor’s reaction is always the same: how?

The answer is boring and structural, which is exactly why nobody explains it to you.

Google ranks pages, not companies

This is the whole thing, so let’s be blunt about it. Google does not rank your business. It ranks individual pages, and it matches each page to a specific search. When a homeowner in Guelph searches “home addition Guelph,” Google looks for the page that is most specifically about home additions in Guelph.

Now look at your website. You probably have a Services page listing everything you do, and somewhere — maybe the footer, maybe the About page — a line that says “proudly serving Kitchener-Waterloo, Cambridge, Guelph, Brantford and surrounding areas.”

To you, that sentence says “we cover those towns.” To Google, that sentence is nearly worthless. There is no page on your site that is about home additions in Guelph. There’s a list that mentions Guelph once. So when the Guelph search happens, Google has nothing focused to rank, and it shows the competitor who does have that page — even if their work is worse than yours.

Your service area isn’t a sentence in your footer. To Google, it has to be an architecture.

What the ranking competitor actually has

The outfit beating you didn’t out-hustle you on the tools. Their website has a page for each service in each town they want work in. A page about home additions in Guelph. A different one about home additions in Cambridge. A different one about kitchen renovations in Guelph.

Each page is genuinely about that combination — that service, that town, that homeowner. So when the search happens, Google has an obvious, confident match. It ranks them. They get the call. You never knew the search happened.

That’s it. That’s the trick. It isn’t a trick at all — it’s just building the site the way search actually works instead of the way a brochure works.

Why “just add the town names” doesn’t work

Every contractor who hears this has the same instinct: fine, I’ll make six pages, copy the same text, and swap the town name. Please don’t. Google has seen that trick for twenty years and it’s specifically built to catch it. Six near-identical pages with a word swapped reads as thin, duplicated content, and it can drag the whole site down rather than lift it.

The pages have to be genuinely different, and here’s the good news: for a real contractor, that’s easy, because the towns genuinely are different. You know things a marketer never could:

  • The housing stock differs. Century homes in one town, 1970s bungalows in another, new subdivisions in a third. Different problems, different projects, different conversations.
  • The permit process differs. Different municipalities, different timelines, different inspectors, different headaches. Homeowners are desperate for someone who knows this.
  • The jobs differ. Second-storey additions where lots are narrow. Garden suites where zoning allows them. Basement work where the water table cooperates.
  • You have local proof. Projects in that town. Photos. Reviews from those neighbours.

Write what you actually know about working in each place and the pages become distinct automatically — more useful to the homeowner and more rankable. That’s not a coincidence. It’s how the system is designed.

What this looks like when it works

A design-build firm I work with had this exact problem: strong reputation, weak digital capture, ranking essentially in one town. We rebuilt the site with per-service, per-city architecture — real pages, real local detail, no copy-paste.

Six months of Search Console data later: impressions went from 12,700 to about 65,000 per 28 days — 5.1×. Average position went from 33 to 11. Page four to page one. The site now averages #2 for “contractor near me” and produces roughly eight qualified inquiries a month for five-and-six-figure projects. Same crew. Same quality of work. Different architecture.

Those are real numbers from Search Console, not a case-study fantasy — and the honest part: it took six months of compounding, not thirty days.

How to check your own site tonight

You don’t need to hire anyone to diagnose this. Open your website and ask: is there a real page — its own URL, its own content — for each service in each town I want work in? If the answer is “no, but we mention the towns,” you’ve found why you’re invisible in five of your six towns.

Then search your trade plus each town in an incognito window and see who shows up. That list is your real competition, and I’d bet money their site is built the way this article describes. Not better craftsmen. Better architecture.

No pitch until you ask for one

Ready to put this to work?

New site or fixing the one you have — start the conversation. If you already have a website, I’ll include a free, plain-English audit with my reply: rankings, local search, and whether AI can find you.

Start your project →

Already have a site? Ask for the free plain-English audit — or just email jamie@foundwork.ca.

© 2026 · Static build · Ontario