CONSTRUCTION·TRADE
All stories
Materials

NRCA data shows the average roofing contractor nets just 2.8%, while well-run shops hit 10-15%

NRCA member data puts the average roofing contractor's net margin at 2.8%. Here are the gross margin, labor, material, and overhead ratios that separate struggling shops from profitable ones.

Generated image

Revenue growth masks a persistent problem in the roofing trade: the National Roofing Contractors Association reports the average roofing contractor nets just 2.8%, meaning half of all roofing companies earn less than that[1]. Well-run operations consistently reach 10-15% net margin - a gap that comes down almost entirely to how closely contractors track job costs, overhead, and cash flow rather than top-line revenue.

The gross-to-net gap is where most shops lose money

Industry benchmarks put roofing gross profit margins at 25-40% of revenue, with commercial work and repairs running toward the upper end of that range. Residential replacement typically lands around 30-33% gross due to local competition. The collapse from gross to net - often down to single digits - happens in overhead.

Roofing contractors typically carry 30-45% overhead, driven by workers' compensation rates that often run 15-25% of payroll, general liability insurance, equipment, marketing, and administrative staff. Many contractors confuse markup with margin, or gross profit with net profit - a distinction that leads to underpricing jobs and working long hours just to break even.

The cost structure that matters most, expressed as a share of revenue:

  • Materials: 22-30%
  • Labor: 32-38%
  • Overhead: 30-45%
  • Net margin (industry average): ~2.8%
  • Net margin (well-run shop): 8-15%

The same residential re-roof reads as 40-52% gross with in-house crews, or 30-40% when labor is subcontracted - meaning the labor model moves the margin number as much as the job type does.

Job costing is the single most effective control

Without accurate job costing, contractors risk underbidding, which leads to financial losses and cash flow challenges. Identifying the true cost of services allows contractors to make informed decisions about the most profitable jobs and, over time, refine their offerings toward higher-margin work.

Industry data indicates that businesses without job costing lose $100,000-$300,000 in potential profit per $1 million in revenue. For a $2 million shop, implementing systematic cost tracking could recover $200,000-$600,000 annually by eliminating untracked expenses.

Cash flow kills more contractors than bad margins do

The lack of cash flow is likely the most common reason for contractor failures. Contractors who report profits and have a good reputation for quality work may still face financial difficulties if they are not paid on time.

The mistake is not growing during a boom period. The mistake is building a permanent cost structure around temporary revenue. Every dollar of overhead added during a storm season needs to be justified by base business revenue, not storm revenue.

Revenue can swing 40-60% between peak and off-season months depending on the market. Companies that spend like it's July year-round end up borrowing during winter to cover overhead - and that interest cost eats directly into margin.

The accrual-basis profit and loss statement, reviewed monthly alongside a job costing report, is the instrument that separates contractors who understand their business from those who discover problems only at tax time[1]. As material input costs remain elevated - U.S. construction input prices rose 7.4% year over year in July 2026 - the margin for error on underbid or poorly tracked jobs continues to narrow. Contractors who have not yet benchmarked their overhead ratio and labor burden against the figures above should treat that exercise as the first priority before the next busy season begins.

Written by Construction Trade News's automated desk from the sources above and reviewed before publication. How we work.

Related