12 Roofing KPIs Every Contractor Should Be Tracking

May 15, 2026

Table of Contents

Win more bids. Close more jobs. Start with our newsletter.

Get exclusive insights, tips, and trends your competition doesn't want you to know.

Most roofing business owners are busy. They're managing crews, chasing leads, handling customer calls, and trying to keep jobs moving. In that environment, the idea of tracking a set of business metrics can feel like extra work on top of everything else.

Here's the problem with skipping it: without defined KPIs, you're making decisions based on gut feel and memory. 

You think your close rate is solid, but you're not sure. You assume jobs are completing on time, but you're not tracking it. You notice cash feels tight, but you're not sure which number to look at. 

That's how profitable-looking businesses quietly bleed margin.

KPIs, or key performance indicators, are the specific numbers that tell you whether your business is actually performing the way you think it is. For roofing contractors, the right KPIs give you visibility into three things that directly determine whether your business grows or stalls: how well you're selling, how efficiently you're operating, and how healthy your finances are.

This guide covers 12 KPIs every roofing business should be tracking, organized by the part of the business they inform, along with how to calculate each one and why it matters.

Sales KPIs for roofing contractors

These metrics tell you whether your pipeline is generating enough opportunity and whether your team is converting it effectively.

KPI #1: leads generated

This is the total number of new leads coming in over a given period, broken down by source: Google, referrals, door knocking, social media, storm canvassing, etc.

Why does it matter? If your sales team doesn't have enough leads to work, close rate doesn't matter. Tracking leads by source tells you which channels are actually producing and which ones are just spending budget. It also helps you set realistic revenue forecasts: if you know your average close rate and average job value, leads generated becomes a predictable input for projected revenue.

How to track it: Count new contacts or inquiries per week and month. Tag each lead with a source at the point of capture so you can segment later. If your CRM isn't capturing source automatically, train your team to log it manually on every single entry.

KPI #2: lead-to-appointment set rate

This is the percentage of leads that result in a scheduled inspection or estimate appointment.

Why does it matter? A lot of roofing companies track leads and close rate but skip this step in between. Your set rate tells you how effective your intake process is. If leads are coming in but appointments aren't getting booked, the problem is your front office or response time, not your sales team. That's a very different fix.

How to calculate it: (Appointments set / Total leads) x 100

A healthy set rate for most roofing companies is 70-85%, though this varies by lead source. Cold leads from canvassing will set at lower rates than inbound digital leads.

KPI #3: close rate

This is the percentage of appointments or estimates that convert to signed jobs.

Why does it matter? This is your sales team's most direct performance metric. Track it by rep and by lead source, because not all close rates are created equal. An inbound lead that requested a quote is easier to close than a door-knocked lead. If you're tracking blended close rate only, you might be crediting (or blaming) the wrong people or channels.

How to calculate it: (Jobs sold / Estimates run) x 100

Healthy close rates for roofing generally land in the 30-50% range for inbound leads and 15-25% for cold or door-knocked leads. If your close rate is significantly below those ranges, start by looking at pricing relative to market, your proposal quality, and how reps are handling objections.

KPI #4: cost per lead (CPL)

This is how much you're spending in marketing and acquisition costs to generate each new lead.

Why does it matter? Leads aren't free, and not all of them cost the same. A referral might cost you almost nothing. A Google PPC lead might cost considerably more. Cost per lead (CPL) helps you evaluate whether your marketing spend is actually efficient and which channels deliver leads that are worth the cost. 

Something to note: High CPL isn't automatically bad if those leads close at high rates and for large job values. Low CPL from a channel that produces tire-kickers is worse.

How to calculate it: Total marketing spend for a given period / Number of leads generated in that period

Roofing CPL typically ranges widely depending on channel, market, and competition. Track it by channel and pair it with close rate and average job value to get a complete picture.

KPI #5: average job value

This is the average revenue generated per completed job.

Why does it matter? Two companies with the same number of jobs per month can have dramatically different revenue and profitability if their average job values are different. Tracking this helps you see whether you're moving toward higher-value work over time and whether upsells and upgrades are actually happening in the field. It's also a key input for revenue forecasting when paired with your close rate and lead volume.

How to calculate it: Total revenue / Number of jobs completed

Operations KPIs for roofing contractors

These metrics tell you whether jobs are moving through your pipeline efficiently and whether your production is staying on schedule.

KPI #6: production cycle time

Production cycle time is the average number of days from a signed contract to a completed, invoiced job.

Why does it matter? The faster you complete jobs, the faster you get paid, and the more jobs you can take on without adding headcount. 

Long production cycles usually mean bottlenecks somewhere: 

  • Permitting delays
  • Material lead times
  • Scheduling gaps
  • Jobs that aren't getting closed out properly after installation

Tracking cycle time helps you find where work is stalling.

How to track it: Log the date each job is sold and the date the final invoice is sent. The average difference across all jobs in a given period is your production cycle time. If you're not logging both dates consistently, you can't calculate this accurately.

KPI #7: job completion rate (on schedule)

This is the percentage of jobs completed within the promised or projected timeline.

Why does it matter? Schedule adherence affects customer satisfaction, crew utilization, and cash flow all at once. A job that runs long either delays other scheduled work or requires overtime, both of which cost money. It also frequently leads to unhappy customers who weren't expecting the extension. Track this separately from cycle time: a job can complete quickly and still miss the date you told the homeowner.

How to calculate it: (Jobs completed on or before promised date / Total jobs completed) x 100

KPI #8: accounts receivable (AR) aging

This is a breakdown of how much money is owed to your company and how long each outstanding balance has been unpaid, typically bucketed by age: 

  • 0-30 days
  • 31-60 days
  • 61-90 days
  • 90+ days

Why does it matter? Revenue you've earned but haven't collected is cash you can't use. AR aging tells you how much money is sitting in the pipeline and whether your collections process is working. In roofing, insurance jobs in particular can have long payment timelines, so monitoring aging by job type helps you identify whether delays are systemic or isolated.

How to track it: Run an AR aging report from your accounting or job management software at least monthly. Flag any balance that's crossed 60 days and assign follow-up responsibility to a specific person.

Financial KPIs for roofing contractors

These metrics tell you whether the business is actually profitable, not just busy.

KPI #9: gross profit margin

This is the percentage of revenue left after subtracting direct job costs: materials, labor, subcontractors, and job-related equipment.

Why does it matter? Gross margin is the clearest measure of whether your jobs are priced correctly and whether your field costs are under control. Track this by job type, not just overall. Residential repairs typically run at much higher gross margins than full replacements. If you're only looking at a blended average, you can't see which work is actually profitable.

How to calculate it: (Revenue - Direct job costs) / Revenue x 100

Industry gross margins typically range from 25-40%, varying by job type and market.

KPI #10: net profit margin

This is the percentage of revenue left after all expenses, including overhead and taxes, are paid. This is your actual bottom line.

Why does it matter? A strong gross margin doesn't guarantee a healthy net margin. Overhead that's grown unchecked, owner compensation that isn't properly accounted for, or operating expenses that crept up alongside revenue can all compress net margin without showing up in your job-level numbers. Net profit margin is what determines whether the business is actually building financial value.

How to calculate it: Net income / Total revenue x 100

Net margins for well-run roofing companies generally land in the 8-15% range. For more on how to calculate and improve this number, see our full breakdown of roofing business profit margins.

KPI #11: repeat customer rate

This is the percentage of your customers who have hired you more than once.

Why does it matter? Repeat customers cost far less to acquire than new ones and tend to refer others. A growing repeat customer rate is a sign that your work quality and customer experience are strong enough to earn trust over time. A flat or declining rate, especially in a market where you've been operating for several years, is worth investigating.

How to calculate it: (Customers with more than one job / Total customers) x 100

KPI #12: customer satisfaction score (CSAT)

Customer satisfaction score (CSAT) is a measure of how satisfied customers are with your work, typically gathered through post-job surveys or review requests. Often scored on a simple 1-5 or 1-10 scale.

Why does it matter? Satisfaction is the leading indicator of referrals, repeat business, and online reviews, all of which affect your cost per lead and your ability to compete on reputation rather than price. If you're not systematically asking for feedback after every job, you're only hearing from the customers who sought you out to complain.

How to track it: Send a consistent post-job survey to every customer. Track average score over time and by crew or rep so you can see patterns. Pay as much attention to score trends as to the score itself.

What's the best way for roofing contractors to use KPIs

Collecting the numbers is only half the work. Here's how to make them actually useful:

  • Pick a cadence and stick to it. Some KPIs are weekly (leads generated, set rate, close rate). Others are monthly (margins, AR aging, repeat customer rate). Know which is which and review them on schedule, not just when something feels off.
  • Assign ownership to each KPI. A number without an owner doesn't get managed. Someone on your team should be responsible for tracking, reporting, and responding to each metric. That doesn't mean they control it alone, but there should be a single person who owns the number.
  • Don't track everything at once. Start with 4-5 KPIs that are most relevant to your current business priorities. If you're trying to grow revenue, start with leads, set rate, and close rate. If you're trying to improve profitability, start with gross margin by job type and production cycle time. Adding too many metrics at once makes it harder to act on any of them.
  • Use KPIs to coach, not just report. Close rate by rep, set rate by intake person, cycle time by crew: these breakdowns turn business-level metrics into individual coaching conversations. That's where KPIs actually move behavior.
  • Look for trends, not just snapshots. A single month's gross margin tells you very little. Three months of declining gross margin tells you something is changing at the job level and you need to investigate. Trend data is almost always more useful than any single data point.

How to track roofing KPIs accurately

Most roofing business owners run into the same issue: they understand the KPIs, but struggle to track them consistently.

The problem isn’t the metrics—it’s the process. When data is scattered across multiple tools or has to be manually compiled, KPI tracking becomes something you do after the fact, not something you use to make decisions.

A job management system brings everything together so that tracking becomes automatic, not manual.

JobNimbus helps roofing contractors manage the full job lifecycle in one place so performance data is always accessible. That includes things like:

  • Estimates and proposals tied directly to job outcomes
  • Job tracking from lead through completion
  • Financials connected to actual job performance
  • Customer communication stored alongside project history
  • Reporting that surfaces profitability and production trends without manual spreadsheets

Instead of piecing together data from different systems, you’re working from a single source of truth.

If you want clearer visibility into your numbers and a simpler way to act on them, see how JobNimbus helps roofing contractors run more organized, data-driven operations today. 

No items found.

Blog / Guide Title CTA

Once you've created a strong Linkedin profile, you can leverage it as part of your broader marketing strategy. Use your Linkedin to share content, join industry groups, and network with others in the contracting space.

If you're looking for additional marketing support, consider partnering with JobNimbus Marketing to maximize your business growth. Schedule a call with our team to learn how to boost your marketing efforts today.

Blog / Guide Title CTA

Once you've created a strong Linkedin profile, you can leverage it as part of your broader marketing strategy. Use your Linkedin to share content, join industry groups, and network with others in the contracting space.

If you're looking for additional marketing support, consider partnering with JobNimbus Marketing to maximize your business growth. Schedule a call with our team to learn how to boost your marketing efforts today.

Download Our Free Tips for Recession-Proofing Your Company

We’ll show you five simple things you can do to help your business survive a recession.