FREE REPORT · TOP BUILDER OS

The True Job Profit Report

Which of last month's jobs actually made you money — worked out in one evening, with the books you already have. By Cory Salisbury, construction bookkeeper & fractional CFO, developer of Top Builder OS. Every method here works on paper, in a spreadsheet, or in QuickBooks — no software required. One page about us at the end; that's the whole trade.

The problem in one sentence

Your P&L can say "profitable month" while one job quietly loses thousands — because a P&L averages your whole month, and averages are where bad jobs hide. The fix isn't more reports. It's asking one sharper question, per job: what did this job truly cost?

"Truly" is the hard part. Six costs routinely go missing in small-crew books. Here they are, with the math.

Leak #1 — The $28/hour tech who really costs $36.74

Wages are not what labor costs. Every hour carries burden: employer payroll taxes, workers' comp (which in the trades is enormous), unemployment insurance, and benefits. The math for a $28/hr HVAC installer in a typical class:

ComponentRate$/hour
Base wage$28.00
Employer FICA7.65% of wages$2.14
Workers' comp (HVAC class)$8.50 per $100 wages$2.38
Unemployment (FUTA/SUTA)~0.6–1.5%$0.22
True cost per straight-time hour$32.74
…and each overtime hour (1.5×)burden applies to ALL wages$49.11

Roofing classes run $15–25+ per $100 of wages — the burden can approach half the wage again. If your job costing uses $28 for this hour, every labor-heavy job looks more profitable than it is, and your labor-light jobs are quietly subsidizing them. Do this tonight: compute your own crew's burdened rates with the table above (your WC rate is on your policy's declarations page), then re-cost last month's biggest job.

Leak #2 — Unbilled insurance depreciation

On insurance restoration work, the carrier holds back recoverable depreciation until you invoice for it after completion. The rule the veterans repeat: if you do not invoice for the depreciation, you do not get it — the carrier keeps it. On a $20,000 claim with $4,000 recoverable, skipping that invoice is a silent 20% haircut that never shows as a "loss" anywhere. It just never arrives. Do this tonight: list every completed insurance job from the last 12 months; check each one for a depreciation invoice. This is the single fastest cash recovery in this report.

Leak #3 — Personal spend hiding in job costs

The business card swipes at Costco. Was it shop supplies or groceries? If it lands in job costs or the P&L, two bad things happen: the job looks worse than it was, and your books overstate expenses (an audit magnet). The bookkeeping-correct answer: personal spend posts to owner draws (or a due-from-owner account for corporations) — never an expense, never a job cost — while still reconciling against the bank. Do this tonight: scan last month's card charges; tag anything personal; ask your bookkeeper to reclass to draws.

Leak #4 — Materials that never hit an invoice

The extra bundle grabbed on a second supply run. The service part from the truck. On flat-rate work it's margin erosion; on T&M it's pure unbilled revenue. Industry reviewers consistently flag unbilled materials as a five-figure annual leak for small shops. Do this tonight: pull last month's supplier statements and match every line to a job. Anything you can't match either belongs on a job (recost it) or on the shelf (count it).

Leak #5 — The subscription stack

Real quote from a contractor forum: "$1,300–1,500 a month with a 2-man show." A field app per-tech fee, QuickBooks, a proposal tool, a review tool, GPS per vehicle — each renewal creeping annually. That's $15,000–18,000/yr of pure overhead before the first shingle. Do this tonight: list every software charge on last month's statement, with seats. The number usually surprises the owner who "doesn't pay much for software."

Leak #6 — AR that ages while you look away

An invoice at 60 days isn't just late — statistically its collectability decays every week, and meanwhile you're floating the materials and payroll behind it. Two-party insurance checks make this brutal ("floating sometimes as much as 10s of thousands"). Do this tonight: list every open invoice with its age. Anything past 30 days gets a friendly, specific reminder tomorrow morning — the polite nudge collects far more than the angry one at 90.

The worked example — Desert Aire Mechanical

Desert Aire Mechanical is our fictional 9-person HVAC demo company (owner, office manager, estimator, 4 installers, 2 service techs). Fictional so we can show you every line without violating anyone's privacy — the math is exactly what the leaks above produce on a real change-out.

Delgado job — 3-ton AC change-out + return airAmount
Contract (customer approved the "Better" option)$8,535.00
Equipment package (condenser, coil, lineset)−$4,320.00
Install labor, 20 crew-hours at burdened cost−$700.50
True gross profit$3,514.50  (41.2%)
Same job costed at bare wages ($600) — the flattering lie"$3,615.00 (42.4%)"

One job, one leak, 1.6 points of phantom margin. Across a year of jobs and all six leaks, shops routinely discover five figures of profit that existed only on paper. The point of the exercise isn't despair — it's that every one of these numbers is controllable once you can see it.

The worksheet — your last three jobs, one evening

For each job: contract price, then subtract materials (from supplier statements, leak #4 checked), burdened labor (hours × your leak-#1 rate), subs, and permits. Then answer the two questions at the bottom.

Job 1Job 2Job 3
Contract / collected
Materials (all of them)
Labor hours × burdened rate
Subs + permits + equipment rental
True gross profit ($ and %)

Question 1: which job's true margin surprised you most, and which leak explains the gap? Question 2: if you'd known this number the week the job closed — not months later — what would you have changed about the next bid?

That second question is the whole game. The leaks aren't a math problem; they're a timing problem. Books that answer in real time change how you bid, staff, and collect. Books that answer at tax time just tell you what already went wrong.

The one page about us

We built Top Builder OS because this worksheet shouldn't be homework — it should be what your system does all day. It's the whole back office for a 1–10 person crew: booking, dispatch, good-better-best estimates, invoicing — and underneath, real double-entry books that replace QuickBooks, where every hour posts at its burdened cost automatically, personal spend gets flagged before it pollutes a job, depreciation invoices nudge you at completion, and "which job made money" is a screen, not an evening.

Eight helpers do the paperwork; money never moves without your yes; every figure is computed by tested code, never guessed by an AI. $349/mo for your whole crew up to 10 people, or $499/mo up to 25 — flat, no per-seat charge, everything included, month-to-month, one-click export forever, 30-day money-back guarantee. Founding shops work directly with the developer.

Join the Founding Crew at topbuilderai.com · or call/text the developer: (385) 374-9295