Google Ads for roofers means paying Google to show your roofing company at the top of search results when nearby homeowners search for roof repair, a roof replacement, storm or hail damage, or a roof inspection. You either pay per click (Search ads) or per lead (Local Services Ads, which Google is moving into Performance Max). It works because roofing jobs are large and local, but the searches mix in shingle shoppers, DIY repairs and roofing jobs.

Key takeaways
- Roofers have three Google ad options in 2026: Search ads (pay per click), Local Services Ads (pay per lead) and Performance Max. Roofing is named in the first phase of LSA moving into Google Ads, so check your LSA account now.
- Our roofing benchmark is $10.70 per click on average, typically $4.00 to $22.00. Bids in your own metro can sit well above or below that, so check Keyword Planner and the roofing Google Ads cost page before you set a budget.
- Split repairs from replacements and keep a paused storm campaign ready. They need different bids, ads and landing pages.
- Roofing searches pull in shingle and materials shopping, roofing tools, roofing school and license, and roofing jobs. A day-one negative list matters more than any bid change.
- 2026 brought real changes: roofing is in the first phase of LSA moving into Google Ads, some missed calls are now billable leads in pay-per-lead campaigns, call-only ads are being retired, and ads can show inside AI Overviews.
I'm Chiran Nawalage, founder of VibeAds. I built our roofing campaign templates, including the ad groups, seasonal factors and negative keyword lists below, and this guide is the sequence I'd follow for a roofing company starting from zero in 2026..
On this page: Search vs LSA vs PMax · What changed in 2026 · Click costs · Setup in 9 steps · Measuring ROI · Troubleshooting · Is it a fit? · FAQ
For the cost side in more depth (bids by city, budgets by market size, cost per lead math), see roofing Google Ads cost. For the campaign build in more detail, see roofing campaign build. If you are choosing software to run the account, I compared the options in the best AI tool for roofing Google Ads.
Video transcript
Someone near you just searched for your competitor by name. Your ad can show up on that search. Type their names when you build a campaign in VibeAds, and each one gets its own ad group, built around searches for their name. The ads are written for people comparing, and never spell out their full name. Each one gets a landing page for switchers, and your own name gets an ad group too. Competitor targeting. Included with Max. VibeAds. Google Ads, done.
Which Google ad type should a roofer use?
Use Search ads when you want control over which jobs you pay for (replacements, storm damage and inspections), Local Services Ads when you want to pay per lead without managing keywords, and Performance Max only after conversion tracking is solid. Roofers who spend seriously on Google usually run Search and LSA together where LSA is available, because they show in different spots on the same results page.

| Search ads | Local Services Ads (pay-per-lead) | Performance Max (standard) | |
|---|---|---|---|
| How you pay | Per click | Per valid lead (call, message, booking) | Per click or conversion, bid by Google |
| Where it shows | Search results, below LSA | Top of Search and Google Maps | Search, Maps, YouTube, Display, Gmail and more |
| Targeting | Your keywords and negatives | Keywordless: service types and areas | Mostly automated from your assets and signals |
| Landing page | Any page you choose | Your Google Business Profile | Your site, plus generated assets |
| Control over job type | High: bid more for replacements than small repairs | Low: you choose service types, not searches | Low to medium |
| Best for | Replacements, storm damage and inspections, your own tracking | Steady leads without keyword work | Accounts with strong conversion and revenue data |
Sources: Google's Local Services Ads page, Google Ads Help, LSA transition to Performance Max. Eligibility, verification and pricing vary by country and service type.
How I'd decide:
- Run LSA if you can pass verification and want leads without managing keywords.
- Run Search ads to steer budget toward replacements, storm damage and inspections, each with its own page.
- Run both in competitive metros. More in LSA vs Google Ads.
- Keep insurance claims language careful. Don't promise a free roof or that insurance will pay.
- Hold off on standard Performance Max until you have a steady flow of tracked leads. Without that data it spends across channels you can't easily judge.
The setup steps below are about Search ads, because that is where the service and bid decisions make or lose money.
What changed in Google Ads for roofers in 2026?
Five changes matter for roofing accounts this year: Local Services Ads are moving into Google Ads as Performance Max with pay-per-lead goals (roofing is named in the first phase), unanswered calls can count as billable leads in pay-per-lead campaigns, call-only ads are being retired, AI Max is reshaping keyword matching, and ads can appear inside AI Overviews. Each one is below with the Google document it comes from.

Local Services Ads are moving into Performance Max
Google is migrating existing LSA campaigns into a Performance Max campaign type with pay-per-lead goals, managed inside Google Ads. You still pay per lead, the campaign stays keywordless, and the ads keep showing on Search and Maps in the same positions. Weekly LSA budgets become daily average budgets, manual bidding is no longer supported, and your verified status carries over. Google lists roofing in the first phase for select US home service advertisers starting August 2026, with service-area businesses without a storefront in a later 2026 phase. Many roofers run as service-area businesses, so check which phase applies to you. Source: Google Ads Help, LSA transition to Performance Max. Our LSA migration checklist covers what to check before and after the move.
Some missed calls are now charged as leads
Under Google's current lead rules for pay-per-lead campaigns, a call you miss during your business hours counts as a valid lead if the caller stays on the line for more than 20 seconds. Calls outside your business hours or outside your ad schedule are not charged, and if your phone system asks callers to press a key, the 20-second timer starts after they press it. Source: Google Ads Help, how leads work with pay-per-lead goals. Roofers are usually on a job, so set your Business Profile hours to the hours someone really answers, or use an answering service.
Call-only ads are being retired
Google is deprecating call ads (call-only ads). The option to create new ones was removed in early 2026, and existing call-only ads stop receiving impressions in February 2027. Google's replacement is a Responsive Search Ad with a call asset. Source: Google Ads Help, transition from call ads to call assets. If your roof repair ad group still uses call-only ads, rebuild it now with a call asset.
AI Max for Search campaigns
AI Max is an optional layer on Search campaigns that expands matching beyond your keywords using broad match and keywordless technology, and can tailor ad text and landing page choices. It comes with controls such as brand inclusions and exclusions and URL controls, and it reports headlines and URLs in the search terms report. Source: Google Ads Help, how AI Max for Search campaigns works. For roofing the risk is shingle and materials shopping, roofing tools, roofing school and license, and roofing jobs. Turn it on only after call tracking works, and keep the negative list below in place.
Ads in AI Overviews and AI Mode
Search, Shopping and Performance Max ads can now show inside AI Overviews and AI Mode in the US in English, labeled "Sponsored," with no separate campaign or budget. Exact and phrase match keywords only qualify when the query itself has clear commercial intent; broad match, AI Max and Performance Max can also match on the AI answer's context. You cannot opt out separately, but negative keywords still apply. Source: Google Ads Help, ads in AI-powered experiences. Questions like "how do I know if my roof needs replacing" or "does insurance cover hail damage" are where this shows up for roofers.
What do roofing clicks cost in 2026?
Our roofing benchmark is $10.70 per click on average, with a typical range of $4.00 to $22.00 (VibeAds planning estimates; the roofing Google Ads cost page shows bids by city and how the numbers are built). Average cost per click and the top-of-page bids you see in Keyword Planner are different numbers: the planner shows what advertisers bid to appear first, which is usually higher than what a click ends up costing.
At $10.70, a $70/day budget, our recommended start for a mid-size city, buys about 7 clicks a day before local bids move it. One replacement can be worth many repairs, so the account should spend most where a lead becomes an inspection and a replacement quote.
When is roofing demand highest?
Our roofing factors sit at 0.7x from December to February, climb to 1.3x in April and May, and stay at 1.1x to 1.2x through October. Spring and storm season drive the peaks. Lift budgets into spring and keep fall steady.
| Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.7x | 0.7x | 1.1x | 1.3x | 1.3x | 1.2x | 1.1x | 1.1x | 1.2x | 1.2x | 0.9x | 0.7x |

How do you set up Google Ads for a roofing company?
Set up roofing Google Ads in nine steps: split campaigns by urgency and value, build one ad group per service, add negatives on day one, target by Presence, write ads with assets, send each ad group to its own page, track calls and booked jobs, set budget and schedule, and avoid the usual mistakes. Each step is below.
Step 1: Split campaigns by job size, with storm on standby
Run one Search campaign for replacements and inspections, one for repairs, and keep a storm and hail campaign built but paused so you can turn it on the day a storm hits your area.

Step 2: Build one ad group per service
VibeAds' roofing template has more service ad groups than most accounts need; start with the five below and add others as budget allows.
| Ad group | Example keywords (phrase or exact) | Notes |
|---|---|---|
| Roof Replacement | roof replacement, new roof cost, reroof | Highest value; inspection is the conversion |
| Roof Repair | roof repair, roof leak repair, roof repair near me | Urgent; smaller tickets |
| Storm & Hail Damage | hail damage roof repair, storm damage roof | Paused until a storm; careful insurance copy |
| Roof Inspection | roof inspection, free roof inspection | Lead in to replacement |
| Metal & Flat Roofing | metal roof installation, flat roof repair | Specialty; only if you do it |
Homeowners also search by problem, not service name: "roof leaking", "missing shingles", "water stain on ceiling", "roof sagging", "mold on roof". Those searches are worth a few phrase match keywords in the matching ad group, with ad text that names the problem back to them.
Step 3: Add negative keywords on day one
Roofing pulls searches for shingle and materials shopping, roofing tools, roofing school and license, and roofing jobs, and they look close to your keywords. These are the negatives VibeAds starts every roofing campaign with:
"buy shingles", "shingles price per square", "roofing supply store", "roofing supply", "roofing materials", "tar paper", "roofing felt", "roof underlayment", "roofing nails", "roofing nail gun", "roofing tools", "metal roofing panels", "roof coating buy", "roof sealant buy", "roofer salary", "roofing license", "roofing school", "roof blueprint", "roofing diagram", "roof pitch calculator", "roofing square calculator", "cheap", "cheapest", "storm chaser".
Add them as phrase match at the campaign level, then review the search terms report weekly for the first two months and add anything that is clearly not a customer. Our free negative keyword generator builds a longer starter list for roofing and other trades.

Step 4: Set location targeting to Presence
In location options, choose "Presence: people in or regularly in your targeted locations" instead of the default that also includes people who show interest in the area. Draw your service area around where you really install, and widen it only after a storm if you have the crews.

Step 5: Write ads and add assets
Write one Responsive Search Ad per ad group with up to 15 headlines and 4 descriptions, and pin nothing at first so Google can test combinations. Put the service name in at least two headlines and your city in one. Headline ideas that fit roofing:
- Roof Replacement in [City]
- Roof Leak Repair, Fast Response
- Free Roof Inspection
- Storm and Hail Damage Repair
- Financing Options Available
- Licensed, Insured Roofers
Add a call asset, a location asset if you have a verified Business Profile, structured snippets for your services, sitelinks to your top service pages and callouts. Don't promise a free roof or that insurance will pay. Only claim warranties and certifications you really hold.

Step 6: Send each ad group to its own landing page
Clicks sent to a homepage leak away through the navigation and blog links. Give each main ad group a page whose headline repeats the search. A roofing landing page should have:
- A headline that matches the ad group (for example "Roof Replacement in [City]")
- Tap-to-call and an inspection request form
- What an inspection includes and what happens next
- Warranties and certifications you really hold
- Photos of real jobs and reviews
- Service area and financing if you offer it

If you don't have pages like these yet, VibeAds builds one per ad group; more on that in Google Ads landing pages.
Step 7: Track calls, forms and booked jobs
Track three conversion types: calls from ads (call assets and calls from the website, counted after a minimum duration), form submissions, and booked jobs sent back as offline conversions. Count calls and inspection requests as leads, track inspections booked, and send signed replacements back to Google Ads with their value. Without call tracking you will optimize on forms alone and miss most of your leads.

Step 8: Set budget, bidding and schedule
These are the daily budgets VibeAds starts roofing campaigns on:
| Market | Minimum | Recommended | Upper end |
|---|---|---|---|
| Small town | $15/day | $35/day | $70/day |
| Mid-size city | $35/day | $70/day | $140/day |
| Large metro | $70/day | $140/day | $280/day |
At our $10.70 benchmark, $70/day buys about 7 clicks a day before you account for local bids. If your budget is near the minimum, put it behind one or two services you most want rather than spreading it across all of them. Start with Manual CPC or Maximize Clicks with a bid cap while you collect data, and move to Maximize Conversions or Target CPA once conversion tracking has a steady flow of real leads.
Lift budgets from March through October per our factors, pull back in December to February, and turn the storm campaign on only when a storm hits your area.
Step 9: Avoid the common mistakes
- No negative keywords. Irrelevant searches eat budgets fast.
- One ad group for everything. You can't bid more for the jobs that matter.
- Sending clicks to the homepage. Navigation and blog links are escape routes.
- Not tracking calls. You will optimize on forms and miss most leads.
- Promising insurance will pay. It invites complaints and disapprovals.
- A radius bigger than your crews can serve. Long drives erase the margin.
- Spreading a small budget across every service. Focus it on the jobs you most want.
- Still relying on call-only ads. They stop serving in February 2027.
How do roofers measure Google Ads ROI?
Measure ROI by connecting three things: what each click cost, which lead it produced, and what the job paid. Use Google Ads conversion tracking for calls and forms, call tracking that ties each call to a keyword, and offline conversions that send booked job revenue back to Google Ads. Without the last step, you only know cost per lead, not which keywords make money.

A worked example with our planning numbers, not a promise: at $10.70 a click, a $2,000 month buys about 187 clicks. If 10% of those become leads (an assumption; your landing page and offer decide the real rate), that is about 19 leads at about $107 each. Whether that month pays depends on your close rate and your real job values. One replacement can pay for months of spend, so judge the account on signed jobs over a quarter, not one month's lead count. Plug your own numbers into the Google Ads ROI calculator rather than trusting any industry average, including ours.
Why is my roofing Google Ads campaign not getting calls?
Usually it is one of five things: the ads are not showing (budget, bids or disapprovals), they show for the wrong searches, the landing page loses people, calls are not being answered, or calls happen but are not tracked. Match your symptom to the likely cause below before changing bids.

| Symptom | Likely cause | What to check first |
|---|---|---|
| Few impressions | Budget too low for local bids, or ads disapproved | Ad status, "Limited by budget," your metro's bid range |
| Clicks but no calls or forms | Landing page mismatch or slow mobile page | Does the page headline match the ad? Is tap-to-call at the top? |
| Calls from people wanting materials, tools or jobs | Missing negatives or loose match types | Search terms report, then add negatives |
| Mostly small repair calls | Budget going to generic "roofer near me" terms | Spend by ad group; raise bids on replacement and inspection groups |
| LSA charges for calls you never spoke on | Missed calls during business hours | Business Profile hours and answer coverage |
| Clicks from outside your area | "Presence or interest" left on | Location options |
| Calls but Google shows 0 conversions | Call tracking not set up | Conversion actions and their status |
When is Google Ads not worth it for a roofing company?
Google Ads is a poor fit when your schedule is already full, when you can't answer calls during the hours your ads run, when your budget can't buy a meaningful number of clicks at your metro's bids, or when you have no way to track which calls became jobs. Fix capacity, reviews or tracking first, or start with your Google Business Profile.
It is a good fit when you have spare crew capacity, someone answering the phone, at least a few reviews, a page per main service, and a budget that covers your local bids for several weeks while the account learns. Plan on two to three months before cost per lead is predictable.
Quick-start checklist
- Decide Search, LSA or both, and check which LSA migration phase applies to you
- Check your metro's bids in Keyword Planner and pick a daily budget
- Repairs, replacements and a paused storm campaign; one ad group per service
- Phrase and exact match to start
- Day-one negatives, then weekly search term reviews
- Location set to Presence, inside the area your crews really serve
- One Responsive Search Ad per ad group with call, location, snippet and sitelink assets (no call-only ads)
- A landing page per main service with tap-to-call
- Call and form tracking, with booked jobs sent back as offline conversions
14-day Pro trial. No credit card. You pay Google for your clicks.
Roofing Google Ads FAQ
Is Google Ads worth it for roofers?
Usually yes, when the account is split by service and protected by negatives, because people who need roofing search locally and often want help soon. It is not worth it if you can't answer calls, can't track which calls book, or can't fund your metro's bids for a few months.
How much should a roofing company spend on Google Ads per month?
Our starting points are about $35/day in a small town, $70/day in a mid-size city and $140/day in a large metro, which is roughly $1,050 to $4,200 a month. Check your own metro's bids first, and adjust by season with the monthly factors above.
Should a roofing company use Local Services Ads or Google Ads?
Use LSA to pay per lead without managing keywords, and Search ads to steer budget toward replacements, storm damage and inspections with your own pages and tracking. In competitive metros, run both where LSA is available to you.
Is roofing part of the LSA move to Performance Max?
Yes. Google names roofing in the first phase of the migration for select US home service advertisers, starting August 2026, with service-area businesses without a storefront in a later 2026 phase.
Are call-only ads still available for roofers?
No new ones. Google removed the option to create call-only ads in early 2026, and existing ones stop serving in February 2027. Use Responsive Search Ads with a call asset instead.
What keywords should roofers avoid?
Shingle and materials shopping, roofing tools and nail guns, roofing school, license and salary searches, and DIY repair. The full starter list is in Step 3.
Can VibeAds build a roofing campaign for me?
Yes. You can see a sample campaign first, then start a 14-day free trial with no credit card.
VibeAds builds the Search side from our roofing data: replacement, repair, storm, inspection and specialty roofing ad groups, the negatives above, ads, landing pages and call tracking. It then reviews your search terms twice a day and recommends changes for you to approve.
At $10.70 per click, how far does your roofing budget go?
Estimates use national average CPC for roofing and a 6 to 8 percent click-to-lead conversion. Actual results vary by market, time of year, and campaign quality.
See your roofing campaign drafted
Pick your service area, and review the whole roofing campaign before anything goes to Google Ads.
14-day Pro trial. No credit card. You pay Google for your clicks.