Contractor Profit and Loss Statement: How to Read and Use It

Most construction business owners look at their bank account to gauge profitability. The problem is that a bank account balance reflects cash timing — not whether the business actually made money.
A contractor can have $80,000 in the bank and be losing money on every project. They can also have $12,000 in the bank and be running at 14% net profit.
The bank account tells you your cash position.
The profit and loss statement tells you whether the business is healthy.
If you're working to improve visibility across jobs, this Construction Project Management Guide explains how operational tracking connects directly to financial performance.
The Two P&Ls Every Contractor Needs
Company P&L — the overall income statement. Shows total revenue, total COGS, gross profit, overhead, and net profit.
Job-level P&L — a P&L for each individual project. Shows what that specific job billed, what it cost, and what it contributed to overhead and profit.
The company P&L tells you how the business performed. The job-level P&Ls tell you why.
Accurate job-level reporting depends on structured field documentation. Many contractors rely on Construction Photo Documentation Software to ensure labor, materials, and progress records align with financial reporting.
The Construction P&L: Line by Line
Revenue
Contract revenue — amounts billed per draw schedule or invoices.
Change order revenue — track separately from base contract. A high percentage signals estimating gaps or scope creep.
Strong documentation supports faster change order approval. Systems built as Project Management Software for General Contractors centralize documentation and billing records.
Cost of Goods Sold (Direct Costs)
Labor — field wages plus burden.
Materials — coded to specific jobs.
Subcontractors — often the largest COGS line item.
Equipment costs — project-specific rental and fuel.
Other direct costs — permits, site utilities, dumpsters.
Field labor tracking errors distort gross margin. Contractors using structured GPS Timesheets for Contractors reduce labor variance and protect job profitability.
Gross Profit
Gross Profit = Total Revenue − Total Direct Costs
Gross Profit Margin % = Gross Profit ÷ Total Revenue × 100
Gross margin drives everything else.
If gross margin is 22% and overhead is 18%, you make 4% net.
If gross margin drops to 18% while overhead stays at 18%, you break even.
This is why documentation, job costing, and production tracking matter more than simply increasing revenue.
Overhead (Operating Expenses)
Owner/principal compensation must appear here. Contractors who pay themselves informally through draws without recording it as expense are overstating profitability.
Overhead includes:
- Office staff / PM salaries
- Rent
- Insurance
- Fleet
- Equipment depreciation
- Software
- Marketing
- Professional fees
If overhead grows faster than revenue, net margin shrinks.
For a breakdown of tools that support financial visibility and cost control, explore these Construction Management Tools & Features.
Net Profit
Net Profit = Gross Profit − Total Overhead
Net Profit Margin % = Net Profit ÷ Total Revenue × 100
Healthy net margins vary by trade:
- Residential specialty: 12–18%
- Custom home builder: 10–15%
- Commercial GC: 6–10%
- Roofing subcontractor: 4–8%
If gross margin is in range but net margin is low, overhead is consuming profit.
Roofing contractors tracking production and job profitability often rely on Roofing Contractor Project Management Software to connect field performance with financial reporting.
Margin Benchmarks by Trade
[SVG: Horizontal bar chart — Gross margin and net profit margin by trade]
|
Trade |
Gross Margin |
Net Profit |
|
Specialty / remodeling (residential) |
40–50% |
12–18% |
|
Custom home builder |
32–40% |
10–15% |
|
MEP specialty (electrical, plumbing, HVAC) |
28–35% |
8–12% |
|
Commercial GC (subcontracted work) |
18–24% |
6–10% |
|
Concrete / sitework / earthwork |
20–28% |
5–9% |
|
GC with significant self-perform labor |
22–30% |
7–11% |
|
Framing / roofing / drywall (subcontractor) |
18–22% |
4–8% |
Gross margin below range → pricing or direct cost control problem- Gross margin in range but net margin below range → overhead consuming too much gross profit, usually because overhead grew faster than revenue
- Both margins in range → healthy business; focus on consistency and growth
Job-Level P&L: The Diagnostic Tool
Job P&L — [Project Name]
|
Budget |
Actual |
Variance |
|
|
Contract value |
$480,000 |
$480,000 |
— |
|
Change orders |
— |
$15,000 |
+$15,000 |
|
Total revenue |
$480,000 |
$495,000 |
+$15,000 |
|
Direct labor |
$96,000 |
$108,000 |
–$12,000 |
|
Materials |
$144,000 |
$141,000 |
+$3,000 |
|
Subcontractors |
$120,000 |
$118,000 |
+$2,000 |
|
Equipment / other |
$24,000 |
$22,000 |
+$2,000 |
|
Total direct costs |
$384,000 |
$389,000 |
–$5,000 |
|
Gross profit |
$96,000 |
$106,000 |
+$10,000 |
|
Gross margin % |
20.0% |
21.4% |
+1.4% |
|
Overhead allocation |
$72,000 |
$72,000 |
— |
|
Net contribution |
$24,000 |
$34,000 |
+$10,000 |
The cost-to-complete projection is the most important column on an active job P&L. If you're 60% complete but have spent 70% of your labor budget, the job is running hot. Catch it at 60% and you have options; catch it at 95% and you're recording the loss.
Without job-level visibility, you repeat losing patterns.
If you're 60% complete but have spent 70% of your labor budget, the job is running hot.
Catch it early and you can adjust. Catch it at 95% and you're booking a loss.
For real-world examples of improved reporting and operational control, review this Construction Project Management Case Study.
The Five Numbers to Review Every Month

- Gross margin %
- Overhead as % of revenue
- Net margin %
- Revenue backlog
- AR aging
A strong P&L with only 30 days of backlog is a warning sign.
If AR over 60 days increases, cash flow pressure follows — even when the P&L shows profit.
Contractors comparing documentation platforms can review this TaskTag vs CompanyCam Comparison for deeper insight into workflow and reporting differences.
Common P&L Misclassifications Contractors Make
- Owner compensation not recorded as an expense. Paying yourself through draws without recording it as officer compensation overstates profitability. A business showing 12% net profit that isn't paying the owner a market-rate salary may actually be at 3–4%.
- Equipment purchases expensed immediately (Section 179) instead of depreciated. A $90,000 excavator used for 10 years shouldn't hit the P&L as a $90,000 expense in year one. Maintain separate tax and management books.
- Mixing personal and business expenses. Personal expenses through the business account inflate overhead and reduce apparent profitability.
- Job costs coded to overhead. A foreman's wage coded to overhead understates COGS and overstates gross margin. Direct costs must always be coded to projects.
- Revenue on cash basis while costs are on accrual. Recording material costs when purchased but revenue only when cash arrives creates artificial monthly losses.
Owner compensation not recorded as expense
Equipment purchases expensed immediately instead of depreciated
Personal expenses mixed into overhead
Job costs coded to overhead
Revenue recorded on cash basis while costs recorded accrual
These distort gross margin and create false confidence.
You can stay updated on improvements and reporting features inside TaskTag Product Updates.
Month-Over-Month Trend
[SVG: Grouped bar chart — Monthly gross margin % and net margin % over 6 months]
- Jan: gross 24%, net 8% (green — above target)
- Feb: gross 21%, net 6% (on target)
- Mar: gross 19%, net 5% (yellow — below target)
- Apr: gross 17%, net 3% (red — well below target)
- May: gross 22%, net 7% (recovery — back to target)
- Jun: gross 25%, net 9% (green)
The March–April dip is what monthly review is designed to catch. Without it, the same contractor blends to an annual average that obscures two months of underperformance — and misses the chance to understand and fix the root cause.
Monthly review prevents annual surprises.
A dip in March and April can hide inside an annual average.
Consistent reporting identifies problems early and allows correction before losses compound.
For broader contractor education, browse the Construction Software Guides & Tips section.
How to Run a 30-Minute Monthly P&L Review
Pull:
- Company P&L (month, YTD, prior year)
- Job cost reports
- AR aging
Work through:
- Revenue vs plan
- Change order %
- Gross margin drivers
- Active jobs over budget
- Overhead spikes
- Net margin trend
- AR follow-up
End with 1–2 specific action items.
If you're ready to centralize documentation and reporting, you can See TaskTag in Action.
Monthly P&L Review Checklist
Setup:
- [ ] Company P&L (month, YTD, prior year comparison)
- [ ] Job cost reports for all active and recently completed projects
- [ ] AR aging report
Revenue:
- [ ] Total revenue vs. plan and prior year
- [ ] Change order % of total revenue
- [ ] Backlog review
Gross margin:
- [ ] Gross margin % vs. target range
- [ ] Jobs above/below target — why?
- [ ] Active jobs with cost-to-complete over budget?
Overhead:
- [ ] Overhead % vs. prior months
- [ ] Any unexpected spike in a category?
- [ ] Owner compensation properly recorded?
Net margin:
- [ ] Net margin % vs. trade benchmark
- [ ] 3-month trend — improving, stable, declining?
AR:
- [ ] Anything over 60 days?
- [ ] Retainage balance in forward cash projection?
Actions:
- [ ] 1–2 specific action items written down
Related Resources
- Construction Job Costing — the job-level cost tracking that produces accurate job P&Ls
- Construction Overhead and Profit — calculate your true overhead rate so bids cover all costs
- General Contractor Markup — markup vs. margin conversion and how to apply overhead rate to bids
- Construction Cash Flow Management — why a profitable P&L and a healthy bank account aren't the same thing
- Construction Budget Template — project budgets that align with your job P&L structure
- Contractor Tax Deductions — how P&L line items connect to tax deductions and year-end planning
- How to Grow a Construction Business — using P&L data to make informed decisions about hiring, equipment, and growth investme
Final Thoughts
The contractor profit and loss statement is not just a financial document.
It is the operational scoreboard of your business.
Revenue without margin discipline is noise.
Margin without job-level visibility is guesswork.
If you want structured job tracking and documentation:
- Review TaskTag Pricing Plans
- Or Start Your Free TaskTag Account
- Learn more About TaskTag
- You can also Download the TaskTag App for field access
Ready to explore how TaskTag can transform your construction projects?
Start your free trial today and see the difference!