Construction Accounting: A Practical Guide for Contractors
Construction accounting is different from standard accounting. This guide covers job costing, WIP schedules, retainage, revenue recognition methods, and common mistakes.
Construction accounting is not just bookkeeping for job sites. It's a fundamentally different discipline from standard business accounting — built around projects, not periods. Understanding how it works is one of the clearest separators between contractors who know their numbers and those who are constantly surprised by them.
Why Construction Accounting Is Different

In most businesses, accounting is simple in structure: revenue comes in, costs go out, you measure profit over time. In construction, three structural realities make that approach inadequate:
Project-based production. Every contract is its own profit center. A general contractor running six jobs simultaneously needs to know if each job is making or losing money — not just whether the company overall is profitable. A company can show a healthy P&L while two of its six jobs are silently bleeding cash.
Long-term contracts. Projects span months or years. Standard cash-basis accounting distorts the picture: a job that runs 14 months looks like a loss until the final check arrives. Construction accounting addresses this with specific revenue recognition methods that match earned revenue to work performed.
Timing mismatches. Material costs are paid upfront, labor is weekly, billing cycles are monthly, and collections often stretch 60–90 days. According to a 2024 payment industry report, 82% of contractors now face payment waits exceeding 30 days — and payment delays are estimated to cost the industry $280 billion annually. Without cash flow management layered on top of your project accounting, these gaps create crises even on profitable jobs.
Revenue Recognition: Choosing Your Method
The first decision in construction accounting is how you recognize revenue on long-term contracts. You have two primary options.
Percentage-of-Completion Method (PCM)
Revenue and expenses are recognized as work progresses. The standard calculation:
% Complete = Costs Incurred to Date ÷ Total Estimated Costs
If your estimated project cost is $800,000 and you've spent $320,000, you're 40% complete. You recognize 40% of the contract value as revenue in the current period — regardless of what you've billed or collected.
The IRS requires PCM for most contractors on long-term contracts (those not completed within the tax year they begin). It's also the more accurate picture of financial performance for lenders and bonding companies.
The risk: if your cost estimates are wrong, your revenue recognition will be wrong. Accurate estimating is the foundation of PCM. You can run your numbers through the construction markup calculator to verify that your estimates support the revenue you're recognizing.
Completed Contract Method (CCM)
Revenue and expenses are deferred until the project is finished. Nothing hits the income statement mid-project.
Available to smaller contractors: the IRS allows CCM for contractors with average annual gross receipts under $25 million (over the prior 3 years) on contracts estimated to complete within 2 years.
The advantage is tax deferral — you don't pay taxes on project profits until the job closes. The drawback is volatility: your income statement shows nothing for months, then a large profit appears at project completion. Banks and sureties struggle to evaluate companies on CCM because interim financials don't reflect what's actually happening.
For most contractors beyond startup scale, PCM provides a more useful financial picture.
Job Costing: The Core of Construction Accounting
Job costing means assigning every dollar of cost to the specific project that incurred it. The formula:
Total Job Cost = Direct Labor + Materials + Subcontractors + Equipment + Allocated Overhead
Direct costs (fully attributable to the job)
- Labor wages plus burden (payroll taxes, workers' comp, benefits)
- Materials and supplies
- Subcontractor invoices
- Equipment rental or job-specific equipment costs
Indirect/overhead costs (allocated across jobs)
- Project management salaries
- Insurance
- Vehicle costs
- Office expenses
- Small tools and consumables
The allocation rate for overhead is typically calculated as a percentage of direct labor cost or direct cost. If your annual overhead runs $500,000 and your annual direct labor is $2,000,000, your overhead rate is 25% of direct labor — every dollar of direct labor on a job carries $0.25 in overhead.
Why job costing matters
Without it, you know if the company is profitable. You don't know which jobs made money and which didn't. Over time, low-margin jobs get cross-subsidized by good ones, estimating never improves, and the company can't identify what type of work to pursue or avoid.
Job cost reports comparing estimated to actual costs by category — labor, materials, subcontractors — are the tool that improves future estimates. A job that ran 8% over on materials points to a specific problem: pricing volatility, material waste, or a bad initial estimate. A job that came in at budget on materials but 15% over on labor points to a different problem. Without the breakout, all you have is a total variance. For a structured approach to setting cost targets before work begins, see our construction budget example.
The WIP Schedule
The WIP (Work in Progress) schedule is the most important management report in construction accounting. It's a project-by-project snapshot that shows, for every active contract, where things stand financially.
A complete WIP schedule includes:
| Column | Description |
|---|---|
| Contract value | Total agreed price including approved change orders |
| Estimated total cost | Current best estimate to complete |
| Costs to date | Actual costs incurred |
| % Complete | Costs to date ÷ Estimated total cost |
| Earned revenue | % Complete × Contract value |
| Billed to date | Actual invoices sent to owner |
| Over/underbilling | Billed to date vs. earned revenue |
| Estimated gross profit | Contract value − Estimated total cost |
Overbilling vs. underbilling
Overbilling (Billings in Excess of Costs): You've billed more than you've earned based on progress. This is a liability on your balance sheet — you've collected cash for work not yet performed. Overbilling can mask cash flow problems because the money looks like it's there. It's effectively borrowing from the future.
Underbilling (Costs in Excess of Billings): You've done more work than you've billed for. This is an asset — money owed but not yet invoiced. Chronic underbilling creates real cash deficits even on profitable jobs. The work is done, the cost is paid, but the cash hasn't arrived.
How often to update the WIP
Monthly. Project managers need to revise their cost-to-complete estimates every month, not just at year-end. A WIP schedule built on stale estimates is misleading. When a project goes over budget in month 4, you need to see that in the month 4 WIP — not at project close when it's too late to act.
Banks and bonding companies routinely request WIP schedules when evaluating credit lines and bid bonds. A contractor who can't produce a current, clean WIP will struggle to get bonded on larger projects. For a deeper look at how these timing gaps affect your bank account, see the construction cash flow example.
Retainage: Tracking the Money You've Earned but Haven't Collected
Retainage is a contractual holdback — typically 5–10% of each progress billing — that project owners withhold until substantial completion. On a $2 million project at 10% retainage, $200,000 sits with the owner until the job is done and punch list items are resolved.
From an accounting standpoint, retainage receivable must be tracked separately from regular accounts receivable. It's money you've earned, but it's not due yet. Lumping it into regular A/R creates two problems:
- Your A/R aging report shows invoices as current when they're actually not collectable yet
- You'll lose track of which projects have retainage to collect and when it's due
On the liability side, if you're a general contractor withholding retainage from subcontractors, that retainage payable appears on your balance sheet as a current liability offset.
The most common retainage mistake is forgetting to bill it once a project reaches substantial completion. Retainage can sit on the balance sheet for months after it's due if no one tracks when it should be released. Set a calendar reminder or process step to invoice retainage within 30 days of substantial completion — or it may sit there for a year.
Common Construction Accounting Mistakes
Inaccurate cost coding. When field staff code labor hours or material purchases to the wrong job — or to overhead instead of a project — the job cost data becomes useless. Consistent coding discipline in the field is foundational. Errors rarely get corrected retroactively.
Change orders not accounted for. Extra work performed without a signed change order has no contractual basis for billing. When change orders are approved verbally and not documented in the accounting system, that revenue is often lost entirely. Every approved change order should update both the contract value and the estimated cost in the WIP.
WIP schedules updated annually instead of monthly. Updating the WIP only at year-end (or for the bank) means the company is operating blind. Problems on a job that's been losing money since month 3 will show up when it's too late to adjust.
Mishandling retainage. Not setting up separate retainage receivable and payable accounts means retainage gets buried in regular A/R and may never be billed. The Construction Balance Sheet Template includes separate retainage line items set up the right way.
Confusing cash and profit. A profitable project on paper can drain cash if billing cycles are slow, retainage is high, and subs need to be paid on 30-day terms. The Construction P&L Template shows profitability; you also need a cash flow forecast to see the timing.
Misclassifying workers as independent contractors. Common in construction. Exposes companies to significant back payroll taxes, penalties, workers' comp audits, and state tax liability.
Setting Up Your Books for Construction
Whether you're using QuickBooks, Sage, or a purpose-built construction platform, the structural requirements are the same:
Chart of accounts by cost type. Your expense categories need to support job-level cost reporting: labor, materials, subcontractors, equipment, and overhead as distinct categories — not a single "cost of sales" line.
Job numbers for every project. Every transaction that relates to a specific project should be coded to that job number. This is the foundation of job costing and can't be retrofitted after the fact.
Separate retainage accounts. Set up retainage receivable and retainage payable as distinct balance sheet accounts, separate from regular A/R and A/P.
Billing in excess / costs in excess accounts. These WIP balance sheet accounts (current asset and current liability) must exist to properly account for overbilling and underbilling under the percentage-of-completion method.
Progress billing workflow. Build a monthly process: project managers submit cost-to-complete updates, accounting reconciles actual costs, WIP schedule is updated, progress invoices are generated, cash flow projection is refreshed.
The Financial Statements Construction Contractors Need
A well-run construction company tracks three core reports:
The income statement shows revenue, cost of revenue (by job), gross profit, overhead, and net income for the period. The Construction Income Statement Template is structured with construction-specific categories. Use it monthly, not just quarterly.
The balance sheet shows assets (including retainage receivable, costs in excess of billings, equipment), liabilities (including billings in excess of costs, retainage payable, loans), and equity. Lenders and sureties read it closely. The Construction Balance Sheet Example walks through what each line item means in a construction context.
The WIP schedule is not a standard financial statement, but it's the most important internal report for a contractor. Updated monthly, it catches margin erosion before a job closes.
Together, these three reports give you the complete picture: what the business has earned and spent (income statement), what it owns and owes (balance sheet), and how current projects are tracking to their estimated margins (WIP). When it's time to present those financials to sureties, lenders, or project owners, Deckary turns your reports into consulting-grade slides.
CFMA's 2024 Benchmarker found that general contractors average around 14.8% gross margin. If your gross margins are consistently running below 12%, job costing — and the estimating discipline it enables — is the first place to look.
Last updated: March 24, 2026
Frequently Asked Questions
Related Articles
Church Accounting Best Practices: A Practical Guide
How church accounting works — fund accounting, restricted funds, internal controls, financial reports, and the tax rules that catch churches off guard.
Church Balance Sheet Example: A Line-by-Line Breakdown
A complete church balance sheet example with real line items, fund accounting explained, and the benchmarks church boards use to assess financial health.
Construction Balance Sheet Example: A Line-by-Line Breakdown
A complete construction company balance sheet example with real line items, WIP accounting, retainage, overbilling, and what sureties and lenders look for.
Daycare Balance Sheet Example: Line by Line
A complete daycare balance sheet example with real line items — enrollment deposits, playground equipment, subsidy receivables, and what the numbers mean.
Food Truck Balance Sheet Example: A Line-by-Line Breakdown
A complete food truck balance sheet example with real line items, truck depreciation rules, and what makes a food truck's financials different from a restaurant.
Healthcare Balance Sheet Example: A Line-by-Line Breakdown
A complete healthcare balance sheet example for a medical practice — covers contractual adjustments, days in AR, malpractice reserves, and key financial ratios.
