0:00 Intro
0:22 Typical roofing cost per lead ranges
1:31 Residential roof replacement leads
2:25 Storm damage and insurance restoration leads
3:18 Commercial roofing leads
4:13 How your market density and competition affect cost per lead
5:13 The difference between a click, a call, and a qualified lead
5:59 Why your close rate matters more than your cost per lead
6:56 Calculating your maximum allowable cost per lead
8:04 Local Services Ads versus Search Ads
9:01 How seasonal demand swings affect what you pay per lead
9:55 Red flags that your Google Ads cost per lead is too high
10:46 What to track beyond cost per lead
Full transcript
0:00 Intro
Here’s a straight answer. Residential replacement leads run $50 -150, storm restoration $80 -300, and commercial $200 -600. Whether that’s overpaying depends entirely on your job value, your close rate, and your market, and I’m going to walk you through all three.
0:22 Typical roofing cost per lead ranges
Before anything else let us level set on what a lead costs. Roofing is one of the most expensive verticals in Google Ads. You compete against national lead aggregators and large regional contractors. Storm chasing crews also flood markets after a hail event. That competition drives up cost per click significantly. Higher cost per click then drives up cost per lead. Here is the ballpark based on what I see in this space. Residential replacement runs about $50 per lead on the low end. The high end of that range reaches $150. Storm restoration and insurance work starts around $80. That range can climb as high as $300. Commercial roofing starts at $200. The high end of commercial reaches $600. These figures reflect real keyword costs and conversion rates. They are typical for a competitive roofing market. Your actual number lands somewhere inside those ranges. Three factors determine exactly where you land. Job type is the first factor to consider. Market conditions are the second factor. How well your ads and landing page convert is third. We will work through each one.
1:31 Residential roof replacement leads
Residential replacement is the bread and butter campaign for most roofing contractors. Homeowner needs a new roof, types and roof replacement costs or roofing company near me. Seize your ad, calls or fills out a form. In a mid -sized market a well -run campaign can produce leads in the $50 to $80 range. In a dense competitive market like a major metro expect to pay $100 to $150 per lead. Sometimes more, the keywords driving these leads are expensive. Roofing company near me and roof replacement costs can run $8 to $25 per click depending on market. If your landing page converts at 10%, that’s $1 lead for every 10 clicks at $15 per click. That’s $150 per lead. At $10 per click with a 12% conversion rate, that’s $83 per lead. Small improvements in conversion rate have a bigger impact on your cost per lead than almost anything else you can do.
2:25 Storm damage and insurance restoration leads
Stormwork changes the math completely. After a significant hail or wind event, search volume spikes overnight. Everyone in the market is bidding on hail damage roof repair, insurance roof claim, storm damage roofing contractor. That spike in competition drives up cost per click fast. In a storm impacted market, cost per lead for insurance restoration work can run $150 to $300. But here’s why contractors still run these campaigns aggressively. Average job value on a full insurance replacement runs $40,000 to $70,000 or more in many markets. At that job value, paying $250 for a qualified lead and closing one in five still puts you at a customer acquisition cost under $1,500 on a $50,000 job. That math works. The commercial is its own world.
3:18 Commercial roofing leads
The keywords are less searched, but the competition is fierce because the jobs are massive. Commercial roofing contractor, flat roof replacement, TPO roofing installation, these keywords can cost $25 to $60 per click in a competitive market. Conversion rates on commercial leads tend to be lower too, because the buyer is often a property manager or facilities director doing research before they’re ready to call. So cost per lead runs higher, $200 to $600 is a realistic range. But a commercial re roof on a warehouse or retail strip can be a $150,000 to $500,000 job. Spending $500 to acquire a lead that closes on a $200,000 project is not a problem. It’s a business model. The issue is when contractors apply residential thinking to commercial campaigns and panic at the cost per lead,
4:13 How your market density and competition affect cost per lead
where you operate matters as much as what type of work you’re chasing. A roofing company in a midsize market with low competition can run effective campaigns in the $50 to $90 per lead range. That same company in a high density metro competing against 10 other contractors all running aggressive budgets might pay two to three times that for identical leads. Google ads is an auction. More bidders means higher prices, a few factors that drive up your market cost, number of active roofing advertisers in your area, presence of national lead aggregators like home advisor or Angi who buy leads in bulk and inflate click prices, recent storm activity that floods a market with temporary competitors season, which we’ll get to. If you’re unsure how competitive your market is, run a search impression share report and Google ads. If your impression share is below 30% and your costs are high, you’re being outbid heavily.
5:13 The difference between a click, a call, and a qualified lead
This is where a lot of roofing companies get confused about what they’re actually paying for. A click is someone who saw your ad and visited your site. Most don’t call. That’s normal. A call is someone who reached out, but not every call is a lead. Wrong number, existing customer, competitor, checking your prices, someone looking for a repair on a 15 year old mobile home. These are calls, not leads. A qualified lead is someone in your service area with a real project who has the budget or insurance coverage to move forward. Your cost per lead number means very little. If you’re counting all calls as leads, if you get 20 calls and 12 are unqualified, your real cost per qualified lead is not your total spend divided by 20. It’s your total spend divided by eight. That changes everything. Track qualified leads separately.
5:59 Why your close rate matters more than your cost per lead
Most roofing companies don’t and they misread their own performance. Here’s a question I ask every roofing contractor I work with. What’s your close rate on booked estimates? If you’re closing one in three, your cost per sold job is three times your cost per lead. If you’re closing one in five, it’s five times. Picture a shop doing 40 leads a month at $100 per lead. That’s $4,000 in ad spend. If they close one in four, that’s 10 sold jobs costing $400 each in acquisition cost. On a $12,000 residential replacement, that’s a solid return. Now, put that same $4,000 into a campaign that generates 40 leads, but the sales process is weak and they close one in eight, five sold jobs, $800 each in acquisition cost, same ad spend, same cost per lead, very different outcome. Your cost per lead is an input. Your close rate is what determines the output.
6:56 Calculating your maximum allowable cost per lead
This is the number you need to know before you set a budget. Here’s how the math works for a typical roofing company. Start with your average job revenue. Let’s say $12,000 for a residential replacement. Multiply by your gross margin. In roofing, that’s often 30 to 40%. So let’s use 35%. That’s $4,200 in gross profit per job. Decide what percentage of gross profit you can spend on acquisition. 20% is a reasonable starting point. That’s $840. That’s your maximum allowable cost per acquired customer. Now, divide by your close rate. If you close one in four qualified leads, divide 840 by four. That’s $210 as your maximum allowable cost per lead. If you’re paying $120 per lead and closing one in four, you have room to scale. If you’re paying $250 per lead and closing one in six, you’re underwater. Do this math for each job type you run campaigns for, residential, storm, commercial, all have different numbers.
8:04 Local Services Ads versus Search Ads
Roofers have two main Google options, Local Services Ads and standard search ads. Local Services Ads also called LSA’s show at the very top above regular ads and you pay per lead rather than per click. For roofing, LSA lead costs typically run in the $70 to $150 range, but it varies by market and Google’s own pricing algorithm. The upside, you’re not paying for clicks that don’t convert. The downside, less control over targeting and lead quality can be inconsistent. Standard search ads give you more control, better keyword targeting, and the ability to split campaigns by job type. In my experience, running both simultaneously often works better than choosing one or the other. LSA’s capture the top of page branded trust clicks. Search ads capture high intent keyword searches that LSA sometimes miss. The combined cost per lead across both channels is usually worth tracking separately, so you know where your best leads are actually coming from.
9:01 How seasonal demand swings affect what you pay per lead
Roofing is one of the most seasonal businesses in home services. Spring and early summer, demand rises, homeowners start thinking about repairs and replacements. Late summer through fall, peak season in most markets, high demand, high competition, highest cost per lead, winter, demand drops significantly in cold climates. Some contractors pause campaigns and cost per lead can fall 30 to 50%. That seasonal cost swing matters for budgeting. If your average cost per lead in October is $140, the same campaign in January might produce leads at $80. A smart approach is to hold budget steady or increase it in winter when costs are lower and competition is lighter rather than pausing campaigns when it gets cold. The leads are fewer but cheaper and you’re maintaining your quality score and account history so you don’t start from scratch in the spring.
9:55 Red flags that your Google Ads cost per lead is too high
Here are the warning signs I look for. Cost per lead climbing month over month with no corresponding increase in job value or close rate. Click through rate below 2% on search campaigns usually assign your ads aren’t relevant to the keywords triggering them. Conversion rate below 5 % on your landing page. Industry ballpark for a focused roofing landing page is 7 to 12%. Below 5 usually means the page isn’t matching the ad’s promise. High impression share on broad match keywords you haven’t explicitly added. Google’s matching can send your ad’s to irrelevant searches driving up cost per lead. Spending more than 15% of your budget on branded keywords when you have zero serious local competitors running on your name. A lot of agencies let these problems run because pausing to fix them means explaining why performance dipped. Watch these numbers yourself.
10:46 What to track beyond cost per lead
Cost per lead is a useful number but it doesn’t tell you if you’re making money. Here’s what else to track. Cost per qualified lead filter out the junk calls cost per booked estimate. How many leads actually turn into someone on the roof taking measurements. Cost per sold job. Your true customer acquisition cost revenue per campaign. Which campaign type residential storm commercial is actually driving revenue lifetime value. A customer who calls you for a repair today might be your replacement job in three years and refer to neighbors. If your CRM and your ad platform aren’t connected you’re flying partially blind. At minimum track which campaign source a lead came from when you enter it into your system. That alone will tell you more than any dashboard metric Google reports automatically. Here are three things that actually move the number without cutting your budget. One, improve your landing page conversion rate. This is the single highest leverage change most roofers can make. A landing page converting at six percent versus one converting at 12 percent cuts your cost per lead in half with zero change to ad spend or bids. Faster load time a clear headline matching your ad one phone number above the fold. Three to five proof points like years in business and reviews in a simple form. That’s the formula. Two, tighten your keyword match types. Running broad match on keywords like roofing can drain budget on irrelevant searches. Use phrase match and exact match for your highest value keywords. Add negative keywords aggressively. Roofing jobs, roofing salary, DIY roof repair, cheap roofing materials. Three, use call tracking with recorded calls. Listen to your calls. When you hear patterns and unqualified leads, you can add negative keywords. Adjust your ad copy to filter out bad fits or change your landing page to set better expectations. Most roofing companies running Google ads are not doing all three of these. If you do, your cost per lead will come down. If you want to know exactly what’s driving your current cost per lead up, get a free visibility teardown at sco .PushLeads .com slash audit or call 828 -348 -7686. We’ll look at your actual account and tell you what’s fixable.
Here’s a straight answer. Residential replacement leads run $50 -150, storm restoration $80 -300, and commercial $200 -600.
Read the full written guide: What should a roofing company actually pay per lead from Google Ads?
Up next
12:21Should a garage door company run Google Ads or invest in Google Maps SEO first?
13:16Junk Removal Google Ads: Campaign Strategy With Real Cost Data
6:13Junk Removal PPC & Cost Per Lead: 2026 Benchmarks
10:23Pay Per Click for Restoration Companies: Full Strategy
9:51How do you manage client and stakeholder PPC requests?
11:22How do you set up Google Ads for emergency contractors in 2026?Keep Reading
Want more customers from Google & AI search?
Get a free SEO audit of your site — see exactly what to fix first.
