September 30, 2026 · 8 min read
How much should a roofing company spend on ads?
The straight answer: enough to hit your revenue goal at a cost per booked job you can live with. Here's the math and the 2026 benchmarks to plug into it.
"How much should I spend?" is the wrong first question. The right one is: what does a booked job cost you, and how many do you need? Work backward from there and the budget sets itself.
Start with your revenue goal
Say you want to add $1M in roofing revenue this year and your average replacement is $12,000. That's 84 sold jobs. If you close 1 in 3 estimates, you need about 250 estimates. Now the only question is what each booked estimate costs you — and that depends on the channel.
What roofing clicks actually cost in 2026
Roofing is one of the most expensive trades to advertise in. Published benchmarks:
- Google Ads: ~$10.70 average cost per click and ~$228 cost per lead for Roofing & Gutters (LocaliQ 2025). In competitive metros, CPCs run $30–$70. Source: Revved Digital 2026 Roofing Marketing Benchmark Report (citing LocaliQ)
- Google Local Services Ads: ~$79 per roofing lead on average, with a ~39% booking rate — roughly $200 per booked estimate before your close rate. Source: SearchLight Digital, Q1 2026
- Meta (Facebook/Instagram): cheaper clicks, lower intent — works for demand generation and retargeting, weak as a standalone emergency-lead channel.
Anyone quoting you a single "right" budget without asking your market, your ticket size, and your close rate is guessing.
The budget formula
Here's the simple version:
- Jobs needed = revenue goal ÷ average job size
- Estimates needed = jobs needed ÷ your estimate close rate
- Budget = estimates needed × your cost per booked estimate
Example: 84 jobs ÷ 33% close rate = ~250 estimates. At $200 per booked estimate (LSA benchmark), that's ~$50,000/year — about $4,200/month in ad spend. At a $12,000 average ticket, that's a 20:1 return on ad spend. The budget isn't the scary number; not knowing your cost per booked estimate is.
Where roofers waste the most money
- Bidding on their own brand name… or not. If competitors bid on your name and you don't defend it, you're donating jobs.
- Sending ad traffic to a slow homepage. A $40 click that lands on a page with no click-to-call button is a donation to Google.
- No speed-to-lead. A $228 Google Ads lead that gets called back tomorrow is worth $0. (See our 5-minute rule breakdown.)
- Blended reporting. One blended "cost per lead" hides a profitable replacement campaign behind cheap repair clicks. Split it by service line.
So what's a sane starting budget?
For a residential roofer in a mid-size market targeting steady growth: $3,000–$6,000/month in ad spend across Google Search and Local Services Ads is a realistic starting range, scaled up once your cost per booked estimate is proven. Storm-chasing markets and major metros run higher. Under $1,500/month, you usually can't buy enough data for Google's automation to learn — that's the most common reason small budgets "don't work."
And remember: ad spend is only half the system. The other half is what happens in the five minutes after the lead arrives.
Sources
- Revved Digital — 2026 Roofing Marketing Benchmark Report (LocaliQ data)
- SearchLight Digital — Local Services Ads contractor benchmarks, Q1 2026
- WordStream / LocaliQ 2026 Google Ads Benchmarks (via Make It Loud CPC study)
Get your free demo
See exactly how this would work for your shop. Free 15 minutes, no payment due today.
Know your number before you spend another dollar.
We'll build the budget from your revenue goal, run the ads, and our AI answers every lead in minutes. Free 15-minute demo — no payment due today.
Book my free demo