Pricing for Profit: Margin Analysis That Works
A roofing company completes 200 jobs. Revenue looks strong. The bank account doesn’t agree. Profit exists on paper but vanishes before reaching the owner.
This disconnect between expected profit and actual cash comes from margin blindness. Most roofing companies don’t truly understand their margins. They price based on gut feel and industry rules of thumb. They leave money on the table while wondering why growth doesn’t produce wealth.
The Margin Reality
Gross margin and net margin are fundamentally different numbers with different implications.
Gross margin measures profit after direct job costs: Gross Margin = (Revenue - Direct Costs) / Revenue
Direct costs include materials, labor, and equipment directly attributable to specific jobs.
Net margin measures profit after all costs: Net Margin = (Revenue - All Costs) / Revenue
All costs include overhead: rent, insurance, office staff, marketing, vehicles, administrative expenses.
Most roofing companies track gross margin and ignore the rest. They celebrate 40% gross margins without realizing overhead consumes 30% of revenue, leaving only 10% net.
Understanding both numbers reveals true profitability.
The True Cost Stack
Breaking down where each revenue dollar goes illuminates the profit equation.
For a typical roofing company at $5M revenue:
Materials: 25-35% Shingles, underlayment, flashing, fasteners, accessories. This category has the most reliable tracking but often misses small items that add up.
Labor: 20-30% Crew wages, payroll taxes, workers comp, benefits. This includes productive time and unproductive time (travel, weather delays, training).
Equipment/Subs: 3-8% Equipment rental, dumpsters, subcontractors, specialty equipment for specific jobs.
Overhead: 20-30% Office rent, administrative staff, insurance, vehicles, marketing, professional services, software, supplies.
Profit: 5-15% What’s left for the owner and reinvestment.
The numbers vary by company, market, and job mix. But most roofing companies discover they’re spending more than they realized on labor and overhead.
Job-Level Margin Analysis
Averages hide reality. Some jobs make great margins. Others lose money. Without job-level analysis, you can’t tell which.
Job costing requires tracking for each job:
- Actual materials used (not estimated)
- Actual labor hours (not estimated)
- Any job-specific equipment or subs
- Callbacks and warranty work attributable
Then comparing actual costs to original estimate.
This analysis reveals patterns:
- Which job types profit most?
- Which crews produce best margins?
- Which salespeople sell profitable vs unprofitable work?
- Where do estimates consistently miss?
Job-level visibility enables intelligent pricing and operational improvement.
The Pricing Formula
Professional pricing builds from costs upward, not from market prices downward.
Step 1: Calculate Direct Costs Materials + Labor + Equipment/Subs for the specific job.
Step 2: Add Overhead Allocation Overhead must get recovered through job pricing. Calculate your overhead percentage of revenue and apply it.
If overhead runs 25% of revenue, a job with $10K direct costs needs $2,500 overhead allocation (25% of the eventual price, working backward).
Step 3: Add Profit Margin Decide your target profit margin and add it.
Pricing Formula: Price = Direct Costs / (1 - Overhead % - Profit %)
Example:
- Direct costs: $10,000
- Overhead: 25% of revenue
- Target profit: 15% of revenue
Price = $10,000 / (1 - 0.25 - 0.15) = $10,000 / 0.60 = $16,667
At this price:
- Direct costs: $10,000 (60%)
- Overhead recovery: $4,167 (25%)
- Profit: $2,500 (15%)
The Markup vs. Margin Confusion
Many roofing companies confuse markup and margin. The confusion costs significant money.
Markup is the percentage added to cost: Markup = (Price - Cost) / Cost
Margin is profit as percentage of price: Margin = (Price - Cost) / Price
Example: $10K cost, $15K price
- Markup: ($15K - $10K) / $10K = 50%
- Margin: ($15K - $10K) / $15K = 33%
A 50% markup produces only 33% margin.
The difference matters. If you want 40% gross margin and apply 40% markup, you actually achieve only 29% gross margin.
Conversion: Markup = Margin / (1 - Margin) Margin = Markup / (1 + Markup)
For 40% margin: Markup = 0.40 / 0.60 = 67%
Ensure you’re calculating correctly. Many roofing companies think they’re making 40% and actually make 28%.
Material Margin Leakage
Material margins leak through several channels.
Waste: Estimates assume standard waste factors. Actual waste often exceeds estimates. A 10% waste factor that runs 15% steals 5% of material value.
Theft and loss: Materials disappear from job sites and trucks. Without tracking, you don’t know how much you’re losing.
Misordering: Wrong materials ordered, returned, restocked at lower credit, or thrown away.
Price changes: Material prices quoted at estimate time may increase before purchase.
Unbilled materials: Add-on materials used but not added to invoice.
Track actual material usage against estimates. The gap reveals improvement opportunity.
Labor Margin Leakage
Labor is typically the largest margin leak area.
Unproductive time: Crews paid for time not producing revenue. Travel, weather delays, waiting for materials, rework.
Overtime: Premium labor rates without corresponding price premium.
Crew inefficiency: Some crews install faster than others. Slow crews cost more for same output.
Training time: New employees produce less while learning.
Callbacks: Return trips to fix problems consume labor without revenue.
Track labor hours by job. Compare crews. Identify where time goes. The data reveals where margins leak.
Overhead: The Hidden Margin Killer
Overhead creeps upward without visibility. Expenses get added but rarely removed.
Regular overhead audit questions:
- Is each expense necessary?
- Are we getting value for each cost?
- Are there cheaper alternatives?
- Has the expense increased without corresponding value?
Common overhead bloat areas:
- Insurance (when was last competitive quote?)
- Software subscriptions (are all used?)
- Vehicles (right-sized for needs?)
- Marketing (what’s ROI on each channel?)
- Professional services (right level of service?)
A 5% overhead reduction on $5M company adds $250K to bottom line.
Pricing by Job Type
Different job types require different pricing approaches.
Retail residential: Standard pricing with markup tables. Competition-aware but not competition-driven.
Insurance restoration: Pricing constrained by insurance adjuster approval. Margin comes from efficiency and supplement skills.
Commercial: Longer sales cycles, higher complexity, but often better margins on larger jobs.
Repairs and maintenance: Higher margin percentage but lower absolute dollars. Overhead recovery challenging on small jobs.
Premium/custom: Highest margin potential but requires brand positioning to command prices.
Analyze margins by job type. Some companies discover their highest-volume work is their lowest-margin work.
Price Increases
Many roofing companies underprice because they haven’t raised prices in years.
Costs rise annually:
- Labor: 3-5%
- Materials: Variable but trending up
- Insurance: 5-15%
- Overhead: 2-4%
Without corresponding price increases, margins compress steadily.
Test price sensitivity systematically:
- Raise prices 5% on new estimates
- Track close rates
- Measure actual margin impact
- Adjust based on results
Most companies can raise prices 5-10% without significant close rate impact. The margin improvement flows directly to profit.
The Pricing Power Question
Long-term margin improvement comes from pricing power, not just cost control.
Pricing power sources:
- Reputation and brand
- Quality differentiation
- Unique capabilities
- Customer relationships
- Convenience and service
- Trust and reliability
Low pricing power traps you in price competition. Every job requires fighting competitors on price.
High pricing power enables premium pricing. Customers choose you despite higher prices.
Building pricing power takes years. But it’s the only sustainable path to strong margins.
Start Here
Margin improvement starts with visibility.
Start Here:
- Calculate your actual gross margin and net margin for last 12 months. Not your estimates. Your actuals.
- Pull 10 recent jobs. Compare actual costs to original estimates. Where did reality differ?
- List your overhead expenses. Identify the top 5 by dollar amount. When did you last evaluate each for necessity and alternatives?
Pricing for profit requires understanding where your money actually goes. Most roofing companies operate with incomplete visibility, pricing on intuition rather than data.
The company that knows its true costs, prices accordingly, and continuously improves margins builds wealth from every job. The company that guesses leaves money on the table with every contract signed.
Know your numbers. Price with intention. Margins determine destiny.
This article is for educational purposes only and does not constitute financial advice. Consult with qualified financial and legal professionals before making business decisions.