What Do Most Roofing Contractors Miss When Calculating Job Cost?

The typical roofing contractor calculates job cost as: materials ordered for the job + what they paid the crew for those days. This approach misses, at minimum: labor burden (35–50% above wages), overhead allocation, material waste beyond what was ordered, equipment and vehicle depreciation, and callback costs averaged over the job portfolio. The result is a job margin that looks like 35–45% but is actually 12–22% when all costs are included.

This isn't just an accounting problem. It's a business-threatening one. Contractors who don't know their true job cost bid the wrong price, hire too fast, and take on more work to "cover overhead" — not realizing the overhead is already eating their margin on every job.

⚠ The illusion: A $20,000 roofing job that cost $9,000 in materials and $4,000 in crew pay looks like a $7,000 gross profit (35% margin). But the true cost — including labor burden, overhead, waste, equipment, and callbacks — is typically $14,500–$16,000. Real margin: 20–28%. Every pricing decision made on the 35% number is wrong.

Direct Materials: The Costs You Know (But Still Undercount)

Direct materials are the most visible cost line and the one contractors get closest to right — but still undercount by 10–15% consistently. Here's every materials cost that belongs in a job:

Material CategoryExample ItemsCommon Counting Mistake
Primary roofing materialShingles, TPO membrane, metal panelsBidding squares needed, not squares ordered (+10-15% waste)
UnderlaymentSynthetic felt, peel-and-stick, ice & waterForgetting valleys, eaves, and ridge coverage area
FlashingsStep, counter, chimney, pipe boots, drip edgeEstimating by linear foot, not including all penetrations
FastenersRoofing nails, screws, cap nails, staplesOften expensed as shop supply rather than job cost
Ridge and ventilationRidge cap, ridge vent, static vents, power ventsMeasured correctly but not added to job material total
Dump feesDumpster rental, transfer station tipping feesOften coded to "supplies" rather than job material cost

On a typical 30-square residential re-roof, contractors order 33–34 squares and use roughly 31.5–32. The 1.5–2 squares of overage are a real cost of the job — not a supply expense. Code them to the job, not to a general materials account. Also see: how to set up job costing in QuickBooks to make sure every materials receipt hits the correct job.

What Is Labor Burden and Why Does It Matter for Roofing?

Labor burden is every dollar you pay the government and insurance companies because you have employees. It runs on top of wages and is paid entirely by the employer. For roofing contractors, labor burden is especially high because workers' compensation insurance for roofing is the most expensive in any trade — typically 15–25% of payroll.

Burden ComponentRateOn $25/hr Wage
FICA (SS + Medicare)7.65%$1.91/hr
FUTA (federal unemployment)0.6–2.4%$0.15–$0.60/hr
SUTA (state unemployment)1–5% (varies)$0.25–$1.25/hr
Workers' comp (roofing)15–25%$3.75–$6.25/hr
General liability (portion)2–4%$0.50–$1.00/hr
Paid PTO / sick leave3–5%$0.75–$1.25/hr
Total burden~35–45%$7.31–$11.35/hr
Fully loaded wage$32.31–$36.35/hr

When you calculate job labor cost at $25/hour and your true cost is $34/hour, you're understating labor cost by 36%. On a job with 80 labor hours, that's an $720 undercount per job. For a contractor running 150 jobs per year, this is $108,000 in annual profit they think they have but don't.

How Should Overhead Be Allocated to Roofing Jobs?

Overhead — the costs that exist whether you run one job or one hundred — must be allocated to each job to understand true profitability. Common overhead items for a roofing contractor:

How to allocate it: Add up all overhead costs for the year. Divide by total revenue. This gives you an overhead rate — typically 15–25% for a well-run roofing company. Apply this rate to each job's revenue to get the overhead allocation for that job.

💡 Example: Annual overhead $240,000. Annual revenue $1,600,000. Overhead rate = 15%. On a $20,000 job, allocate $3,000 in overhead. This job's true profitability only appears after subtracting $3,000 in overhead from the gross margin.

Most contractors never do this. Their P&L shows gross margin (revenue minus direct costs) as their profitability metric. Gross margin looks great at 35%. Net margin — after overhead — is typically 10–18% for a healthy roofing company, not 35%. The gap between what they think they make and what they actually take home is the overhead they don't account for at the job level.

What About Waste, Callbacks, and Vehicle Costs?

Material Waste

Industry standard material waste for roofing is 10–15% of the area measured. Hip and valley roofs, complex geometries, and cut waste at penetrations can push this to 20%. Most estimators apply a waste factor in their bids but don't track whether actual waste matched the estimate. In QuickBooks, if you order 34 squares but only invoice the customer for 30, the difference goes to Cost of Goods Sold — on the job, as material waste.

Callbacks and Warranty Work

The roofing industry average for callbacks and warranty claims is 1–3% of annual revenue. A contractor doing $1.5M in revenue should budget $15,000–$45,000 per year in callback labor and materials. This is a real cost — but most contractors don't allocate it to jobs. The right approach: create a "Warranty/Callback" job cost line and track actual callback costs per job. Over time, you'll see which jobs (or which crews) generate disproportionate callback costs — critical quality management information.

Vehicle and Equipment Costs

Every mile driven to a job in a company vehicle is a job cost. Fuel, maintenance, and depreciation on a typical roofing crew truck run $0.65–$0.85 per mile fully loaded. A job 25 miles from the shop uses 50 miles of round-trip travel per day. Over a 5-day job, that's $162–$212 in vehicle cost that belongs on the job — not in the general overhead bucket.

A Full Job Cost Example: $18,000 Residential Re-Roof

Here's the same job calculated two ways — the way most contractors calculate it, and the true cost method:

Cost LineTypical MethodTrue Cost Method
Direct materials (25 squares)$4,800$4,800
Material waste (12%)$0 (not tracked)$576
Dump fees$0 (coded to office)$320
Direct labor (60 hrs × $26)$1,560$1,560
Labor burden (40% on direct labor)$0 (not calculated)$624
Vehicle/travel (50 miles × 5 days × $0.72)$0 (in overhead)$180
Overhead allocation (18% of $18,000)$0 (on P&L, not job)$3,240
Callback reserve (1.5% of revenue)$0$270
Total Costs$6,360$11,570
Job Margin$11,640 (64.7%)$6,430 (35.7%)

The job that looked like 65% gross margin is actually 36% net margin after true costs are included. Both contractors took home the same check — but only one knows how much of it is actually profit versus how much belongs to overhead that hasn't been billed yet. For more on what your P&L should show, see the roofing contractor P&L report guide.

How Do You Track True Job Cost in QuickBooks?

QuickBooks Online Projects is the right tool. Here's the setup:

For a step-by-step QuickBooks setup, see QuickBooks job costing for roofers. For help finding the $10K+ in hidden costs your current setup is missing, book a free 15-minute assessment.

Also relevant: why roofing contractors stay busy but not profitable — usually because true job cost is this much higher than they knew.

Find Out What Your Jobs Actually Cost

JobCostBooks sets up the QuickBooks job costing structure that shows you true margin on every job — materials, labor burden, overhead, and all. Book the free screen-share to see your current numbers.

Book Free Assessment →
KJ
Karthik Jayaraman Lead Bookkeeper, QuickBooks ProAdvisor · JobCostBooks

Specialized QuickBooks bookkeeping for US roofing and restoration contractors. Last updated: June 28, 2026.