Guide
Construction bookkeeping: how to set it up, step by step
The unit that matters is the job, not the month. Every step here exists to make that possible.
Reviewed by Darren Lim, US CPALicence CPA.742536028 min read
Construction bookkeeping differs from ordinary small-business bookkeeping in one way, and everything else follows from it: the unit that matters is the job, not the month.
A shop can run on a monthly P&L. A contractor cannot, because one monthly number blends together a job that made money, a job that lost it, and a job that is half finished and has not been billed yet. The books have to be able to pull those apart. Every step below exists to make that possible.
This is the order to set it up in. If your books already exist, work through it as a checklist — the first step you cannot tick is where the trouble is.
Step 1: Separate the money
One business bank account, one business card, and nothing personal through either. Not "mostly business". Nothing.
This is the foundation for everything that follows, because every transaction in a mixed account has to be investigated before it can be coded — and a job cost report built on guesses about which supply-house run was for the house is a job cost report nobody should trust. There is a full walkthrough in separating business and personal money.
Step 2: Decide the basis
Cash basis records income when the money arrives and costs when they are paid. Accrual records them when they are earned and incurred. Most small contractors keep cash-basis books day to day, and many switch to accrual — at least for the statements they hand out — once a surety or a lender starts reading them.
Which basis you file taxes on is a separate question with its own rules, and it belongs to your CPA. What matters here is choosing deliberately rather than by default. The trade-offs are laid out in cash basis vs accrual for contractors.
Step 3: Build a chart of accounts that splits job cost from overhead
This is the step that decides whether your gross profit means anything.
Job costs — the costs you would not have if the job had not happened — sit above the gross profit line: materials, subcontractors, direct field labor, equipment rented for the job, permits and dump fees.
Overhead — the costs of being in business at all — sits below it: office rent, the office manager, general insurance, software, the owner's truck.
Mix them and the gross margin on your P&L is a blend of two different things. We publish a contractor chart of accounts you can copy, with the reasoning for each line.
Step 4: Give every job an identifier
A job number, or a customer-and-address pairing — whatever the field already uses. The rule is that the office, the crew and the books all call the same job by the same name.
In QuickBooks Online this is usually a project or a customer sub-job. Divisions of the business — service versus install, residential versus commercial — are better handled with classes, so that one job can sit inside one division.
Step 5: Code every transaction to a job
Now the discipline. Every invoice carries the job. Every material purchase carries the job. Every sub bill carries the job.
The places this breaks are always the same: the card swipe at the supply house with no job on the receipt, the return that gets refunded to the card and never credited back to the job, and the fuel and small tools that end up coded to whichever job was open on the screen. Code weekly, not monthly. A receipt is easy to place on Friday and nearly impossible to place six weeks later.
Step 6: Get subcontractors right from the first payment
Before the first cheque to any sub:
- A W-9 on file. Without it, January is a scramble. See who needs a 1099.
- A certificate of insurance, with the expiry date recorded. An uninsured sub becomes your cost at the insurance audit — see the workers comp audit guide.
- A lien waiver with each payment on any work where lien rights apply. See lien waivers explained.
Sub payments then get tracked by payee all year, so the 1099 run is a report rather than a project.
Step 7: Record deposits, progress billing and retainage as what they are
A deposit is not revenue. It is money you owe back in work. Recorded as income, it makes the month you took it look strong and the month you do the work look terrible. See deposits and progress billing.
Retainage gets its own account, per job, with the release condition written down. Left inside ordinary receivables it quietly stops being chased. See retainage explained.
On jobs that span months, compare what you have billed with what you have earned. That comparison is the WIP schedule, and it is the report sureties and banks read first.
Step 8: Put labor on the job
Labor is the largest cost most contractors have and the one most often missing from job costing. Hours need to be attributed to jobs, even roughly, and costed at the burdened rate — wage plus payroll taxes, workers comp and benefits — not the wage alone. The true hourly cost calculator works that rate out from your own figures.
Approximate labor allocation gives useful numbers. No labor allocation gives a job report that says every job was profitable, which is how contractors end up busy and broke.
Step 9: Reconcile every account, every month
Bank accounts, cards, loans, lines of credit and payroll liabilities — each one matched to its statement, every month. Reconciliation is what turns a set of entries into a set of books. Without it, every number that comes out is unverified, including the ones the tax return is built on.
If a reconciliation will not balance, the most common causes are worked through in order in QuickBooks does not match your bank.
Step 10: Read the results
Closing the month is only useful if someone reads what it says. The minimum:
- The P&L, by job and by division — which work made money this month
- The balance sheet — whether the business is getting stronger, not just busier (how to read one)
- Receivables ageing — who owes you, and for how long
- The WIP schedule, if any job runs longer than a month
The eight numbers worth checking monthly are a good standing agenda.
If you are already behind
Start with the current month and set it up properly, then work backwards. Waiting until you have caught up before fixing the structure means doing the catch-up twice. Catch-up bookkeeping explains how it usually goes, and it is almost always smaller than the owner expects.
For the recurring tasks in one place, see the contractor bookkeeping checklist.
General information, not tax or legal advice. Your CPA should decide your tax accounting method.
How we do this
We build this into your books. Starting with a month that costs you nothing.
We set books up in exactly this order — job costs split from overhead, every transaction coded to a job, subs tracked from the first payment, deposits and retainage on their own lines — then reconcile and close them every month.
- Every transaction categorized, accounts reconciled, the month closed
- Reviewed and signed by Darren Lim, US CPA — licence CPA.74253602
- The 24-Hour Guarantee: Your first month back in 24 hours, or the next month is free.
Every step you cannot tick is a number in your books that is not telling you the truth. One month set up and closed this way costs you three questions and read-only access. It is free, and it comes back in 24 hours.