Construction bookkeeping codes every cost to a job, earns revenue by percent complete, bills with retainage and proves it on a monthly WIP report

Construction & Job-Costing Bookkeeping for US Contractors

Last verified: 2026-08-03

A contractor can be profitable on paper and still have no idea which job paid for it. Construction bookkeeping closes that gap by measuring money one job at a time instead of one month at a time. Each cost is tagged to a project and a cost code, revenue is booked as the work gets done, invoices go out as progress billings with a slice held back as retainage, and a monthly work-in-progress (WIP) report keeps the numbers honest. Set up this way, the books show the profit on every job while there is still time to protect it.

This article sets out how construction and job-costing bookkeeping works for US contractors, from cost codes through certified payroll to the WIP report.

The demand behind this niche is real. US construction spending ran at a seasonally adjusted annual rate of $2.21 trillion in May 2026, per the Census Bureau, and the sector employed more than 8.3 million people at the start of the year.

Most of those firms are small and have no in-house accountant. That gap is why construction pays well for a remote bookkeeper. The work is specialized, and standard month-based books simply do not fit it.


The short version: number every job, code every cost to a job and a cost code, recognize revenue by percentage of completion, bill each month against a schedule of values, park retainage in its own account, and close the month with a WIP schedule that flags overbilling and underbilling.



Construction bookkeeping vs regular bookkeeping

Construction bookkeeping differs from regular bookkeeping because the thing being measured is the job, not the calendar month. A shop only has to answer one question at close: did the business make money this month? A contractor has to answer it once for every job that is open.

In a normal small business file, all income and expenses roll into a single profit and loss statement for the period. That is fine when the company does the same work in the same place month after month.

A contractor’s costs are spread across job sites, and every job carries its own price and its own budget. A single company-wide P&L can keep a losing job hidden behind two winners for months. By the time the loss reaches the bank balance, the money is already spent.

Five traits force the change in approach. Every job needs its own small P&L. Jobs stretch across months or years, so revenue has to be recognized before completion. Billing runs on progress invoices, with 5% to 10% held back as retainage. Crews move between sites, cities and sometimes states, which complicates payroll. And a large share of the work runs through subcontractors, each with their own paperwork.

None of this throws out standard double-entry bookkeeping. The account list still uses the ordinary structure covered in our guide to the US chart of accounts. Construction just layers a job dimension on top, so every transaction carries two tags at once: an account and a job.

How does job costing work in construction?

Job costing works by tagging every cost to a job, a phase and a cost code, so each project shows its own costs and its own margin. The rule is simple: if a dollar leaves the business for a job, that dollar has to land on that job in the books.

Direct costs fall into four types. Labor is the crew’s time, charged at the full cost of employing them. Materials are the things built into the project, from concrete to light fixtures. Subcontractor costs are the bills from electricians, plumbers and other trades. Equipment is owned machinery charged to the job by the hour or day, or rentals billed straight to it.

Cost codes give those costs a shared structure. Bigger contractors use CSI MasterFormat, the industry standard that sorts construction work into 50 divisions, such as Division 03 for concrete and Division 26 for electrical. A small contractor does not need all 50. A tailored list of 20 to 40 codes that matches how the contractor estimates is plenty, as long as the same list is used on every job.

A single coded transaction looks like this. A lumber yard bills $2,840 for framing material delivered to the office fit-out, job 2026-014.

Field Entry
Vendor Ridgeline Lumber Supply
Amount $2,840.00
Account Job costs: materials
Job 2026-014 Office fit-out
Cost code 06-100 Rough carpentry
Cost type Materials

In QuickBooks Online, that is the Customer/Project field plus a Products and Services item mapped to the cost code. The tool matters less than the habit behind it: no job, no posting.

Advertisement

Labor takes one more step, called labor burden. A carpenter’s cost to the job is not the wage alone. It is the wage plus employer payroll taxes, workers compensation and benefits.

A typical build-up runs like this. Start with a base wage of $25.00 an hour. Employer FICA at 7.65% adds $1.91. Federal and state unemployment taxes add about $0.75. Workers compensation at $6.50 per $100 of payroll adds $1.63. Health cover and paid time off spread to $4.20 an hour. The burdened rate is $33.49, roughly 34% over the wage.

Charge the job $25 and every labor hour looks cheaper than it is. A job that seems to run a 20% margin might really be running 8%.

Overhead is the final piece. Rent, insurance, office salaries and the owner’s truck do not belong to any single job. Either spread them across jobs as a percentage of direct labor, or keep them below the job-cost line and judge each job on gross profit. Both are valid. Pick one, write it down, and apply it the same way every month.

How one invoice lands on a job
Every cost carries four tags: job, phase, cost code, cost type
1
The cost arrives
A lumber supplier invoices $2,840 for framing material delivered to the site. On a generic file this would post to one expense account and disappear into the month.
Ridgeline Lumber Supply  ·  $2,840.00  ·  framing material
2
Tag the job
The invoice is assigned to job 2026-014, the office fit-out. In QuickBooks Online this is the Customer/Project field. Without this tag the job report can never be right.
No job, no posting
3
Tag the cost code and cost type
The cost lands on code 06-100 Rough carpentry as a Materials cost. Codes come from CSI MasterFormat’s 50 divisions or a shorter custom list that mirrors how the contractor estimates.
Job 2026-014  ·  Code 06-100 Rough carpentry  ·  Type Materials
4
The job report updates
Job 2026-014 now shows $2,840 more in materials, against the estimate for that code. Actual versus estimated cost per code is the report the contractor actually reads.
Job P&L, not just company P&L
Labor follows the same path with one extra step: it is costed at the burdened rate, not the wage. A $25.00 per hour carpenter costs the job $33.49 once employer taxes, workers compensation and benefits are added.
SkillArbitrage

Which accounting method should a contractor use?

The method a contractor should use turns on contract length and company size, and the honest answer is often two methods at once: one for the tax return, another for the financial statements.

Four methods are in play. Cash basis records income when the money arrives and costs when they are paid. Accrual records both when earned and incurred. The completed contract method (CCM) holds all revenue and cost on a contract until the job is finished. The percentage of completion method (PCM) books revenue steadily as the work progresses.

For tax, the base rule lives in section 460 of the Internal Revenue Code. A long-term contract, meaning any contract not finished in the year it began, generally has to use PCM.

Small contractors get a way out. A contract escapes required PCM when the contractor expects to finish it inside two years and the business passes the gross receipts test: average annual gross receipts of $32 million or less across the three prior years, per Revenue Procedure 2025-32 for tax years beginning in 2026. The 2025 figure was $31 million. Home construction contracts are exempt from required PCM at any size.

So most small contractors file their taxes on cash, accrual or CCM. The books are another story. Any contractor who needs bonding, a bank line or a true monthly margin needs PCM-style reporting, because it is the only method that shows profit while the job is still running. Under US GAAP, ASC 606 lands on a similar over-time result for most construction contracts.

PCM comes down to one formula. Percent complete equals cost incurred to date divided by total estimated cost. Revenue earned equals percent complete times the contract price.

Run job 2026-014 through it: contract $500,000, estimated cost $400,000. Costs to date are $100,000, so the job is 25% complete. Earned revenue is $125,000, and gross profit to date is $25,000. Next month, the same formula runs again on fresh numbers.

The formula is only as reliable as the cost estimate. Move the estimate and both percent complete and profit move with it, which is exactly why the estimate gets a fresh look at every close. The tax-side detail of cash and accrual sits in our guide to accrual and cash-basis accounting.

How do progress billing and retainage work?

Progress billing works by invoicing the client each month for the portion of the contract finished so far, and retainage is the part of each invoice the client keeps back until the job is done.

The engine behind progress billing is a schedule of values. It splits the contract price into line items, say $40,000 for site work and $85,000 for framing, all agreed before work starts. Every monthly invoice states the percent complete on each line.

On commercial jobs the invoice usually follows the AIA format: form G702, the application and certificate for payment, with the G703 continuation sheet holding the line detail. The bookkeeper prepares it, the architect certifies it, and payment follows the contract terms.

Retainage typically runs 5% to 10% of each billing, held until completion or a set milestone. On federal jobs, FAR 52.232-5 lets the contracting officer hold back up to 10% of a progress payment, and only when satisfactory progress is not being made. The money is earned. It just cannot be collected yet.

Here is the running example in figures. Job 2026-014 bills $50,000 of finished work for June with 10% retainage. The invoice reads $50,000 completed, $5,000 withheld, $45,000 due now.

The entry: debit accounts receivable $45,000, debit retainage receivable $5,000, credit progress billings $50,000. Retainage lives in its own account, not inside ordinary receivables. Blend the two and the AR aging report shows cash as collectible that will not land for months.

The same rule runs the other way. Retainage the contractor holds back from subcontractors is booked as retainage payable, kept separate from accounts payable.

How a job gets billed follows the contract type. A lump sum contract bills against the schedule of values. A cost-plus contract bills actual cost plus a fee, which means the client can audit the job cost records. Time and materials bills labor hours and materials at agreed rates. Unit price bills quantities, such as dollars per cubic yard. iPleaders sets out the legal side of these structures in its guide to the different types of construction contracts.

The progress billing cycle
From schedule of values to retainage release, on a $500,000 contract
1
Agree the schedule of values
The $500,000 contract price is broken into line items before work starts, such as $40,000 for site work and $85,000 for framing. Every future invoice bills against these lines.
2
Submit the monthly pay application
Each month the contractor applies for payment on the work completed, usually on AIA form G702 with the G703 continuation sheet. The architect certifies it before payment.
June application: work completed $50,000
3
Retainage is withheld
The client holds back 5% to 10% of each billing until completion. On federal jobs, FAR 52.232-5 caps retainage at 10% and ties it to unsatisfactory progress. The money is earned, just not collectible yet.
Dr Accounts receivable 45,000  ·  Dr Retainage receivable 5,000  ·  Cr Progress billings 50,000
Retainage sits in its own account, never inside AR
4
Payment lands
The $45,000 arrives on the contract’s payment terms. The AR aging stays honest because the $5,000 of retainage was never in it.
5
Retainage is released
At completion, or a defined milestone, the accumulated retainage is billed and collected. On a $500,000 job at 10%, that final release is $50,000 of cash flow.
The same cycle runs downward: retainage the contractor withholds from subcontractors is booked as retainage payable, separate from accounts payable, and released when their work is accepted.
SkillArbitrage

WIP reports, overbilling and underbilling

A work-in-progress report lines up what each job has earned against what has been billed on it, one row per open job. It is the report that makes construction books believable, and the one sureties and lenders ask for by name.

Each WIP row holds seven numbers: contract value, estimated total cost, cost to date, percent complete, earned revenue, billed to date, and the gap between earned and billed.

Here is job 2026-014 at the halfway mark.

WIP column Amount
Contract value $500,000
Estimated total cost $400,000
Cost to date $200,000
Percent complete 50%
Earned revenue $250,000
Billed to date $280,000
Overbilled $30,000

Billing $280,000 against $250,000 earned means the job is overbilled by $30,000. That amount sits on the balance sheet as a liability, billings in excess of costs and estimated earnings. The cash is in the account, but $30,000 of it is for work still to be done.

Flip the billing to $220,000 and the job is underbilled by $30,000 instead. That is an asset, costs in excess of billings, and a warning sign. Either the billing has fallen behind, or costs are outrunning the estimate and the margin is quietly eroding.

A little overbilling is healthy, because it lets the client’s money fund the work. Steady underbilling is the classic early tell of a job going wrong. So is profit fade, where a job booked at a 20% margin reports 17%, then 14%, as estimated costs climb at each close.

The WIP schedule doubles as the month-end adjusting entry. The gap between earned revenue and billings runs through the over- and underbilling accounts, which is what converts raw billings into GAAP-style revenue.

Run it every month, not only at year end. A bonding company reviewing a contractor usually wants the WIP schedule with each financial statement, and a stale estimate makes every figure on it wrong.

Overbilled or underbilled?
Same job, same 50% complete, two very different balance sheets
Job 2026-014  ·  contract $500,000  ·  estimated cost $400,000  ·  cost to date $200,000  ·  earned revenue $250,000
Billed $280,000: overbilled
Earned revenue$250,000
Billed to date$280,000
Overbilled by$30,000
Balance sheetLiability
Billings in excess of costs and estimated earnings. The cash is in the bank, but $30,000 of it belongs to work not yet done. Mild overbilling is healthy: the client’s money funds the work.
Billed $220,000: underbilled
Earned revenue$250,000
Billed to date$220,000
Underbilled by$30,000
Balance sheetAsset
Costs in excess of billings. Either the billing is behind, or costs are running ahead of the estimate and the margin is shrinking. Persistent underbilling is the classic early sign of a job in trouble.
The WIP schedule runs this comparison for every open job at each month end. Sureties and lenders read it line by line, and the earned-versus-billed difference is also the month-end adjusting entry that turns raw billings into GAAP-style revenue.
SkillArbitrage

Payroll and compliance in construction bookkeeping

Payroll and compliance in construction bookkeeping cover four tasks that barely appear on a standard small business file: certified payroll, prevailing wages, workers compensation audits and the subcontractor paper trail.

Certified payroll comes first. Under the Davis-Bacon Act, contractors on federal or federally assisted construction contracts over $2,000 must pay locally prevailing wages and fringe benefits. Each week they file a certified payroll report, usually on Department of Labor Form WH-347, listing every worker, classification, hours and pay. The DOL issued a revised WH-347 in January 2025, so make sure the current form is in use.

Many states run their own prevailing wage laws on top, often called little Davis-Bacon acts. A bookkeeper on a public-works contractor’s file prepares these reports every week, and mistakes carry real penalties, including withheld contract payments.

Workers compensation is the second layer. Premiums are set per $100 of payroll by class code, and the rates vary widely: clerical staff cost a fraction of what roofers do. Insurers audit payroll once a year. Clean job-costed payroll records, with hours split by class and state, are what stop the audit from turning into a surprise bill.

Subcontractors bring the third layer. Before the first payment, collect a Form W-9 and a certificate of insurance. Without that insurance certificate, the sub’s payroll can be pulled into the contractor’s own workers comp audit. Alongside payments, track lien waivers, the documents in which subs give up mechanics lien rights as they get paid.

Then come the 1099s. Payments to unincorporated subcontractors are reported on Form 1099-NEC. For payments made in 2026 the reporting threshold is $2,000, raised from $600 by the One Big Beautiful Bill Act for payments after 31 December 2025, per the IRS. A general contractor can file dozens of them in a season. The deadlines and mechanics are covered in our 1099 filing season guide.

How can you learn construction bookkeeping from India?

You can learn construction bookkeeping from India using the same tools US contractors use, because the work is remote by design. The software runs in the cloud, the source documents are digital, and the deliverables are reports.

Start with the software. QuickBooks Online handles small-contractor job costing through its Projects feature, and QuickBooks Desktop is still common in construction offices. Above that sit construction-specific tools such as Buildertrend and Knowify, which run estimates and pay applications, and Procore on the project management side. Learn QuickBooks first. The rest follow the same logic.

Then practice the core artifacts on an invented job. Set up a project like 2026-014, code 20 or 30 transactions to cost codes, run the PCM formula, and build a one-row WIP schedule in a spreadsheet. Draft a G702-style progress invoice with retainage. Those four pieces become the interview portfolio.

The pay tracks the specialization. Virtual bookkeeping services usually charge a flat $300 to $1,500 a month per small business client, per QuickBooks’ 2026 pricing data, while total monthly bookkeeping costs run from about $300 for software-led service to $4,200 for a full-time US hire. Construction files sit at the top of that outsourced range and beyond, because job costing, pay applications and WIP work are specialist tasks most generalists cannot handle. How to set and quote those fees is covered in our guide to pricing bookkeeping services for US clients.

The best first clients are trade subcontractors: electricians, plumbers, painters and remodelers with 5 to 30 employees. They are large enough to need job costing and too small to keep a controller on staff. General contractors with bonding requirements come next, once the WIP work is routine.

Before signing a US client, put the engagement in writing: scope, fees, data access and liability. LawSikho’s guide to the consultancy and professional services agreement covers what that contract should hold.

For the wider career path, including how to find those clients in the first place, see our guide on starting a US bookkeeping career from India.

Frequently asked questions

What is job costing in construction bookkeeping?

Job costing is recording every cost against the specific job it belongs to, split by cost code and cost type. It turns one company-wide P&L into a profit report per project, so the contractor can see which jobs actually make money.

What is the percentage of completion formula?

Percent complete equals cost incurred to date divided by total estimated cost. Earned revenue equals percent complete multiplied by the contract price. A job with $100,000 spent against a $400,000 estimate is 25% complete, so a $500,000 contract has earned $125,000.

How is retainage recorded in the books?

Retainage held back by a client is a debit to retainage receivable, kept separate from accounts receivable, because it is earned but not yet collectible. Retainage the contractor withholds from subcontractors is credited to retainage payable, separate from accounts payable.

What are AIA forms G702 and G703?

G702 is the application and certificate for payment used on many US commercial construction jobs, and G703 is its continuation sheet listing each schedule-of-values line. Together they document percent complete, retainage withheld and the amount due for the period.

What does overbilled mean on a WIP report?

Overbilled means the job has billed more than it has earned under percentage of completion. The excess is a liability, billings in excess of costs and estimated earnings, because part of the cash received is for work not yet performed.

Do small contractors have to use the percentage of completion method for tax?

Not usually. A contract is exempt from required PCM under section 460 if the contractor expects to finish it within two years and average annual gross receipts for the prior three years are $32 million or less for tax years beginning in 2026. Home construction contracts are exempt regardless of size.

What is certified payroll?

Certified payroll is the weekly wage report required on federal and federally assisted construction contracts over $2,000 under the Davis-Bacon Act. It is usually filed on Form WH-347 and lists each worker’s classification, hours, pay rate and fringe benefits.

Do contractors send 1099s to subcontractors?

Yes. Payments to unincorporated subcontractors are reported on Form 1099-NEC, and for payments made in 2026 the threshold is $2,000 per contractor per year, raised from $600. Corporations are generally exempt from receiving one.

Which software do US contractors use for job costing?

Small contractors mostly use QuickBooks Online with Projects or QuickBooks Desktop. Construction-specific tools such as Buildertrend, Knowify and Procore sit on top for estimating, pay applications and project management, while larger firms use systems like Sage and Foundation.

How much do construction bookkeepers charge?

Outsourced bookkeeping for a US small business typically costs a flat $300 to $1,500 a month, per QuickBooks’ 2026 data. Construction files price at the top of that range and beyond, because job costing, retainage tracking and WIP reporting are specialist work.

References

This article is for general information and training purposes. It is not tax, accounting or legal advice for any specific business. Confirm current thresholds, state prevailing wage rules and contract terms before applying any of it to a client file.

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *