Gooden Design Co.Web · SEO · Google Ads

Google Ads for Contractors: What Actually Works

Most contractors waste money on Google Ads because their campaigns are built wrong. Here's what has worked in the real campaigns we've managed for contractors across home services.

By Tom GoodenUpdated 9 min read

In this article+
  1. The numbers: what contractors actually pay
  2. Campaign structure that works
  3. Landing pages: where most contractor campaigns fail
  4. Phone call tracking: non-negotiable
  5. What to spend (and what to expect)
  6. Google Local Service Ads vs. Search Ads
  7. Common mistakes that burn contractor budgets
  8. Should you manage it yourself or hire an agency?
  9. The bottom line
  10. Frequently asked questions

Most contractors who try Google Ads have the same experience: spend a bunch of money, get some clicks, maybe a few calls, and no idea whether any of it was worth it. Three months later, they cancel and tell everyone Google Ads doesn't work.

Google Ads works, and it works extremely well for contractors. The trouble is that most campaigns are set up by someone who doesn't understand how contractors actually get jobs. A roofer and a dentist have completely different sales cycles, but they end up with the same cookie-cutter campaign structure. That's how budgets get wasted.

This is what we've learned managing Google Ads campaigns for contractors across roofing, HVAC, plumbing, electrical, concrete, and general contracting.

The numbers: what contractors actually pay

Google Ads costs for contractors swing a lot depending on the trade and how competitive the market is. These are the ranges we see again and again:

  • Cost per click (Search): $3 to $25, depending on the trade and market. HVAC and roofing in competitive metros push $15 to $25. Concrete, fencing, and painting in mid-size markets run $3 to $8.
  • Cost per lead: $25 to $150. A lead is a phone call over 60 seconds or a form submission. If you're paying more than $150 per lead consistently, something is wrong with your campaign, your landing page, or both.
  • Close rate from ads: 15% to 30% for most contractors. This depends more on your sales process than your ads.
  • Cost per job: $100 to $500 for a standard residential job. Higher-ticket commercial work runs more, obviously.

Well-structured campaigns actually hit these numbers. If yours are worse, the problem is almost certainly fixable.

Campaign structure that works

The biggest mistake contractors make is running one campaign with a grab bag of keywords. "Roofing," "roof repair," "roof replacement," "new roof," and "roofing company near me" all get thrown into one ad group. Google has no idea which ads to show for which searches, quality scores tank, and you pay more per click than you should.

This is the structure we use:

Separate campaigns by service type

If you do multiple things, each major service gets its own campaign:

  • Campaign 1: Roof Repair
  • Campaign 2: Roof Replacement
  • Campaign 3: Storm Damage / Insurance Claims
  • Campaign 4: Commercial Roofing

Each campaign gets its own budget, its own ad copy, and its own landing page. That way you control spend by service. If roof replacement jobs are worth $12K and repairs are worth $800, you want more budget on replacement.

Tight ad groups with intent-matched keywords

Within each campaign, organize ad groups by search intent:

Roof Repair Campaign:

  • Ad Group 1: Emergency / Urgent ("emergency roof repair," "roof leak repair near me," "leaking roof fix")
  • Ad Group 2: General Repair ("roof repair contractor," "fix damaged roof," "roof repair estimate")
  • Ad Group 3: Specific Issues ("missing shingles repair," "flashing repair," "roof vent leak")

Each ad group gets ads written for that intent. Someone searching "emergency roof repair" at 11 PM during a storm needs different messaging than someone casually looking for a repair estimate.

Use the right match types

Start with phrase match and exact match keywords. Broad match burns money for contractors because Google gets creative with matching. "Roof repair" on broad match will trigger your ads for "DIY roof repair tutorial" and "roof repair supplies near me." Neither of those people is hiring you.

Phrase match keeps things tight while still catching variations. Review your search terms report weekly for the first month and add negative keywords aggressively.

Landing pages: where most contractor campaigns fail

A great campaign structure still wastes money if it sends traffic to your homepage. Your homepage talks about your company history, shows a slider of project photos, and has a navigation menu with 12 links. That's not what someone searching "HVAC repair near me" needs.

Every campaign needs a dedicated landing page. That page should have:

  • A headline that matches the search intent. If the ad says "24/7 Emergency Plumbing Repair," the landing page headline better say something about emergency plumbing repair. Not "Welcome to ABC Plumbing, Serving the Greater Metro Area Since 1987."
  • Your phone number, large and clickable, above the fold. Contractors live and die by phone calls. Make it impossible to miss.
  • A simple form as a backup for people who don't want to call. Name, phone, brief description of the problem. That's it. Don't ask for their address, email, budget range, and preferred appointment time. Every extra field kills your conversion rate.
  • Social proof. Google review count and star rating, a couple of testimonials, license numbers, insurance info. Contracting runs on trust, and people want to know you're legit before they call.
  • No navigation menu. Remove it. The only actions on this page should be calling you or filling out the form. Every other link is an exit ramp.

We've seen contractors double their conversion rate just by switching from homepage traffic to a proper landing page. It's the single highest-impact change you can make. If you need help building pages that actually convert, that's what CRO is for.

Phone call tracking: non-negotiable

If you're running Google Ads for a contracting business and you're not tracking phone calls, you're flying blind. Most contractor leads come in by phone. Without call tracking, your campaign looks like it's generating clicks but no conversions, and you have no data to optimize against.

Set up:

  • Google forwarding numbers on your ads (call extensions and call-only ads)
  • A tracking number on your landing page that records calls and ties them back to the keyword that triggered the ad
  • Call duration thresholds as your conversion action. A 10-second call is a misdial. A 90-second call is a real conversation. Set your conversion threshold at 60 seconds minimum.

Once you know which keywords generate actual phone calls (not just clicks), you can shift budget toward what works and cut what doesn't.

What to spend (and what to expect)

Contractors always ask "how much should I spend?" The honest answer depends on your market and your goals, but here's a rough guide:

Minimum viable budget: $1,500 to $2,000/month. Below this, you don't have enough data to optimize. You'll get clicks, but you won't have enough conversions to know what's working.

Sweet spot for most markets: $3,000 to $5,000/month. That's enough volume to test several campaigns and put more money behind the ones that work.

Competitive metros: $5,000 to $10,000+/month. If you're a roofer in Dallas or an HVAC company in Phoenix, the cost per click is higher and you need more budget to compete.

Timeline to results: Expect 4 to 6 weeks before a new campaign is performing well. The first 2 weeks are data gathering. Weeks 3 to 4, you're optimizing based on what you've learned. By week 6, you should have a clear picture of cost per lead and cost per job.

Don't judge a campaign after one week. And don't let it run for three months without touching it. Either way you waste money.

Google Local Service Ads vs. Search Ads

Contractors also have access to Google Local Service Ads (LSAs), the "Google Guaranteed" listings that show above regular search ads. They work differently from standard Google Ads, so it's worth knowing how.

LSAs: You pay per lead, not per click. Google verifies your business (background checks, license verification). You show up at the very top of search results with a green checkmark. Leads come in as phone calls or messages through Google's platform.

Search Ads: You pay per click. You control the ad copy, landing page, and targeting. You get more flexibility and control, and more complexity with it.

The right answer is usually both. LSAs capture the "I need someone right now" searches at the top of the page. Search ads capture everything else and give you control over messaging and landing pages.

If your budget only allows one, start with LSAs. They're simpler to manage, and paying per lead lowers your risk. Then add search campaigns as your budget grows.

Common mistakes that burn contractor budgets

After managing contractor campaigns for years, these are the mistakes we see over and over:

Running broad match keywords from day one

Broad match tells Google "show my ads for anything vaguely related to this keyword." For contractors, that means your roofing ad shows up for "roofing materials," "roofing jobs hiring," and "how to roof a shed yourself." None of those people are hiring a contractor.

Start with phrase and exact match. Add broad match later, only after you've built a solid negative keyword list.

No negative keywords

Speaking of negative keywords, most contractor campaigns have zero. Add these on day one:

  • DIY, how to, tutorial, guide
  • Jobs, hiring, salary, career
  • Supplies, materials, tools
  • Free, cheap, discount (if you don't compete on price)
  • Reviews, complaints, lawsuit (for competitor brand terms)

Then review your search terms report weekly and keep adding. You never really finish this list.

Sending traffic to the homepage

I covered this above, but it's the most common mistake, so here it is again. Your homepage is not a landing page. Build dedicated pages for your ads.

Not answering the phone

It sounds obvious, and it happens all the time. You're paying $15 per click to get someone to call you, and the call goes to voicemail. Or rings eight times. Or gets answered by someone who sounds annoyed.

If you're running ads, you need to answer the phone every time. If you can't answer during work hours, use an answering service. A missed call from a Google Ad is $15 to $25 in wasted spend, plus the lost revenue from a job you'll never quote.

Ignoring mobile

Over 70% of contractor-related searches happen on mobile. Your landing page needs to load fast on a phone, your phone number needs to be tap-to-call, and your form needs to work with a thumb. Test your landing pages on your phone before you launch a single ad.

Should you manage it yourself or hire an agency?

This depends on your budget and your time.

Manage it yourself if:

  • Your budget is under $2,000/month
  • You have time to learn the platform and check it weekly
  • You're comfortable with spreadsheets and data analysis
  • You're patient enough to learn from mistakes (they'll cost you money)

Hire an agency if:

  • Your budget is $3,000+/month
  • You'd rather spend your time on jobs, not ad dashboards
  • You've tried managing it yourself and the results weren't there
  • You want someone accountable for the numbers

If you go the agency route, ask how they handle contractor accounts specifically. An agency that mostly manages e-commerce or SaaS campaigns won't understand your sales cycle. Contractors need phone call tracking, service-area targeting, and landing pages built for trust. Selling shoes online is a different job.

We manage Google Ads campaigns for contractors and we're upfront about what's realistic for your budget and market. No six-month contracts, no black-box reporting.

The bottom line

Google Ads works for contractors when it's set up deliberately: the right campaign structure, tight keyword targeting, dedicated landing pages, and real phone call tracking. Skip any of those and you're leaving money on the table.

The contractors who do well with Google Ads treat their campaigns like a system, whatever their budget. They build it right, measure everything, and make changes based on data instead of gut feeling.


Running Google Ads and not sure if they're working? We'll audit your campaigns and tell you exactly where the waste is and what to fix. Get in touch and let's look at the numbers together.

Frequently asked questions

How much does Google Ads cost for contractors?
Google Ads for contractors typically costs $3 to $25 per click, depending on the trade and market. HVAC and roofing in competitive metros run $15 to $25 a click, while concrete, fencing and painting in mid-size markets run $3 to $8. A well-structured campaign usually lands at $25 to $150 per lead and $100 to $500 per standard residential job.
What is the minimum monthly budget for contractor Google Ads?
Plan on at least $1,500 to $2,000 a month. Below that, you won't get enough conversions to know what's working. The sweet spot for most markets is $3,000 to $5,000 a month, and competitive metros (a roofer in Dallas or an HVAC company in Phoenix, for example) can need $5,000 to $10,000+ a month.
How long does it take for Google Ads to work for a contractor?
Expect 4 to 6 weeks before a new campaign performs well. The first 2 weeks are data gathering, weeks 3 and 4 are for optimizing based on what you learned, and by week 6 you should have a clear picture of cost per lead and cost per job. Don't judge a campaign after one week, and don't leave it untouched for three months either.
Should contractors use Local Service Ads or Google Search Ads?
Usually both. Local Service Ads charge per lead, show at the very top of search results with a green checkmark after Google verifies your business, and catch the people who need someone right now. Search Ads charge per click but give you control over ad copy, landing pages and targeting. If your budget only allows one, start with Local Service Ads because they're simpler and lower risk.
What are the most common Google Ads mistakes contractors make?
The most common mistakes are running broad match keywords from day one, skipping negative keywords, sending ad traffic to the homepage, not answering the phone, and ignoring mobile. Start with phrase and exact match, add negatives like DIY, jobs and supplies on day one, and send each campaign to a dedicated landing page with a large, tap-to-call phone number.

Want help with this?

Let's talk aboutyour site.

Tell us what you're working on and we'll get back to you within one business day. No sales pitch.

View all services →
  • We reply within 1 business day