September 26, 2026
Google Ads for Roofers: How to Get More Leads (Without Wasting Money)
Right now, in your market area, there’s a homeowner waking up in their kitchen at 6AM and watching water drip onto the tile floor.
They aren’t posting in a Nextdoor group. They aren’t messaging their cousin Vinny who “knows a guy.”
They’re opening their phone, googling “roof repair near me”, and calling the first person who doesn’t sound like they’re going to ghost them.
And most roofing companies completely miss out.
The part that stings
You’ve most likely already messed around with Google Ads. You created a campaign, chose some keywords that “felt right,” directed traffic straight to your homepage, and watched thousands of dollars fly out the window.
Zero jobs booked.
You shook your fist at Google, proclaimed the platform “doesn’t work,” and returned to purchasing shared leads from a third-party website that sold the same homeowner’s phone number to four of your competitors.
I understand. That sucks.
Here’s the problem: Google Ads isn’t broken. Your setup was.
Once your campaign is set up correctly, paid search is by far the most predictable and scalable lead source your roofing company can own. I’ve managed SEO and paid search ads for home service companies over the last 16 years (roofers, HVAC, pool, garage doors, tree care), roofing has proven to be the best vertical I work in for returns. High ticket. Real customer intent. Rapid payback.
But you HAVE to know what you’re doing. This post shows you the exact campaign architecture that sets winning roofers apart from everyone else blindly paying $40 per click to just target DIYers.
TL;DR
Roofing has some of the highest purchase intent of any home service category. Google Ads lets you reach homeowners at the moment they need you most. Get ahead of the competition by running 3 ad products. Start with Local Services Ads (pay per lead, Google Verified badge, builds instant trust), Search Ads (full control of your keywords, copy, landing pages), and Display remarketing (keep your audience in sight if they don’t call). Split your keywords up into different campaigns. Maybe have one for replacements, one for emergency roof repair. You can split it out however you want, but have each campaign budgeted out. Focus on targeting by ZIP code rather than a blanket 50-mile radius. Ready to build yours?
What is Google Ads for roofers (and why does it work)?
Before we dig into tactics, let’s first establish some vocabulary.
When someone types in a Google search to find a roofer. You can have your company on top of those searches. That’s what Google Ads are. It’s like roofing SEO, only instead of waiting months for results, you can get leads on day one.
You place bids on keywords YOU choose (“roof replacement [your city],” “emergency roof leak repair”), and when a homeowner searches for those terms, your ad will display above the organic results. You only pay when someone clicks on your ad. Hence, pay per click.
When someone clicks your ad, they’re coming straight to you. Unlike with third-party lead sites, there’s no sharing. No running to the phone before three other contractors.
Buyers are READY. Unlike window companies or painting contractors, homeowners aren’t casually browsing your services. When they search “roof repair near me” they are hiring a roofer this week.
It pays for itself. Verisk’s 2026 U.S. Roof Report found average residential roof replacement costs hit $17,631 in 2025, up 33% from the 2021–2024 average, with repairs averaging $4,699 (up 25%). That means if you land one job, you’ve paid for your entire month of ads several times over. Could you ever dream of that with Facebook ads?
It’s not an interruption. Facebook interrupts people. Google Ads catches people who are looking for you when they’re looking for you.
You can measure everything. Set up correctly, Google Ads allows you to measure which keywords, which ads, and which campaigns bring you phone calls and closed jobs. Simply cut the tactics that aren’t working and double down on the ones that are.
You just can’t get that kind of accountability with any other channel for roofers.
Step 1: The Google Ads “Trifecta” for Roofers
Before we hit a single keyword…Know this. There is no such thing as Google Ads. Google has many different ad products. The roofers succeeding today are using all of them.
Local Services Ads (LSAs)
Local Services Ads are the listings you see at the very top of the page. Yup. Above everything. Above the traditional text ads. Above the map pack.
Just FYI, Google used to have the Google Guaranteed badge. As of October 20th 2025, they discontinued it. Google screened and license-verified them as well. Now they all fall under the Google Verified badge. So there is no more money-back guarantee.
If you don’t have those configured yet, go do that. Right now. Seriously. Stop reading and set those up. I’ll wait.
LSAs are a totally different beast. You pay per lead, not per click. You aren’t charged when someone clicks and bounces in 4 seconds (aka a tire-kicker). You’re charged when someone actually contacts you.
Pros
- Pay-per-contact, so you’re only charged for actual contacts. Stop paying for clickers that don’t convert.
- Instant homeowner trust. The Google Verified checkmark tells them Google pulled your license, your insurance, and your background check before you ever showed up on that page.
- Displayed at the top of the page above all other ads.
- Dispute questionable leads and have them credited back to your account.
Cons
- Takes 2-4 weeks to verify. Can’t get it done overnight.
- No ability to target keywords. Want to rank specifically for “commercial TPO replacement”? You can’t.
- Your ranking relies on variables outside your control, such as number of reviews/reply speed.
How To Get Your LSA To Rank Higher
When every roofer has the same checkmark, the badge stops being the thing that wins the click. Your reviews and your response rate are.
Reviews: This will be up to you. You will outrank someone that has 20 reviews and a 4.5 star rating if you have 80 reviews with a rating of 4.8. In 2026, 97% of people will read reviews for local businesses. 47% will not use a business if it doesn’t have at least 20 reviews. And 31% will only use businesses with 4.5+ stars.
Response rate: If you are not responding 80% of the time, you will drop from the top spot. Even if you’re rated the highest roofer in your area.
Lead Disputes: You have 30 days to dispute any bad leads. Say the number was wrong, the lead was a duplicate, or the lead was not in your city. Add notes to your disputes and add pictures. Chances are, if you dispute them with no notes, they will deny your claim.
Search ads (PPC)
Search Ads are the classic text ads displayed directly below the LSAs.
LSAs are GREAT, but they’re a little basic. If you’re looking to target specific keywords such as flat roof replacement. You would use search ads.
Search ads also let you:
- Craft your own ad copy
- Pick what page you want your customers to land on.
- Set your own bidding.
- Test ad copy against each other.
That’s the trade-off. LSAs provide inexpensive trust. Search ads provide you control.
Display ads and remarketing
There’s a third layer most roofing companies are missing: Google Display Ads. Remember the banner ads you see on websites all around the internet? Those live in Google’s Display Network.
They’re ridiculously inexpensive compared to search clicks.
For example, a homeowner googles “roof replacement estimate.” They click your ad. They land on your page. They read your content for ninety seconds.
They don’t call. They close the tab and go get two more quotes.
This is where display can make you money. Show your logo and truck to that homeowner for the next 30 days. All for a few cents per click. They will be shopping for more quotes, and when it’s time to make a decision, you’re going to be the one that comes to mind.
The full strategy
Do all of them.
When you combine LSAs + Search Ads + Display remarketing. You’re going to be taking up more space on the page than anyone else. This will make you seem like the biggest company in your industry even if you aren’t just yet.
Step 2: Segment your campaigns like a champ
By far the number one beginner mistake I see with roofing clients is that they throw everything into one campaign.
“Roof repair”, “full roof replacement”, “metal roofing” – you name it, it gets thrown into the same bucket. Same budget. Same ads. Same landing page. WHY?!
Nope. Different jobs = different customers = different margins = different level of urgency. Divide your campaigns accordingly.
Here’s what I recommend:
Campaign 1: Full replacements
These are your bread and butter. The high-ticket work.
Keywords are expensive and competitive, so you will feel the CPCs here. But one closed job can easily reimburse ten times your ad spend. This campaign gets its own budget. It’s own ad copy. And most importantly, It’s its own landing page.
Not a landing page you share with other campaigns. Its own landing page.
Campaign 2: Emergency repairs
Lower ticket than full replacements, but still high volume and urgent.
The homeowner typing “emergency roof leak repair” into Google at 11 PM is NOT comparison shopping. They need a roofer. They need somebody NOW.
These types of ads will get you calls if you answer your phone. (Hint: If you’re not answering the phone, none of this optimization stuff even matters. Make sure you’re answering the phone FIRST.)
Campaign 3: Storm Damage
This is the campaign most roofers never think about.
But man, when a storm hits, roofers can be busy for months.
Build out the keywords. The ads. The landing page. Don’t skip any steps.
Then… pause it.
Leave it there. Sleeping. Ready.
When a hailstorm or severe windstorm blows through your area, unpause the campaign, and voila while all of your competitors are furiously trying to write ads and copy managers are approving landing pages, you’re busy harvesting every “hail damage roof repair” and “storm damage roofer near me” search within your targeted ZIP codes.
Campaign 4: Commercial roofing (depending on your market)
Yes, I know commercial will suck for clicks. It can be very expensive: $30-40+ a click.
Ok, fair.
But hear me out. Do the math with me.
Commercial Roofers I’ve worked with have spent $500 per month on ads and generated ONE commercial roofing lead that turned into a 10,000 sq. warehouse for over $95,000.
ONE lead. ONE click that cost less than filling up your gas tank.
That’s why commercial should have its own campaign and budget. Not bundled together with your residential campaign.
The reward is too great to pass up.
Final note about geography
Targeting by location within X miles of your office location is lazy and expensive.
Start targeting by ZIP code. This allows you to focus your spend on specific neighborhoods you want to target – think high-income neighborhoods, older neighborhoods with 20-year-old roofs, or recently storm-damaged areas.
Targeting by ZIP also gives you more control over where your ads appear. Plus, you aren’t paying for clicks from folks an hour drives away who your team will never make it to.
By splitting up your campaigns this way, three things happen:
- You have complete control over how much you spend on each customer.
- You can write targeted ads that apply to that customer’s specific situation.
- You’ll know which services are profitable and which ones aren’t.
Step 3: Keyword control and ruthlessly good negative keywords
Not all keywords will generate revenue. Let’s say someone searches “how long asphalt shingles last”. Or someone researching “how long it would take to replace their roof”. You don’t want to spend $38 on someone who is just trying to find out something they can do themselves.
Now, a person who searches for “How much does it cost to replace my roof in [city]” That person has a credit card in their hand.
A quick word on match types
Google offers different keyword match types.
If your goal is to waste as much money as possible, use broad match. You’ll see roofers showing up for search terms like “roof rack for Tacoma”. I know, right.
I always recommend using exact match and phrase match. You want to be able to control where your ad is being shown.
Once you’re generating enough conversions per month (at least 30), you can start to open things up to broad match.
Storm and seasonal keywords
The Storm Damage Campaign we created in step 2 will need to have these set up when a storm comes in.
Stuff like:
- “hail damage roof repair [city]”
- “storm damage roofer near me”
- “wind damage roof inspection”
- “roof insurance claim help [city]”
People will be searching these types of keywords hours after a storm hits. So if you have them ready, you can take advantage of that traffic.
The negative keyword shield
Next, we have negative keywords. Most beginners overlook this. They allow you to tell Google not to show your ads on certain search queries. This is the best 30 minutes you will ever put into your Google Ads account.
If you open a Google Ads campaign for roofing and don’t add negative keywords, you’re paying for people doing research.
Create this list before you start spending money on Google Ads. Below, I’ve broken negative keywords down by category:
Someone looking for a job
roofing jobs, roofing salary, roofing careers, roofing hiring, roofing resume, roofing employment, roofing apprenticeship
They want to do it themselves
DIY roof repair, how to patch a roof, how to install shingles, roof repair tutorial, step by step roofing
Shopping for supplies
Lowe’s roofing, Home Depot shingles, roofing materials wholesale, cost of shingles per square, roofing supply near me, buy shingles online
Looking for a low price or just window shopping
cheap roof repair, free roofing, cheapest roofer
Research/Insurance related
insurance claim calculator, roofing insurance claim process
Competitors and Directories
Name of competitors you may know of
Directories like Angi, HomeAdvisor, Thumbtack, Yelp roofing
Go through your search terms report once a week and continue to add more.
Accounts with at least one negative keyword average a 13% monthly conversion rate. Accounts with none average 4.6%. A quarter of businesses have never added a single one.
Step 4: Ad assets — take up more space, get more clicks
Google gives you free space on Search Results Pages. Roofers don’t use it.
Ad assets (they used to be called ad extensions) allow your ad to take up more space.
You will see higher CTRs by adding these.
There’s no reason you shouldn’t be adding all of these to your roofing business:
Call Assets. Now anyone on their phone can just click to call you!
Sitelinks. Add sitelinks for your reviews page, photo gallery, financing, or free estimate page.
Callouts. Examples would be Licensed & Insured. 24/7 Service. Family-owned business. Free Estimates.
Structured Snippets. Ex. Services: Roof Repair, Roof Replacement, Leak Detection, Gutters.
Locations. Shows your business location. Let people know you’re local.
Lead Form Assets. Can collect lead information without the customer going to your website.
Image Assets. Show off your brand. Have a picture of your trucks or maybe even a project.
When you use multiple assets, your ad takes up more space. This gives you more room on the page than your competition.
Advertisers who improve Ad Strength on responsive search ads and sitelinks from “Poor” to “Excellent” see 15% more conversions on average, and advertisers who increase sitelinks to 6 per campaign see up to 3.5% more conversions at a similar cost per conversion.
Step 5: Landing pages and the “speed to lead” reality
What’s crazy is it has nothing to do with Google Ads.
Roofers almost always do this.
They create a great ad. Select good keywords. Pay for a click from someone who needs a new roof.
Points them to their home page.
Which consists of a slider of pictures and some blurb about how they have been “in business since…” Followed by 6 different services and contact us at the bottom of the page.
A person gets confused and leaves your website in 11 seconds.
You just bought a click that didn’t go anywhere.
The landing page rule
It’s simple:
When someone clicks your emergency roof repair ad, they should be going to a page that discusses emergency roof repair.
If they click your commercial roof ad, they should be taken to a commercial roof page. Each ad should have its own landing page.
What your landing page actually needs
Your headlines should mirror your ad copy. Yes, word for word. This creates continuity, which can help establish trust. If your ad copy says “Roof leak repair near me,” your headline should be similar.
Phone number at the top. Make it clickable so people on mobile devices can tap your number to call you.
Form. Keep it simple: name, number, and what they need help with. No address needed.
Don’t think the form is only there for people who don’t want to give you their number. Forms allow you to create leads as well. Many homeowners will look at quotes at 10 pm but won’t call anyone until a few days later. When they leave their info on your website, you can add them to your CRM system and follow up with them later.
Photos of your work. Do NOT use stock photos. People know when they’re looking at stock photos, and it will make you lose all credibility. Show off your crew. Show your truck and before-and-after photos.
Build Trust on your Landing Page. Add Google ratings to your site. Testimonials are always helpful. Mention how many years you’ve been in business and any licenses you have. Offer financing if you have it.
Have your site load quickly. Have your site load quickly. (If you run on WordPress, follow our guide on how to speed up your WordPress website). People won’t wait more than 3 seconds for your website to load.
Include your location. Mention cities you serve. People want to know you’re a local company when they are searching.
Speed to lead
Studies have shown that if you don’t reach out to a lead within 5 minutes, you will lower your chance of booking that customer. Roofing is an emergency situation. Book these customers.
Get on the phone with them and book them. Don’t just take a message and try to call them back. They will be calling your competitor.
Step 6: Having a Realistic Budget for True ROI
Let’s get into some budget talk. As I mentioned, roofing is a very competitive niche. When you look at how much Google Ads costs across home improvement trades, being in a competitive vertical means it’s going to cost you some money.
The minimum threshold
In a medium-sized metro area, you will want to be spending at least 3k-5k a month across your search and LSA to get this to work.
This isn’t because I enjoy high budgets. Without a reasonable budget, you’ll only be guessing what works and what doesn’t.
Roughly, you can expect to spend the following per market:
| Market | Monthly budget | What to expect |
|---|---|---|
| Small market (under 500K) | $1,500 – $2,500 | Lower CPCs by 30-50%. Great volume |
| Mid-size metro | $3,000 – $5,000 | Minimum budget to begin optimizing |
| Large Metro Market (Austin, Phoenix, Atlanta, Denver) | $7,000 – $12,000 | You will be up against many contractors, national brands, and aggregators |
If your market is on the smaller side, you have it easy. Not as much competition. Lower cost clicks. Easier to profit from your ads.
“What if I only have 1k a month?”
If you have less money, put it all towards LSA’s. Do not put any money towards search ads.
The average cost per click for search ads is going to be around $25-35. Depending on what market you’re in. With a thousand dollars, you’re going to run out of budget at 9 am on Tuesday with only 2 clicks. LSA ads, you only pay when someone contacts you. No more paying for tire kickers and people just looking to buy supplies at Home Depot. Once you’re making money off LSAs, start putting money towards search ads.
Where your budget should go
Once verified, this is where I would start:
- 50-60% LSA. Will give you the best return per dollar.
- 35–45% to search ads. Highest-intent keywords and promotes urgent services.
- 5% to Display. If you can spare it. You’ll want to retarget those who view your site.
You can always play with percentages, but I’d start with this.
Cost per lead benchmarks
Based on 2026 Google Ads benchmarks for the Home and Home Improvement industry, the average conversion rate is 8.05%. With an average cost per lead throughout the industry being around $91.
What should your cost per lead be when you’re doing things right?
| Service type | Channel | Cost per lead |
|---|---|---|
| Roof replacement | Search Ads | $250 – $350 |
| Roof repair | Search Ads | $120 – $180 |
| Storm damage / insurance claims | LSA | $150 – $200 |
| Storm damage / insurance claims | Search Ads | $350 – $500 |
| Commercial roofing | Search Ads | $300 – $450 |
I know when you’re used to paying 25 dollars a lead, these will seem crazy high.
But how much are you actually getting for that 25 dollars?
You’re sharing that lead with 4 other roofers.
The conversion rate is horrible on shared leads. You know this because you’re paying for them.
Google Ad leads will only call you. They will fill out your info. No one else will get these.
The ROI on Google Ads
Here it is.
Let’s say you’re spending $5,000 a month.
- $250 cost per lead = 20 leads
- 55% of those are qualified = 11 leads
- Close rate is 30% = 3-4 jobs booked
- $12,000-$15,000 average job price = $42,000-$60,000 revenue.
You’re looking at an 8-10x return.
Increase your budget to $8,000 a month, and you’re generating 5-6 jobs booked a month, which could equate to $60,000-$75,000 in revenue.
As you can see, the ROI will stay about the same as you increase your budget. There is a point where you will run out of leads to find, but for most roofers, you’re nowhere near that.
So back to the original question. Is a $300 lead too high?
If that lead converts into a job worth $15,000, you’re doing one of the best forms of marketing there is for your roofing business.
Change Budgets Seasonally
Demand fluctuates by season, so adjust your budget accordingly.
Spring/Summer: You will want to increase your budget by at least 20-30%. More customers means more competitors spending money.
After a storm: Increase your budget by at least 50-100% for 2-4 weeks. Make sure to turn on your storm campaign from above. This is where you will see your best returns from increasing your budget.
Fall: Spend more during this time as well. Customers want their work done before it gets colder.
Winter: You can lower your budgets for most areas but keep your LSA’s running to cover any emergency repair jobs. Don’t shut everything down. Customers will always need repairs.
Step 7: Tracking conversions
One of the most common mistakes I see on roofers’ ad accounts. Spending tons of money and having no idea what’s working.
What you need to track
Make sure these three things are in place before you spend any money.
Phone tracking numbers. This will allow you to track what keyword AND what ad someone called from. If you’re not doing this, there is no way to know if that $15,000 call came from your replacement ads or repair ads. You won’t be able to decide where to put more of your budget.
Form tracking. When someone submits a form, it should be tracked as a conversion in Google Ads. The cleanest way to ensure accurate tracking is to link Google Ads to Google Analytics so your data flows across both platforms smoothly.
Offline conversions. Once you get the hang of the basics, you should be feeding conversions from your CRM into your Google Ads account.
Let’s say a lead came in from Google Ads and you closed a job. You would then input that conversion into your Google Ads account. This allows the system to optimize on jobs, not just calls.
As it gathers data, it will start learning which clicks result in jobs.
I don’t see most roofing companies doing this. It’s something that can really help you out.
Metrics you need to be tracking
Impressions don’t matter. Clicks don’t matter. None of those pretty vanity numbers matter.
THESE numbers will help you understand if your campaigns are producing results.
Cost Per Lead. How much you’re paying for each lead (call/form fill) from your Google campaigns. This will allow you to see which Google Ads product you’re producing leads from.
Cost Per Booked Appointment. How much you’re paying for a new appointment. If this number is high compared to your cost per lead, then your follow-up process is lacking.
Percentage of leads booked. You may be getting cheap leads, but if they’re not converting into bookings, you need to focus on your follow-up process.
Return on Ad Spend. Revenue you made / money spent on advertising. Are your ads making you money?
Why the percentage of leads that book is so important.
If you’re running a campaign that produces leads for $80 and only book them at a rate of 30%, you’re paying $267 per appointment.
If you run that same campaign and increase your rate to 60%, you’re paying $133 per appointment.
You didn’t change any of your ads. You’re following up better.
When you can track these numbers, you’ll see where your weak spots are.
Let’s talk about Google Ads
You know how to lead a crew and build roofs that last longer than your mortgage.
I know how to get homeowners looking to replace their roofs to call you from Google.
I’m Joel. I run The Kaanen Group, and managing Google Ads for home service companies is the only thing I do. Check out our client results to see what proper campaign structure can do.
Here’s my deal for you.
If you’re currently spending on Google Ads and not seeing great returns, or you want to learn more but don’t want to spend $4,000, book a free 30-minute session with a dedicated Google Ads consultant, and let’s see how I can fix your setup.
I’ll review your area and website and give you 3 tips to start generating more calls today!
No sales talk, no pressure.
Just a conversation about what you’re doing right and what you can improve.
Book Your Free 30 Minute Consult
You have the ability to install these roofs.
We just need to help get the calls.





