obraup.

Guides

Local SEO for contractors: city and service pages done right

Local SEO for a contractor comes down to four things: a Google Business Profile that is complete and accurate, one real page for each main service and each city you truly serve, the same name, address rules and phone number everywhere online, and honest reviews from past customers. Skip the tricks. Google says pages made only to rank for many near-identical places are spam, and a few strong pages beat a hundred thin ones.

Updated · By the ObraUp team

Start with the basics Google already looks at

When a homeowner searches for a roofer or plumber near them, Google weighs how relevant your business is to the search, how close it is, and how well known it is. You can't change where you are, but you can improve the other two.

  • Relevance: your trade, services and service areas are clearly stated, in your profile and on your website.
  • Distance: a service-area business can't fake a closer location. Don't use a P.O. box, a virtual office or a friend's address.
  • Prominence: reviews, a working website and consistent mentions around the web all help people and Google trust you.

Keep your name, phone and license identical everywhere

Pick one version of your business name, one main phone number and your CSLB license number, then use them exactly the same way on your website, Google Business Profile, Facebook, Yelp and any directory that lists you.

Small differences, like "Ace Roofing" in one place and "Ace Roofing & Construction Inc." in another, make it harder for people (and search engines) to be sure it is the same business. Use the name on your contractor license, not a name stuffed with keywords.

Your Google profile is the most important listing. Our guide on setting up your Google Business Profile walks through it step by step.

Build one strong page per service

Each main service deserves its own page. A roofer might have separate pages for roof replacement, roof repair and flat roofs. A painter might have interior, exterior and cabinet painting.

On each service page, include:

  • A plain explanation of what the work involves and how a job goes from first call to finished.
  • Real photos from your own jobs, with a short caption.
  • The kinds of problems you solve and the materials or methods you use.
  • A clear way to call or request a quote.
  • Your license number.

Write for the homeowner first. If a page reads like it was written for a search engine, rewrite it.

City pages: do them right, not many

City pages can work well when a city is somewhere you actually do jobs and you have something real to say about it. Google's spam policies describe "doorway" pages as pages made to rank for similar searches that all lead the visitor to the same place. Fifty pages that only swap the city name are exactly that.

A useful city page has content that could not be copied to another city:

  • Jobs you completed in that city, with photos (with the homeowner's permission).
  • Local details you know from experience, such as common building types, permit offices or weather issues in the area.
  • The services you offer there and how to reach you.

If you can't write something true and specific for a city, don't make a page for it. List the city in your service areas instead. A short list of strong pages is better than a long list of weak ones.

Make reviews part of your routine

Reviews are one of the most visible parts of your local presence. Ask every happy customer, soon after the job, with a direct link to your Google profile. Reply to every review, good or bad, calmly and briefly.

Never pay for reviews, offer a discount in exchange for them, or only ask customers you expect to be happy. Google and the FTC both prohibit fake or incentivized reviews. Our guide to getting more Google reviews covers a simple, honest process, and responding to bad reviews covers the hard ones.

Check the technical basics

A good local page is no help if it loads badly. Make sure your site:

  • Works well on a phone, since many homeowners search from one. See website speed and mobile.
  • Has a title and short description on each page that say what the page is and where you work.
  • Uses HTTPS, the secure version of a web address.
  • Has a phone number that can be tapped to call.

Be patient and keep it simple

Local search does not change overnight. A complete profile, accurate details, good service pages, a few honest city pages and a steady flow of real reviews add up over months. Check your Google profile once a week, add new job photos as you finish work, and update your pages when you add a service.

Where ObraUp can help

ObraUp builds your website, and it is the foundation for all of the above. If you'd like help beyond the site, ObraUp add-on services are quoted for each business and are not part of the plan price. Relevant ones here are Google Business Profile setup and weekly posts, City & service SEO pages and Google review requests after every job.

Ready to begin? Start with my website.

Questions people ask

How many city pages should I make?

Only as many as you can fill with real, useful details about jobs you do there. For many contractors that is a handful, not dozens. Cities you serve but can't say anything specific about can simply be listed as service areas.

Do I need a physical office to rank locally?

No. Service-area businesses can rank without a public storefront. Google says to hide your address if you don't serve customers there, and to list the areas you serve instead.

Does my license number help with SEO?

It isn't a ranking trick, but it builds trust with homeowners and California advertising rules expect it. Put it on your website and your profile. See your license number on your website.

How long until I see results?

There is no fixed timeline, and anyone who promises one is guessing. Expect improvement to come gradually as your profile, pages and reviews build up.

Sources

See the designs made for your trade.

Enter your license number and see three websites for your trade in about a minute. The build is free and your first month is $0.