Construction is one of the most bookkeeping-intensive small businesses that exists. Job costing across multiple active projects, WIP tracking, retainage, subcontractor management, prevailing wage compliance, and state contractor licensing record-keeping. Do it right and you can bid confidently. Do it wrong and one bad project can take the whole company down.
Here is the bookkeeping stack we run for construction clients — general contractors, home improvement remodelers, subcontractors, and specialty trades — wherever they operate.
Contractor licensing record-keeping is not optional.
Every state licenses contractors differently. California has the CSLB. Florida has the CILB. Maryland has the Maryland Home Improvement Commission (MHIC). Texas licenses electricians and plumbers at the state level but leaves general contractors to the counties. Whatever your state's regime, the license comes with contract terms, payment schedule rules, and record retention requirements. Your books need to support all of it.
Common licensing-related bookkeeping requirements you will see in most jurisdictions:
- Every contract must be tracked as a job with the required legal elements documented (scope, price, start/completion dates, cancellation rights)
- Customer deposits are typically capped by state law (Maryland MHIC caps at one-third of contract price or the cost of special-order materials, California caps at $1,000 or 10 percent, other states vary). Your books need to reflect deposits as customer deposits (liability), not revenue, until earned
- Progress payments must be tied to actual work completed, not arbitrary dates. Your job cost system should show percent complete against contract value
- Retention of records — contracts, change orders, payment records — is required for a minimum period (typically 3 to 7 years depending on the state), and the licensing board can request them during a complaint investigation
If you ever get a licensing board complaint or audit, the ability to produce a complete job file within 24 hours is what separates “this resolves quickly” from “this becomes an expensive dispute.”
Job costing that actually works.
The bookkeeping fundamental for any construction business is job costing. You have to know, at any point during a project, whether it is on budget, over budget, or under budget. Not just at the end.
The setup:
- Every job is a QuickBooks Customer:Job. The parent customer is the client, the sub-job is the specific project. If you do multiple projects for the same client (say, a repeat commercial GC), each is its own sub-job.
- Chart of accounts uses job cost categories. Materials, subcontractor labor, direct labor, equipment rental, permits, other direct costs. Then indirect job costs allocated separately.
- Every expense is coded to a job and category. Every purchase order, every subcontractor invoice, every credit card charge, every hour of labor.
- Every payroll run allocates labor to jobs. This is where 90 percent of small construction bookkeeping breaks down. If labor is not job-costed, your job margins are fiction.
- Weekly job cost review. Actual cost to date vs. estimated cost, percent complete, and remaining budget. Every open job. Every week.
Want a construction-specific reporting package?
Our sample includes a job cost report, WIP schedule, and cash forecast for a contractor with 4 active jobs. See what your monthly package should look like.
Get the sample packageWIP schedule: the report that saves your company.
The Work-in-Progress (WIP) schedule is the single most important report a construction business generates. It tells you, for every open job, whether you have billed too much (overbilled) or too little (underbilled) relative to work completed.
The WIP calculation for each job:
- Contract value
- Estimated total cost at completion
- Estimated gross profit
- Actual cost incurred to date
- Percent complete = actual cost / estimated total cost
- Earned revenue = contract value × percent complete
- Billed to date
- Overbilling / underbilling = billed to date − earned revenue
An overbilled job is a red flag: you have taken customer money for work you have not done. Cash looks healthy, but you have committed labor and material spending ahead of you. Underbilled means the opposite — you have earned revenue you have not collected yet, and your cash is worse than it looks.
Bonded contractors are usually required to produce a WIP schedule quarterly for their bonding company. Non-bonded contractors should still be doing this monthly. It is the single most important internal control in construction accounting.
Retainage tracking.
Retainage (usually 5 to 10 percent held back by the GC until final completion) is one of the most commonly mis-recorded items on a subcontractor's books. It should never be recognized as immediately collectible revenue.
The right way:
- When you invoice the GC, gross invoice = revenue
- Retainage held = split from AR into a separate “Retainage Receivable” account
- Only reclassify retainage back to normal AR when the project is complete and retainage is released
- Track by job so you know how much retainage is outstanding across your active portfolio
This matters for two reasons. First, your true collectible AR is lower than it looks. Second, when you go to a lender or bonding company, retainage is treated differently from regular AR, and a clean split is what auditors expect.
Prevailing wage and certified payroll.
If you do public work — anything funded by the federal government (Davis-Bacon Act) or by a state or local government with its own prevailing wage statute (California, New York, Illinois, Maryland, and many others) — you are subject to prevailing wage compliance. This means:
- You must pay each craft/trade the prevailing wage rate as determined by the applicable Department of Labor (federal DOL for Davis-Bacon jobs, or the corresponding state authority)
- You must submit certified payroll reports weekly (federal Form WH-347 or a state equivalent)
- Records must be maintained for 3 to 7 years and available for audit
Practically, this means your payroll system (Gusto, QuickBooks Payroll, or a construction-specialized system) needs to handle multiple pay rates per employee (their normal rate, their prevailing wage rate on public jobs) and generate the required certified payroll reports. If you are doing this manually in a spreadsheet, you are one audit away from a serious problem.
Local specifics that always come up.
Permits and use-and-occupancy. Every project needs permits from the local jurisdiction. Permit fees are direct job costs, coded to the specific job.
Local business license. Most cities and counties require a business license for contractors operating in their jurisdiction. Annual operating expense per jurisdiction.
Sales tax on materials vs. services. Some states tax construction services, some do not. Some tax materials as a resale item, others tax them at retail. If you buy materials for resale to a customer, most states allow a resale exemption certificate. If you install them as part of a service, sales tax handling varies. Get this wrong and you create a sales tax mess with your state department of revenue.
What we do for construction clients.
We run monthly job cost close, WIP schedules, retainage tracking, and certified payroll compliance for construction contractors nationwide, from residential remodelers to mid-size commercial GCs. If your job costs are living in a spreadsheet and you find out at year-end which jobs made money, this is fixable in about 30 days of clean setup.