Picture this: a contractor wraps up a six-week kitchen remodel, the client is happy, the final invoice is paid, and there is $14,000 sitting in the business account. Feels like a profitable job. Then the accountant pulls the actual numbers – labor hours logged, materials purchased across four separate supply runs, the subcontractor brought in for the tile work, the equipment rental that got charged to a personal card and nearly forgotten – and the real margin on that job was 4%. Not 40. Four.
This is the central problem with bookkeeping for contractors. The money moves in ways that feel profitable in the moment but hide cost overruns in the details. A lumber delivery receipt crumpled in a truck glove box. A subcontractor invoice paid from the wrong account. Six change orders that were never formally priced and billed. None of these feel like bookkeeping failures on a Tuesday afternoon on the job site. They surface at year-end, or worse, mid-project when cash runs short and nobody can explain where it went.
This guide covers how bookkeeping actually works for contractors – not in theory, but in the specific, project-by-project reality of running a construction business.
Why Construction Bookkeeping Is Different From Every Other Industry
A restaurant has relatively predictable costs: food, labor, rent, utilities. A law firm bills hours against retainers. The numbers repeat in a recognizable pattern month to month. Construction does not work that way.
A contractor might be running three jobs simultaneously – one that is 80% complete and waiting on a final inspection, one that just started with a large material purchase front-loaded in the first week, and one that is stalled because a subcontractor is two weeks behind. Each of those jobs has its own labor costs, material costs, subcontractor payments, and billing schedule. The business checking account at any given moment reflects all three at once, which tells you almost nothing about whether any individual job is making money.
This is why generic bookkeeping advice – keep your receipts, reconcile monthly, run a P&L – is necessary but insufficient for contractors. The P&L for a construction business can look perfectly healthy while two of the three active jobs are quietly losing money. The only way to catch that is job costing, which is the practice of tracking every cost against the specific project it belongs to.
Cash Basis vs Percentage of Completion: How Revenue Gets Recognized
Most small businesses record revenue when cash hits the account. For a contractor, this creates a distorted picture. A $120,000 renovation contract might collect a 30% deposit upfront, progress billings at 50% and 80% completion, and a final 10% at punch-list sign-off. If the business only records revenue when each check clears, the financials show a profitable January (deposit received), a flat February and March (work happening, no billing), and a spike in April when the progress billing goes out.
Percentage of completion accounting matches revenue to the actual work performed, which gives a cleaner picture of profitability at any point in the project. For smaller contractors, cash basis is often simpler and acceptable for tax purposes – but understanding the difference matters when reading your own financial statements.
Job Costing: The Bookkeeping Practice That Separates Profitable Contractors From Busy Ones
Job costing is the process of assigning every expense – every hour of labor, every material purchase, every subcontractor invoice, every equipment rental – to the specific project it belongs to. When done consistently, it answers the question that matters most: did that job actually make money, and if not, where did the margin go?
In practice, job costing requires discipline at the point of transaction. When a laborer logs hours, those hours need to be assigned to a job number, not just coded to “labor.” When materials are purchased at the supply house, the receipt needs to note which project they are going to before it gets crumpled in a truck console and handed to the bookkeeper three weeks later as a barely legible smear of ink.
QuickBooks and most construction accounting software handle job costing by letting you assign transactions to specific customers or projects at the time of entry. The output is a job profitability report that shows, for each project, what was estimated versus what was actually spent. That comparison – estimate vs. actual – is where the real financial intelligence lives for a contractor.
The Most Common Job Costing Failures
The breakdown usually happens in one of three places. First, labor hours get logged to the wrong job because the foreman is entering time at the end of a long day and picks the most recently used project code without checking. Second, materials purchased for one job get used on another when the first project runs short, and nobody updates the record. Third, change orders – additional work the client requested mid-project – get done without a written scope change, meaning the extra cost hits the job but no additional revenue gets billed against it.
Each of these is a small failure individually. Across a full project, they add up to the difference between the 4% margin and the 18% margin the estimate projected.
Setting Up the Bookkeeping System for a Construction Business
The setup choices made at the beginning of a bookkeeping system determine how useful it becomes over time. For contractors, three things matter most: the chart of accounts, the job costing structure, and how payroll and subcontractor payments are handled.
Building a Chart of Accounts That Reflects How Construction Costs Actually Work
The default QuickBooks chart of accounts is built for a generic small business. A contractor needs to customize it to reflect how construction costs are structured. The cost of goods sold section should have separate line items for at minimum: labor (direct), labor burden (payroll taxes and workers comp), materials, subcontractors, equipment rentals, and permits. The more granular these categories, the more useful the job profitability reports become.
On the overhead side, equipment depreciation, vehicle expenses, tool purchases, and insurance all need their own accounts. Mixing subcontractor payments into a general “outside services” bucket alongside software subscriptions produces reports that cannot answer real questions about project costs.
Handling Subcontractor Payments and 1099 Tracking
Every subcontractor paid more than $600 in a calendar year requires a 1099-NEC filed with the IRS by January 31. The only way to do this accurately is to collect a W-9 from every subcontractor before issuing the first payment – not at year-end when the accountant is asking for it and half the subs are unreachable.
In QuickBooks, subcontractors should be set up as vendors with their tax information entered at setup. The software will track cumulative payments and flag when the $600 threshold is crossed. Trying to reconstruct this in January from a stack of bank transfers and cash payments is one of the more painful annual bookkeeping experiences a contractor can subject themselves to.
Payroll for Construction: Where the Complexity Lives
Construction payroll is more complex than most industries. Workers may be paid at different rates depending on the type of work they are doing that day. Prevailing wage requirements apply on public projects. Workers compensation premiums are calculated per $100 of payroll by job classification, which means misclassifying a framing carpenter as a general laborer is both a compliance issue and an insurance issue.
For most contractors, payroll is the area where professional support pays for itself most clearly. An error in payroll tax deposits triggers IRS penalties that accumulate quickly. Getting workers comp classifications wrong creates audit exposure with the insurer at the annual premium audit. These are not theoretical risks – they are the specific headaches that show up in the inbox of any bookkeeper who works with construction clients.
The Bookkeeping Rhythm for an Active Construction Business
The weekly and monthly rhythm for a contractor looks different from a service business or retailer because the transaction types are more varied and the timing of costs and revenues is less predictable.
Weekly Tasks
Every week the bookkeeping system needs:
- All supplier invoices entered and assigned to the correct job
- Labor hours reviewed and confirmed against time cards or the field management app
- Subcontractor invoices logged and matched against signed scopes of work
- Any receipts from field purchases entered before they disappear into a truck glove box or a pocket
- Progress billings sent on any jobs that have hit billing milestones
That last one matters more than most contractors realize. Cash flow in construction is directly tied to billing speed. A job that hits 50% completion on a Wednesday but does not get billed until the following Monday has created a week of unnecessary gap in cash coming through the door.
Monthly: Reconciliation and Job Profitability Review
Monthly reconciliation for a contractor covers every bank account, every credit card, and ideally every job credit line if one is in use. The reconciliation is not just a compliance exercise – it is the checkpoint that catches the subcontractor payment that cleared but never got assigned to a job, or the supply house charge that landed on the business card but belongs on a specific project.
After reconciliation, the monthly job profitability report is the most important thing a contractor can spend 20 minutes reviewing. For every active project: what was the original estimate, what has been spent to date, what percentage of the work is complete, and what does the projected final cost look like? If a job is tracking 15% over budget at 60% completion, the time to address it is now – not at closeout when the damage is already done.
Annual: Closing Out and Preparing for Tax Season
Year-end for a contractor involves a few tasks that are specific to the industry. All jobs that are still open need a work-in-progress schedule – a summary of each project showing contract value, billings to date, costs to date, and estimated cost to complete. This document is required by most lenders and bonding companies, and any CPA preparing a construction company tax return will want it.
The 1099-NEC forms for all qualifying subcontractors need to go out by January 31. Equipment that was purchased during the year needs to be properly capitalized or expensed depending on the value and the depreciation strategy the CPA recommends. And the books need to be fully reconciled through December 31 before anything goes to the tax preparer.
Software Options for Construction Bookkeeping
The right software depends on the size and complexity of the business. Not every contractor needs a full construction ERP platform – and most of them should not start with one.
QuickBooks Online With Job Costing Turned On
For most small to mid-size contractors, QuickBooks Online with the Projects feature enabled handles job costing adequately. Transactions can be assigned to projects, labor costs can be tracked against specific jobs, and the job profitability report gives a running view of where each project stands. The limitation is that QBO is a general accounting platform, not a construction-specific one – so some of the more specialized reporting, like work-in-progress schedules, requires either manual work or an add-on.
Construction-Specific Platforms: Buildertrend, CoConstruct, Foundation
Platforms built specifically for construction handle things like bid management, change order tracking, and subcontractor lien waivers in ways that general accounting software does not. Foundation Software is the most accounting-focused of the construction-specific platforms. Buildertrend and CoConstruct are stronger on the project management side and integrate with QuickBooks for the accounting piece.
The decision point for most contractors is around $2-3 million in annual revenue or five or more active projects at once. Below that threshold, QuickBooks Online with proper setup and disciplined job coding usually handles it. Above it, the limitations of a general platform start creating real friction.
When to Bring in a Professional Bookkeeper
Most contractors start doing their own books because hiring feels like an overhead cost they cannot justify early on. The calculation changes faster than most expect.
The practical indicators that it is time to bring in professional help: job costing records are more than a month behind and nobody knows the real margin on active projects, subcontractor 1099 tracking has been handled inconsistently for the past year, payroll has had at least one quarter where the deposit timing was uncertain, or the CPA’s first question every tax season is “can you send me corrected financials?”
A bookkeeper who understands construction – not just general accounting – will typically pay for their cost within the first few months by catching job cost leakage, cleaning up subcontractor records before they become a 1099 problem, and getting the books into a state where the monthly profitability report is actually usable for decisions.
The Bottom Line
The contractor who finished that kitchen remodel with $14,000 in the account and 4% margin was not running a bad business. The work was good. The client was happy. But without job costing in place, there was no way to know that the tile subcontractor’s invoice came in $1,800 over the estimate, that two laborers had their hours logged to the wrong job for the first week, or that the change order for the backsplash extension never got formally priced and billed.
That is what bookkeeping for contractors actually protects against. Not just tax compliance – though that matters too. It protects against the slow, invisible erosion of margin that happens one untracked receipt and one unbilled change order at a time.
Frequently Asked Questions
What is bookkeeping for contractors?
Bookkeeping for contractors is the process of recording every financial transaction in the business – labor costs, material purchases, subcontractor payments, equipment rentals, progress billings – and organizing those records both at the company level and at the individual project level. The project-level tracking is called job costing and is what makes construction bookkeeping more complex than bookkeeping for most other industries.
How does construction bookkeeping differ from regular bookkeeping?
The key difference is job costing. A retail business or service firm records revenue and expenses at the company level. A contractor needs to track costs against specific projects to know whether each job is profitable. Construction also involves revenue recognition complexity (when to record income on long-running contracts), 1099 compliance for subcontractors, and payroll complications like prevailing wage and workers comp classifications that most industries do not face.
What is job costing and why does it matter?
Job costing assigns every expense – labor, materials, subcontractors, equipment – to the specific project it belongs to. Without it, a contractor knows whether the business made money overall but has no visibility into which jobs drove that result. A business can show a healthy overall P&L while individual jobs are losing money, and job costing is the only way to catch that before it compounds.
What bookkeeping software do contractors use?
QuickBooks Online with the Projects feature is the most common starting point for small to mid-size contractors. For businesses above roughly $2-3 million in revenue or running five or more simultaneous projects, construction-specific platforms like Foundation Software, Buildertrend, or CoConstruct offer more specialized job costing and project management features. Most of these integrate with QuickBooks for the accounting side.
How do contractors handle 1099s for subcontractors?
Any subcontractor paid more than $600 in a calendar year requires a 1099-NEC filed by January 31. The right time to collect the W-9 is before the first payment is issued, not at year-end. QuickBooks tracks cumulative vendor payments and can generate 1099 forms directly if vendors are set up correctly with their tax information at the start.
When should a contractor hire a professional bookkeeper?
The practical threshold is when bookkeeping is running more than a month behind, when job costing data is unreliable, or when payroll and 1099 compliance have become sources of ongoing stress. A bookkeeper who understands construction bookkeeping – not just general accounting – will typically recover their cost quickly by catching margin leakage and resolving compliance issues that would otherwise compound.