PPC for contractors means paying Google for each click on an ad that shows when someone in your service area searches for the work you do: "emergency plumber near me", "roof repair", "electrician near me". Done well, it is the closest thing in marketing to buying a phone call from someone who needs you this week. Done badly, it buys clicks from students, DIYers, job seekers and people in the next state. The difference is not the size of the budget. It is how the account is built: which searches you pay for, which you block, how you split services, and whether Google can tell a booked job from a wrong number.
14-day Pro trial. No credit card. You pay Google for your clicks.
I'm Chiran Nawalage, founder of VibeAds. I build Google Ads campaigns for trades for a living, and I also buy clicks myself: VibeAds runs its own Search ads aimed at plumbers, cleaners, junk haulers, lawn care and HVAC owners. This page uses three sources and says which is which: Google Keyword Planner figures I pulled on November 13, 2026 for Atlanta, Denver, Phoenix, Dallas and Chicago; the click-price estimates and budget rule VibeAds uses to build campaigns; and 90 days of our own account (August 15 to November 12, 2026). It is not a report on a client's account.
Key takeaways
- Keyword Planner's "competition" score counts advertisers, not cost. "Emergency plumber near me" scored 6 out of 100 (LOW) in Atlanta and Denver, and its top-of-page bid range was $60.85 to $136.54.
- "Near me" searches cost more because they convert. "AC repair near me" ran $31.73 to $160 at the top of the page in Phoenix, Dallas and Chicago; plain "ac repair" started at $0.75.
- Budget decides how many services you can advertise, not how many leads you get. We plan for one click a day per service at three quarters of the trade's average click: about $7.87 a day per plumbing service, $13.50 per HVAC service.
- You will only see some of what you pay for. Over 90 days our search terms report named the searches behind $472 of $1,436 spent, about a third. Negatives you add before launch matter more than the ones you find later.
- Turn off what Google turns on: the "Presence or interest" location option, search partners, and auto-applied recommendations that add keywords or change bidding.
On this page: What it is · What clicks cost · Competition vs cost · Budget · Our account · Account structure · Settings · PPC vs LSA vs agencies · FAQ
What is PPC for contractors?
PPC (pay per click) is any ad you pay for only when someone clicks. For contractors it almost always means Google Ads Search campaigns: text ads above the organic results, triggered by the keywords you choose, limited to the area you serve, with a call button and a link to a page about that one service.
Two other Google products get lumped in with it:
- Local Services Ads (the "Google Guaranteed" or "Google Screened" boxes) charge per lead, not per click, and Google picks the searches. They are moving into Google Ads as pay-per-lead campaigns. I compare them in Local Services Ads vs Google Ads.
- Performance Max and AI Max let Google choose where and how your ads show. They can work for trades, but not as a first campaign. See Performance Max vs AI Max for local home services.
When a plumber or roofer says "we tried PPC and it didn't work", nine times out of ten they ran a Search campaign on broad keywords with Google's defaults on. The rest of this page is about not doing that.
How much does PPC cost for contractors?
Click prices depend on the trade, the service, the city and the hour. Below are two views of the same market: the averages VibeAds plans with, and the live ranges Google's Keyword Planner showed for real searches on November 13, 2026.
Planning averages VibeAds uses (US, per click):
| Trade | Average | Typical range |
|---|---|---|
| HVAC | $18.00 | $12.00 to $30.00 |
| Painter | $13.74 | $5.00 to $28.00 |
| Electrician | $12.18 | $5.00 to $25.00 |
| Garage door | $12.00 | $5.00 to $25.00 |
| Waterproofing | $12.00 | $5.00 to $25.00 |
| Roofer | $10.70 | $4.00 to $22.00 |
| Plumber | $10.49 | $4.50 to $22.00 |
| Tree service | $10.00 | $4.00 to $22.00 |
| Junk removal | $9.00 | $3.50 to $20.00 |
| Pest control | $8.50 | $3.50 to $18.00 |
| Landscaper | $7.50 | $3.00 to $16.00 |
| Pressure washing | $7.00 | $2.50 to $15.00 |
| House cleaning | $6.50 | $2.50 to $14.00 |
These are the figures our campaign builder starts from, set from Keyword Planner research across US cities. They are averages for a whole trade; your actual cost per click depends on which services you advertise and how well your ads and pages match the searches.
Keyword Planner, Atlanta and Denver, November 13, 2026 (top-of-page bid range):
| Search | Monthly searches | Competition | Top-of-page bid |
|---|---|---|---|
| plumber near me | 8,100 | Low (24) | $1.39 to $110.00 |
| emergency plumber near me | 1,300 | Low (6) | $60.85 to $136.54 |
| 24 hour plumber near me | 590 | Low (8) | $49.57 to $134.06 |
| commercial plumbers near me | 480 | Low (8) | $51.06 to $144.20 |
| water heater repair near me | 1,000 | Low (2) | $29.50 to $100.00 |
| drain cleaning | 1,300 | Low (31) | $3.35 to $81.55 |
| electrician near me | 2,900 | Low (32) | $23.36 to $88.15 |
| electrical contractors near me | 260 | Low (27) | $11.83 to $66.64 |
| roof repair near me | 880 | Low (6) | $13.20 to $68.50 |
| roof repair | 1,600 | Low (8) | $0.49 to $53.22 |
| roof replacement | 1,300 | Low (5) | $0.89 to $14.21 |
The "top-of-page bid" is Google's estimate of what advertisers paid to show above the organic results: the low end is roughly the cheapest bids that made it, the high end what the most aggressive advertisers paid. You will not pay the high end on every click. You will pay something in that range for the clicks that matter.
Two things stand out. Emergency and "24 hour" searches cost about as much as a whole service call's worth of margin on some jobs, because every plumber who answers at night bids on them. And roof replacement, the biggest ticket in roofing, has cheap clicks in this data, which I read as most replacement searchers being early-stage researchers, while "roof repair near me" is someone with water coming through the ceiling.
Why do low competition keywords still cost so much?
Because Google's competition score is not a price. Keyword Planner's "competition" (LOW, MEDIUM, HIGH, 0 to 100) measures how many advertisers bid on a keyword compared with all other keywords Google tracks. It says nothing about how much they bid.
In local service searches there are few advertisers per city but each one bids hard, because one job is worth hundreds or thousands of dollars. That gives you the odd-looking rows above: "emergency plumber near me" with a competition score of 6 and a $136 top-of-page bid. In our HVAC pull for Phoenix, Dallas and Chicago, "ac installation near me" scored 1 out of 100 and its range was $39.47 to $187.45.
If you use a keyword tool to find "easy" keywords for a trade, sort by the bid columns, not competition. The competition column is useful for one thing in our world: a HIGH score on a service keyword ("air conditioning unit" scored 82) usually means retailers and manufacturers are bidding, which tells you the search is about buying a product, not hiring someone.
How much should a contractor spend on Google Ads?
Start from the services you want to sell, not from a round number. The rule VibeAds uses to build campaigns is simple on purpose: each service ad group should be able to buy at least one click a day, counted at 75% of the trade's average click. Below that, Google spreads a thin budget across everything and nothing gets enough clicks to learn from.
What that means per service (US averages):
| Trade | Per service per day | Two services | Five services |
|---|---|---|---|
| HVAC ($18.00 click) | $13.50 | $27.00 | $67.50 |
| Electrician ($12.18) | $9.14 | $18.27 | $45.68 |
| Roofer ($10.70) | $8.03 | $16.05 | $40.13 |
| Plumber ($10.49) | $7.87 | $15.74 | $39.34 |
| Junk removal ($9.00) | $6.75 | $13.50 | $33.75 |
| House cleaning ($6.50) | $4.88 | $9.75 | $24.38 |
So a plumber with $17 a day can properly run two services, say water heater repair and drain cleaning. Eight plumbing services need about $63 a day. If your budget only carries two, pick the two you most want to sell and leave the rest out. One well-funded ad group beats eight starved ones, every time I have seen it.
This is a minimum for learning, not a forecast. I do not put a leads number next to a budget, because it depends on your page, your phone handling and your prices more than on Google.
A daily budget is also not a hard cap. Google can spend up to twice it on a busy day, but over a month will not spend more than 30.4 times it (Google Ads Help, overdelivery). For seasonal trades that matters more than the daily number.
What we learned buying clicks from contractors
VibeAds advertises on Google to trade business owners, so I sit on the same side of the auction you do, one level up the chain. Over 90 days (August 15 to November 12, 2026) our trade campaign paid these averages per click:
| Ad group (who we target) | Clicks | Average click |
|---|---|---|
| House cleaning owners | 62 | $12.00 |
| Junk removal owners | 31 | $6.21 |
| Plumbing owners | 17 | $13.78 |
| Lawn care owners | 13 | $8.21 |
| Pressure washing owners | 8 | $6.46 |
| HVAC owners | 4 | $20.88 |
| Pest control owners | 1 | $23.71 |
A few lessons from that account apply directly to a contractor's own ads.
1. HVAC is expensive everywhere. We paused our HVAC ad group in October at $20.88 a click, and our pest control one at $23.71. If clicks aimed at HVAC owners cost that, clicks aimed at homeowners with a dead AC in July cost more. Plan HVAC budgets from the HVAC row, not from a "home services" average.
2. You only see part of the bill. Google's search terms report showed us the exact searches behind $472.48 of $1,435.96 spent, about 33%. The rest is grouped under terms Google does not show for privacy. That is normal, and it is why the negative keyword list you write before launch matters more than the one you build from the report.
3. The most expensive single clicks were people who wanted something free or something else. Our two costliest searches were "free commercial cleaning leads" ($41.86 for one click) and "how to promote your cleaning business" ($40.37). We also paid for "how to bid on cleaning houses" and for Spanish-language searches ("como conseguir clientes para limpiar casas", $26.04), and our ads showed for "junk removal slogans", "catchy lawn care slogans" and "hvac sales presentation". Your version of this is "plumber salary", "how to fix a leaky faucet", "roofing school" and "hvac parts". Block them on day one.
4. Don't block a word just because it looks like research. One of our clicks from "plumbing marketing strategies" became a sign-up. For a contractor, "free estimate" is a buying search even though it says "free". That is why VibeAds adds "free" only as an exact-match negative: it blocks someone who typed the single word "free", while "free estimate plumber" still shows your ad. Read the search before you block the word.
5. Competitors' names show up whether you bid on them or not. Our HVAC ads matched searches for two marketing agencies' names. In your account it will be the big franchise in town. Decide on purpose whether you want those clicks; if not, add the names as negatives.
How should a contractor structure a Google Ads account?
The structure I use, and the one VibeAds builds:
- One Search campaign per trade. A company that does plumbing and HVAC runs two campaigns, so HVAC's summer budget never starves plumbing.
- One ad group per service, named for what the customer asks for: "Water Heater Repair", "Drain Cleaning", "Panel Upgrade", "Roof Leak Repair". Each gets its own keywords, its own ads that repeat the service, and its own landing page. Our trade library has 12 to 22 of these per trade, but a new account should start with the two to five the budget carries.
- Emergency work in its own ad group, with a call-first page and a schedule that matches when someone actually answers the phone. Google counts a missed call on its pay-per-lead campaigns as a charged lead when the caller stays on for more than 20 seconds during your hours (Google Ads Help), and a regular Search click on a night ad costs you either way.
- Exact and phrase match to start. Broad match and AI Max work better once you have 30 or more conversions a month for Google to learn from. Before that, they mostly find searches you would have blocked.
- Negatives at the campaign level from day one: jobs and salary, schools and licenses, DIY and "how to", parts and supply stores, tools and calculators. Our negative keyword list for plumbers, HVAC and electricians has the full sets, and the negative keyword tool builds one for your trade.
- Track calls as conversions, with a minimum call length that filters out wrong numbers. Google bids toward whatever you count, so if you count every 10-second call, it will find you more 10-second calls.
Which Google Ads settings should contractors change?
Three defaults cost contractors money more than any keyword choice:
- Location option. Google's default reaches people in your area and people "interested in" it. Choose "Presence" so you only reach people who are in or regularly in your service area (Google Ads Help, location options). VibeAds sets Presence on every campaign it publishes.
- Search partners. New Search campaigns include Google's search partner sites by default (Google Ads Help). Turn them off until your Google Search numbers are healthy, then test them on purpose.
- Auto-applied recommendations. Google can apply changes like "Add broad match keywords" and bid strategy changes automatically (Google Ads Help, auto-apply). When VibeAds publishes a campaign it switches off that setting for the 15 recommendation types Google allows it on, because a contractor's account should change when someone decides it should.
Is PPC better than Local Services Ads or an agency?
They solve different problems:
- Search PPC gives you control: which services, which towns, which hours, which page. You pay per click whether or not the person calls.
- Local Services Ads charge per lead and need Google's background screening, but you give up most control over which searches show you. Many contractors run both; see how to split a budget between LSA and Search ads.
- An agency runs Search PPC for you, usually for a monthly fee on top of your ad spend. A good one is worth it. Ask any agency three questions: Is the Google Ads account in my name? Can I see the search terms report? What do you count as a conversion? If the answer to any of them is vague, keep looking.
VibeAds sits between the second and third: it builds the Search campaign described above (services sized to your budget, trade negatives, Presence targeting, call tracking, a page per service), publishes it to your own Google Ads account, and checks it twice a day after that. You can see the whole campaign before anything goes live.
See your contractor campaign drafted
Pick your trade and service area, and review every ad group, keyword and negative before anything goes to Google Ads.
14-day Pro trial. No credit card. You pay Google for your clicks.
PPC for contractors FAQ
Is Google Ads worth it for contractors?
It is worth it when three things are true: you can answer the phone when ads run, your average job is worth many times your click price, and you track which calls became work. If any of the three is missing, fix it before spending more on clicks.
What's the difference between PPC and Google Ads for contractors?
PPC is the pricing model (pay per click). Google Ads is the platform most contractors use for it. Microsoft Ads (Bing) is also PPC and usually cheaper with less volume. When contractors say PPC they almost always mean Google Ads Search.
How long before PPC works for a contractor?
Calls can start the day ads go live. Learning takes longer: Google says a new campaign or bid strategy can show "Learning" for up to 7 days, and I would not judge a contractor campaign on less than 30 days unless it is clearly broken (no impressions, no calls at all).
Should contractors bid on "near me" keywords?
Yes. "Near me" searches are the most expensive because they are the most likely to call. Google already matches location from where the searcher is, so you do not need the words "near me" in every keyword, but you should not block them.
What is a good cost per click for a contractor?
Compare against your trade, not against other industries. In VibeAds' planning data, house cleaning averages $6.50 a click and HVAC $18.00. If you pay far above your trade's range, look at your match types and Quality Score; if far below, check that your ads show for buying searches and not research.
Can I run PPC without a website?
You need a page for the ad to send people to. It does not have to be your whole website: a single page per service with your phone number at the top works and often converts better. VibeAds builds one per service if you do not have your own.
Related reading: Google Ads for plumbers · Google Ads for HVAC companies · HVAC PPC · Google Ads for roofers · Google Ads for electricians · Google Ads automation tools