Lead Math

How Many Roofing Leads Do I Need to Close $1 Million in Revenue?

Daniel GonzalezApril 28, 20268 min read

240 leads to hit $1M. 84 jobs × $12K ticket × 35% close = the math every roofing owner should run before setting next year's marketing budget.

A roofing company needs roughly 240 qualified leads to close $1 million in annual revenue. The math: $1M ÷ $12,000 average ticket = 84 jobs. At a 35% close rate, that requires 240 leads. The mix typically breaks down as 96 LSA leads, 60 Google Business Profile calls, 50 organic, and 34 referrals.

That's the answer most owners want first, before the work of figuring out how to actually get there. Below I'll walk through every assumption in that equation, where each number comes from, and how to plug your real ticket size and close rate in to get the lead target that matches your business, not the average roofer's.

I run paid media and lead generation for roofing companies, and the most common conversation I have is exactly this one: an owner wants to get to $1M (or $2M, or $5M), they've never seen the math written out, and the marketing budget gets set on a hunch instead of a calculator. The number of jobs your company needs is fixed by ticket size. The number of leads is fixed by close rate. Skip either step and you're guessing.

The $1M Roofing Revenue Equation (Reverse-Engineered)

Three numbers drive the entire equation: revenue target, average ticket, and close rate. Once those are locked in, the lead count falls out automatically.

The walk-through:

  1. Revenue target: $1,000,000
  2. Average ticket: $12,000 (residential roof replacement benchmark)
  3. Jobs needed: $1,000,000 ÷ $12,000 = 84 closed jobs per year (about 7 per month)
  4. Close rate: 35% (above the industry average, achievable with good sales process)
  5. Leads needed: 84 ÷ 0.35 = 240 qualified leads per year (about 20 per month)

That's it. Everything downstream (channel mix, marketing budget, ad spend, sales hires) is a function of those five numbers. If you change any one of them, the lead target moves.

A quick sanity check on what 240 leads looks like in real life: that's roughly 5 leads per week, every week, for 12 months. Most roofing companies running zero paid media and relying on word-of-mouth get 4 to 10 leads per month. So the gap to $1M is usually a marketing problem first, a sales problem second.

What "Average Ticket" Actually Means for Roofing Companies

The $12,000 number is the residential replacement benchmark in 2026 across most of the U.S., but it varies wildly based on what mix of work you sell. Use the table below to recalc your equation with your real numbers.

Job typeTypical ticket rangeNotes
Residential repair$400 - $2,500Volume play, low margins
Residential replacement (asphalt)$9,000 - $16,000The core $12K benchmark
Residential replacement (metal/tile)$22,000 - $55,000Higher ticket, longer cycle
Insurance/storm restoration$14,000 - $28,000Tied to weather events
Commercial flat roof$28,000 - $250,000+Very different sales motion
Solar reroof bundle$35,000 - $70,000Hybrid solar/roofing close

If your average ticket is $9K, you need 112 jobs to hit $1M, which means more leads. If it's $18K because you're selling metal and tile, you only need 56 jobs and roughly 160 leads. The owner running storm restoration with a $24K average is in a totally different math problem than the owner running tear-offs in a coastal repair-heavy market.

The honest version of this math starts with pulling your last 12 months of closed jobs, totaling them, and dividing by job count. That's your actual ticket. Don't use a number you wish were true.

What "35% Close Rate" Looks Like in Practice (And Why Most Roofers Are at 18%)

Here's the gap nobody talks about. The industry average close rate on inbound roofing leads sits around 18 to 22 percent. The top 25% of roofing operators close at 35 to 50 percent on the same kind of leads. That's not a small difference. At 18%, you'd need 467 leads to close 84 jobs. At 35%, you need 240. At 45%, you need 187.

Same revenue target. Vastly different marketing budgets.

Why most roofers stall at 18 to 22 percent:

  • Slow response time. The first roofer to call a lead back wins about 60% of the time. Most roofers respond in 2 to 8 hours. The top operators respond in under 5 minutes. (More on this in How Fast Should Roofers Respond to Leads.)
  • No structured sales process. Owners "wing it" on the kitchen-table close instead of running a repeatable inspection-to-proposal-to-close sequence.
  • No follow-up after the first appointment. The average sale closes after 5 to 8 touchpoints. Most roofers stop after 1.
  • Weak proof. No before/after photos, no recent-customer references, no GAF or Owens Corning master elite badge to lean on.
  • Pricing without value. Roofer hands over a number with no explanation of materials, warranty, install team, or why their crew is different.

The fix is rarely "more leads." It's almost always "close more of the leads I'm already getting." Two roofing companies running the same ad budget can have a 2x difference in revenue because of close rate alone.

Want to plug your real numbers into the equation? Take the free 5-minute Marketing Scorecard →. We'll calculate your lead-to-revenue gap and show exactly where the math is breaking down.

The Channel Mix for 240 Leads/Year (Most Roofers Get This Wrong)

The 240-lead target only works if the leads come from the right channels. A roofer with 240 yearly LSA leads and zero brand search will hit a ceiling fast. Here's the channel mix that the top-performing roofing accounts I run hit consistently.

ChannelAnnual leadsMonthly leadsCost per leadAnnual spend
Google Local Service Ads96 (40%)8$50 - $95$4,800 - $9,120
Google Business Profile calls (organic)60 (25%)5$0 (earned)$0
Organic SEO (forms + calls)50 (21%)4$0 - $20 (content cost amortized)$0 - $1,000
Referrals + repeat34 (14%)3$0$0
Total24020Blended ~$25 - $40$4,800 - $10,120

A few things stand out from this mix:

  • LSA is the largest single channel because it's the fastest to spin up and the most predictable for net-new revenue. But it caps at about 40 to 50 percent of total leads before close rates start dropping.
  • Google Business Profile is the most underrated channel. A fully optimized GBP with 100+ reviews and weekly posts pulls 4 to 8 calls per month at zero cost.
  • Organic SEO is the slow burn that compounds. It takes 6 to 12 months to start producing, but by month 18 it's the cheapest channel by a mile.
  • Referrals only come if you have a system for asking. Not "we'd appreciate referrals." An actual post-job referral request, a cash incentive, and a follow-up email 90 days after the job.

The biggest mistake roofers make is loading 80% of the lead volume into one channel, usually LSA. When LSA goes down for a week (which it will), revenue goes down with it.

How to Pressure-Test Your Lead Math With Your Own Numbers

Don't use my numbers. Use yours. Here's the four-step calculator every roofing owner should run before setting next year's budget.

Step 1: Pull your true average ticket. Last 12 months of closed jobs, total revenue divided by job count. If you closed $720K on 60 jobs, your average ticket is $12,000. If you closed $720K on 96 jobs, you're at $7,500. Much smaller.

Step 2: Calculate your real close rate. Total signed jobs divided by total qualified leads (not garbage calls, actual prospects who could have hired you). Most roofers have never measured this. If you closed 60 jobs from 280 leads, you're at 21%. That's where the work is.

Step 3: Set your revenue target. Honest target. Not a wishful one. If you did $700K last year and you're hiring one more crew, $1.2M is realistic. $3M probably isn't.

Step 4: Reverse-engineer the leads.

  • Revenue target ÷ average ticket = jobs needed
  • Jobs needed ÷ close rate = leads needed
  • Leads needed ÷ 12 = monthly lead target

Run that on your own numbers. The output is the only honest target for your business. (If you want help running it, our free ROI calculator does the math automatically.)

Why 240 Leads Is the Floor (Not the Goal)

Here's what almost no marketing blog will tell you: 240 leads is the bare minimum to hit $1M. You actually want 1.5x to 2x that volume (360 to 480 leads) because:

  • Pipeline coverage. Not every "qualified lead" is actually qualified once you talk to them. About 15 to 25% of inbound leads are out-of-area, wrong service, or window-shoppers. Real pipeline coverage means you've got leads in reserve.
  • Seasonality. Roofing is cyclical. Q2 and Q3 are heavy. Q4 and Q1 (in northern markets) drop 30 to 50%. Your annual lead average has to account for the slow months.
  • Sales team capacity. If your salespeople are running at 100% of capacity on appointments, they can't grow into more revenue. Slack in the pipeline = scalability.
  • Channel volatility. LSA pauses you for a missed call. Google Ads disapproves a creative. SEO drops on a core update. Pipeline cushion is what keeps revenue from cratering when one channel hiccups.

If you want $1M to be a comfortable year (not a stretch), build for 360 leads. If you want $1M to be a stepping stone to $1.5M, build for 480.

What 240 Leads/Year Actually Costs You in Marketing

This is the section every owner skips to. The honest budget for 240 paid + earned leads at the channel mix above:

  • LSA spend: 96 leads × $50-$95 cost per lead = $4,800 - $9,120/year (about $400 - $760/month)
  • Google Ads layered with LSA (optional but recommended): $1,500 - $3,500/month for an additional 40 - 80 leads/year and bigger-ticket searches
  • Local SEO / GBP management: $1,000 - $2,500/month for ongoing reviews, posts, content, link building
  • Website + landing pages: $3,000 - $8,000 one-time, plus $200/month hosting and updates
  • Call tracking + CRM: $150 - $400/month
  • Total annual marketing spend for $1M: roughly $45,000 - $90,000, or 4.5% to 9% of revenue

That's the working range. Most roofing companies that hit $1M reliably spend between 5% and 8% of revenue on marketing. (For deeper benchmarks see How Much Should a $3M Roofing Company Spend on Marketing.)

If your math shows you'd need to spend 12% to 15% of revenue to hit your lead target, the problem isn't marketing cost. It's that your close rate is too low or your ticket size is too small. Marketing can't fix a sales process gap.

Want help building a 240-lead-a-year pipeline? Book a 30-minute strategy call → and we'll map your lead targets, channel mix, and budget against your actual numbers.

Final Read

The math doesn't care about your goals. It only cares about ticket size, close rate, and channel mix. Run the equation on your real numbers, set the lead target that matches your revenue goal, and build a channel mix that doesn't have all its weight on one platform. That's how $1M roofing companies stay $1M roofing companies, and how the ones that scale to $3M and $5M get there without setting their budget on fire.

If you want help running the math against your real account, that's exactly what we do at DG Agency. We're a marketing agency for roofers that builds the LSA, Google Ads, SEO, and GBP stack against the lead targets your revenue goal actually requires. See our pricing and the TMC Roofing case study where we scaled an account from $3M to $8M in 12 months.

Related reading:

DG Agency

Daniel Gonzalez

Founder, DG Agency

Google Partner · Riverside County, CA

Frequently Asked Questions

Quick answers to common questions on this topic.

About 240 qualified leads per year, assuming a $12,000 average residential replacement ticket and a 35% close rate. The math: $1M ÷ $12K = 84 jobs, then 84 ÷ 0.35 = 240 leads. Lower close rate or smaller ticket means more leads needed.

Still Have Questions?

Can't find what you're looking for? Our digital marketing experts are here to help you grow your business.

5.0 Rating 20 Reviews

What Contractors Say About Working With Us

Real reviews from real businesses we've helped grow

"Excellent marketing and advertising services in Riverside. They helped improve our online presence and generate leads. Professional, responsive, and results-driven."
C
Collin Berney
2 weeks ago
Google LSA & GBPRiverside
"I only wish more service providers operated at the same level as Daniel. He approached me about my business in Perris and provided a clear advertising strategy that made a real difference in my bottom line."
D
D F
2 weeks ago
Advertising StrategyPerris
"Daniel was extremely helpful with my listing problem. My listing was labeled 'ineligible' for ad campaigns. Daniel troubleshot the issue and took it a step further with listing optimization to boost visibility."
L
Louis LaBelle
2 weeks ago
Amazon Advertising
"DG Agency has been an excellent partner for TMC Roofing. They understand what it takes to market a roofing company and have been very proactive, organized, and responsive. From strategy to execution, their team has helped us strengthen our brand and online presence. Highly recommend."
T
Travis Christensen
2 weeks ago
Roofing Marketing
"The team at DG Agency actually listens. They customized a strategy for our brand rather than selling a cookie cutter package. We've seen steady growth on both Google and Facebook since signing on."
M
Mick Trick
15 weeks ago
Google & Facebook Ads
"Our contracting business was struggling to compete online. DG Agency built us a new site, managed SEO, and launched Google Ads. Leads started flowing in quickly and we're finally busy year round."
A
ad wda
15 weeks ago
Web Design & Google Ads
"If you want a marketing partner that actually delivers, call DG Agency. They boosted our visibility in Murrieta with Google Business Profile management and Local Services Ads. Professional, responsive, and results focused."
T
Tomisin Bayode
17 weeks ago
Google LSA & GBPMurrieta
"I've worked with other marketing agencies before, but DG Agency is different. They're data driven and transparent. The weekly updates and clear communication make me feel confident my money is well spent."
D
Daniel Alakwe
17 weeks ago
Data-Driven Marketing
"Honest, reliable, and results driven. We run a pest control company and DG Agency's reputation marketing service helped us get dozens of new 5-star reviews, which instantly increase trust with new customers."
C
Carl Johnson
17 weeks ago
Reputation Management
"I manage a local salon in Temecula and had no idea where to start with online marketing. DG Agency set up our website, boosted our Google profile, and now clients find us so easily. They made it simple and stress free."
A
Anita Pimenta
17 weeks ago
Web Design & GBPTemecula
"Daniel and his team are sharp. They handled our Amazon advertising and account management, and sales for our brand have never been stronger. They know Amazon inside and out, worth every penny."
E
Everol Watson
18 weeks ago
Amazon Advertising
"We partnered with DG Agency for Facebook and Google Ads, and I'm blown away by the ROI. They don't just run ads, they explain strategy and show the numbers. It feels like they're part of our team, not just another vendor."
J
Joe Fabricio
18 weeks ago
Facebook & Google Ads
"DG Agency helped me get my business up and running. I appreciate the frequent, clear communication. Definitely recommend."
M
Mary Beth Gonzalez
18 weeks ago
Business Launch
"Daniel has been spot on with google ad campaigns and has really targeted our customer base. Definitely recommend if you looking to grow your business."
M
Mike Bland
18 weeks ago
Google Ads
"I own a roofing company in Riverside and DG Agency helped us finally figure out online leads. Their Local Services Ads and SEO work doubled our quote requests in just two months. Highly recommend if you want real growth."
S
Santiago Hernandez
18 weeks ago
Google LSA & SEORiverside
"Working with DG Agency has been a game changer for my business. They set up our Google Ads and optimized our profile, and within weeks we started getting more calls than ever. Transparent, professional, and genuinely care about results."
J
jhomar ambos
18 weeks ago
Google Ads & GBP

Rated 5.0 out of 5 by 20 verified clients

Based on Google Business Profile reviews

Free Assessment

How Does Your Marketing Stack Up?

Score your marketing against the exact 6-pillar system that took a contractor from $3M to $8M in 12 months. Takes 5 minutes. Results are instant.

Get My Free Marketing Score

No spam. No sales pitch. Just your score and what to fix first.

Ready to get your phone ringing?

See exactly where your marketing is leaking money and calls.

Score My Roofing Pipeline Free (5 Min)