The $18,000 remodel that looked profitable and wasn't

Say you bill an $18,000 bathroom remodel. Materials run $6,400, the tile sub gets $3,200, your own labor costs $4,900, and permits plus the dumpster come to $700. That's $15,200 in job cost and $2,800 of gross profit — 15.6%. Thin, but alive.

Then you find $1,100 of fuel and blade blowouts sitting in a catch-all "job supplies" account with no job attached. Real profit: $1,700. That's 9.4%. A bad construction bookkeeping software setup is what let that happen — the file recorded the money and told you nothing about the job.

Below is how I set these files up, in the order I do it, and where small trade shops get burned.

What a construction bookkeeping software setup actually includes

Installing QuickBooks Online isn't setup. Setup is five decisions, and you make all five before you enter a single transaction.

1. A chart of accounts built around job cost

Five direct-cost accounts, not fifty: Labor, Materials, Subcontractors, Equipment & Rental, Other Job Costs. Everything else — office rent, insurance, truck payments, your salary — lives below the gross profit line in overhead.

That single split is what produces a gross margin you can trust. If liability insurance is mixed into job cost, every job looks worse in a slow month and better in a busy one, for no reason connected to the work.

2. Cost codes you'll actually use

Pick 15 to 25. A roofer needs tear-off, decking, underlayment, shingles, metal, flashing, dumpster, permits, and warranty callbacks. An excavation shop needs mobilization, clear and grub, cut and fill, haul-off, rock, utilities, compaction, and restoration.

I've seen shops import a 300-code CSI list. Within two months the crews code everything to "General" and the data is worthless. Fewer codes, used consistently, beat a perfect list nobody follows.

3. An items or service list mapped to those codes

This is the piece most contractors skip, and it's the one that makes the file run itself. Every service item you invoice and every purchase item you buy points at both an income account and a cost code. The field enters "shingle install," the software puts the dollars in the right two places.

4. Every job as a job — with a contract value

Customers are customers; jobs are sub-records under them. One customer, three addresses, three jobs. Enter the contract amount and your estimated cost by code when you open the job, not later. Without those two numbers, WIP and percentage-of-completion reporting is impossible, and you're back to guessing on draws.

5. Vendor records that survive January

Every sub gets a W-9 before their first check, a vendor record with the legal name and TIN, and the 1099 tracking box checked. For tax year 2026 the Form 1099-NEC reporting threshold is $2,000, and the forms have to be furnished to the payee and filed with the IRS by January 31. If you're filing on paper, Form 1096 goes with them.

Chasing a W-9 in January from a framer who worked for you in March is the worst hour of the year. Get it at the start.

QuickBooks Online or something heavier?

My position: if you're under roughly $3 million in revenue and running fewer than ten jobs at a time, QuickBooks Online Plus with disciplined job tracking is the right call. It costs a fraction of construction-specific ERP, every bookkeeper alive knows it, and it handles job-level profit and loss fine when the items list is built properly.

Where it genuinely runs out of room: multi-tier retainage on public work, unit-price billing with hundreds of line items, and AIA G702/G703 pay applications. If that's your world, you need a construction-specific platform and you'll pay for it. Don't buy that complexity to run six residential remodels a year.

Class or location tracking handles crews and divisions — service versus new construction, for example. Use it instead of running two company files. Two files means two bank reconciliations and a year-end merge nobody wants to do.

Pick a start date and don't move it

Start the file on the first day of a quarter or a fiscal year. Mid-month starts mean split reconciliations and a month of numbers that mean nothing.

Then enter opening balances: bank and credit card balances as of that date, open customer invoices, unpaid vendor bills, loan balances, and fixed assets with accumulated depreciation carried over. Skip the fixed assets and your depreciation schedule drifts from your books — Publication 946 covers how the property is depreciated, but only if someone recorded it in the first place.

If your prior year is a mess, fix history separately from the new setup. That's catch-up bookkeeping, and trying to do it inside a fresh implementation is how a two-week setup turns into four months.

Retainage, deposits, and change orders need their own homes

Three accounts most contractors never create, and all three distort profit when they're missing:

  • Retainage receivable. A 10% hold on a $120,000 contract is $12,000 sitting in an asset account, not lost revenue. If it's buried in AR, you can't tell what's held from what's late.
  • Customer deposits. A signed contract with 30% down is a liability until you perform. Booking it as income inflates a month and then flattens the next.
  • Change orders as separate line items on the job. Not edits to the original estimate. You need to see approved change order revenue against the change order cost, or you'll never learn that your $600 "while we're in there" additions cost $850 to build.

Bank feeds: rules, but not blind rules

Set rules for predictable vendors — insurance, phone, software subscriptions, fuel cards. Never auto-post supply-house charges. A $2,300 Ferguson invoice covering four jobs has to be split by a human, and a rule that dumps it into Materials with no job attached is exactly how the $1,100 in the opening example went missing.

Bank and credit card reconciliation happens monthly, every month. An unreconciled file is a rumor, not a book.

Get a price on getting it built right

A clean setup takes a week or two of real work: accounts, codes, items, jobs, vendors, opening balances, then a test month you check line by line. Most contractors can do it. Few have the evenings.

If you'd rather it be built once, correctly, and kept current after that — submit a pricing request and tell us your trade, your revenue, and what software you're on now. You can also subscribe to our newsletter if you just want the contractor accounting notes as they come out.