Roofing Google Ads Benchmarks 2026

Verified CTR, CPC, conversion rate, and CPA for Roofing services (residential and storm-restoration) on Google Ads — plus the diagnostic questions every Roofing account should be able to answer.

Roofing Search benchmarks

Updated May 7, 2026
Avg CTR
4.21%[1]
Avg CPC
$11.85[1]
Conv. rate
4.92%[1]
Avg CPA
$241.00[2]

Numbered citations refer to the Sources block at the bottom of this page.

V
Vilo
Founder, Perfoads ·
7 min read

Pawel "Vilo" Wilk — Google Ads specialist, runs the Project UP performance team. PerfoAds is independent IP. Roofing numbers in this page are sourced from public industry reports and cross-referenced with audit patterns I see weekly.

Sourced from WordStream & LocalIQVerified May 2026Reviewed by a Google Ads specialist

PerfoAds Read: what these numbers actually mean for Roofing

Roofing has the highest paid-search CPC of any major home services vertical — $11.85 average and $25-40 not unusual on storm-chase queries. The reason isn't auction depth alone (although that matters); it's the per-job ticket size. A roof replacement averages $9,000-$15,000 in the US, so advertisers can profitably bid CPCs that would bankrupt a plumber. The downstream issue: every roofer assumes high CPC is normal and stops looking for waste. The waste is enormous.

Conversion rate at 4.92% looks anemic next to plumbing or HVAC, but roofing has a much longer sales cycle — the average roofing form-fill takes 14-21 days to close, and the first conversion is often "request inspection," not "sign contract." Reporting tools that look at last-click conversion in the same session systematically under-credit Google Ads for roofing leads. Cross-device and 30-day attribution windows aren't optional in this vertical, they're table stakes.

CPA at $241 is the published benchmark, but the operational metric that matters for roofing is cost-per-signed-contract, not cost-per-lead. Real close rates on Google Ads roofing leads are typically 8-14%, which means cost-per-contract runs $1,700-$3,000 — and that's BEFORE accounting for the 25-40% of leads that ghost or get stolen by storm-chasers. The accounts I audit that haven't separated insurance vs. retail vs. commercial campaigns have hidden 30-50% waste sitting in the wrong segment.

Performance Max is a near-universal mistake in roofing. Google's PMax black-box model loves roofing because the per-conversion value is so high — Google's algorithms optimize toward whatever queries hit your conversion goal, even when those queries are barely-relevant brand competitor terms or out-of-area searches. Without the ability to see triggering queries (PMax does not reliably surface search terms) or exclude geographies cleanly, roofing PMax campaigns routinely waste 40-60% of spend on traffic that never closes. Standard Search campaigns with manual bid strategies and tight negatives almost always outperform PMax for roofing in cost-per-contract, even though Google's reporting will tell you PMax has a better cost-per-lead. The cost-per-CONTRACT gap tells the real story.

Where does your Roofing account sit against these numbers?

Run a Perfoads audit and get your CTR, CPC, conversion rate and waste-spend gap mapped against the Roofing benchmark — $49/mo per account, cancel anytime.

Run the audit

If your CTR is below 4.21%, here are the 3 likeliest causes

Out of every Roofing account I audit, three patterns are responsible for roughly 80% of below-benchmark performance. Walk through them in this order — fixing them in the wrong order wastes time.

1

Bidding on storm-chase queries during non-storm windows

Storm-chase keywords ("hail damage roof," "storm damage repair," "free roof inspection insurance") spike CPCs to $25-40 in active storm cells and crash to $5-8 outside them. Many roofing accounts leave aggressive bids on year-round, paying premium prices to acquire low-intent clicks the rest of the year. Smart strategy: bid modifiers tied to NOAA-recent-storm zip-code overlays, not flat bids.

2

Single campaign mixes insurance, retail, and commercial roof work

Insurance-funded jobs (storm restoration), retail re-roofs (homeowner pays), and commercial flat-roof work are three separate businesses with different CPCs, lead quality, and close cycles. When they share a campaign, Google's smart bidding model averages across all three and over-spends on the worst-performing segment. Each should be its own campaign with its own bid strategy and conversion action.

3

No phone-call attribution + no LSA in the mix

Roofing leads call. About 55-65% of qualified roofing leads start with a phone call (vs. form fill) per most industry reports. Without call conversion tracking and LSA, you're measuring conversion rate against a third of the actual lead volume. CTR drops because bid algorithms can't identify the highest-converting queries — those are usually the call-prone ones that aren't being recorded.

Roofing negative keyword starter list

Add these as account-level negatives to immediately stop wasted spend on common Roofing intent collisions. This is a starter list — your account will need 60-150 more specific to your service area, brand competitors, and seasonal spikes. Search-term reports beat published lists every time.

-jobs-salary-career-training-school-apprentice-license-union-diy-how to-youtube-tiktok-roof shingles-roof material-shingle types-asphalt brand-gaf-owens corning-wholesale-supplier-home depot-lowes-wiki-reddit-amazon

See the exact Roofing waste in your account

Perfoads scans your search-term report against the Roofing negative-keyword library and surfaces every wasted-click pattern in 5 minutes. $49/mo per Google Ads account.

Run the audit

Search vs Display vs Local Services — by surface

Cross-surface comparison for Roofing services (residential and storm-restoration). Display CPCs look attractive until you compare conversion rates and CPA — most Roofing accounts that run Display campaigns are paying for impressions, not jobs.

SurfaceCTRCPCConv. rateCPA
Search4.21%$11.854.92%$241.00
Display0.59%$1.420.48%$295.00
Local Servicesn/aper-lead pricing12-20%$50-$95 per lead

Frequently asked

Why is roofing Google Ads CPC so high?+

Two reasons. First, ticket size — a $12,000 average job lets advertisers bid CPCs that would be catastrophic in lower-value verticals. Second, storm-chase bidding wars: when a hailstorm hits, dozens of restoration contractors flood the auction, pushing storm-keyword CPCs to $30-50. Outside storm windows, roofing CPCs typically settle into the $7-12 range.

Should roofers run Google Ads campaigns year-round or seasonally?+

Year-round, but with massive seasonal bid variance. Roofing demand has a strong April-October peak in most US markets (storm season, summer-replacement window). Bid 30-60% higher in peak weeks; cut 40-70% in deep winter (Dec-Feb). Pausing entirely is rarely optimal — it kills your Quality Score history and makes ramp-back-up expensive in the spring.

How does Google's storm-damage detection affect roofing ads?+

Google does not publicly target ads to storm-damaged areas. What does work: pulling NOAA storm-cell data and uploading customer-match ZIP-code lists for active-storm areas with a +30-50% bid modifier. This is non-trivial to set up but is one of the highest-leverage moves in the vertical.

What's a realistic cost-per-contract for roofing Google Ads?+

Cost-per-lead averages $241 per published benchmarks. Real close rate on Google Ads roofing leads is 8-14%, so cost-per-signed-contract typically runs $1,700-$3,000. For a $12,000 average job, that's a 14-25% customer acquisition cost — workable but only if your operational margin is at least 30%.

How do I track which roofing leads come from storm damage vs general repairs?+

Two layers. First, separate campaigns: "Storm Restoration" (insurance-funded, hail/wind keywords), "Retail Re-roof" (homeowner-funded, replacement keywords), and "Repair" (small-ticket repair keywords). Each gets its own conversion action so you can see CPL by segment. Second, use the form intake to ask "What prompted you to call us today?" with options like recent storm, age of roof, leak, etc. Within 60 days of running this you'll see clear CPL and close-rate differences between segments — and almost always discover that one segment is subsidizing the others. The accounts that make this split typically reallocate 30-50% of budget within a quarter.

Sources

  1. WordStream / LocalIQ. Google Ads Industry Benchmarks 2025 — Home Improvement. https://www.wordstream.com/blog/2025-google-ads-benchmarks (retrieved May 7, 2026)
  2. LocalIQ. Search Advertising Benchmarks Q4 2025 — Home Services. https://localiq.com/blog/search-advertising-benchmarks/ (retrieved May 7, 2026)
  3. Google Ads Help. About Local Services Ads. https://support.google.com/localservices (retrieved May 7, 2026)
Cite this page: Wilk, P. (2026). Roofing Google Ads Benchmarks 2026 — CTR, CPC, CPA, Conversion Rate. Perfoads. https://perfoads.com/google-ads-benchmarks/roofing

Audit your Roofing Google Ads account

Get your account scored against Roofing benchmarks, see exactly where spend is leaking, and walk away with a prioritized fix list. Read-only access. Runs in 5 minutes.

Start the audit — $49/mo per account

Additional accounts $29/mo each (up to 10) · Cancel anytime · 30-day guarantee

Other industry benchmarks