Wauvel
Finance 101

Unit economics for a contractor: what one job really keeps

← All posts
By Blake EkelundJuly 26, 2026 · 11 min read

We've taken apart a D2C order, a SaaS subscription, a billable hour, and one restaurant cover. A contractor borrows a piece of each: it marks up materials like the D2C brand, it sells its crew's time like the services firm, and it lives on throughput against a fixed office nut like the restaurant. Which is why the most common feeling in the trades is the one that makes no sense on paper — we're busy, the jobs are profitable, and the account is still tight. Part five is about where the money on a job actually goes, and the two places it quietly leaks out.

The trap is that a contractor can see a fat margin and not have it. You marked the parts up 40%, you bill $150 an hour for labor that costs you $40 — the job looks like a winner the moment you write the estimate. Then the truck, the callbacks, the office, and the field hours that never reached an invoice each take a bite, and the winner turns out to keep a fraction of what the markup promised. Three rungs show you where it goes.

What is the "unit" in a contracting business?

For D2C it was one order; for SaaS, one customer; for a services firm, one billable hour; for a restaurant, one cover. For a contractor, the smallest repeating thing you sell is one job— one completed ticket, service call, or project. Not one hour (a trade bundles parts and labor, so the hour alone hides the markup) and not one month (that's the whole P&L). Every question about whether the business works is a story you can tell about a single job: what you charged, what it truly cost to put a crew and materials on it, and what survived the office behind it.

And the number you're chasing isn't the markup on the parts, or the spread between your bill rate and the wage — the two figures owners quote proudly. Those are the first rung. The honest measure is what a job contributesafter every variable cost it drags along, and then what survives the fixed overhead standing behind the whole crew. That's the atom of the business.

The job that keeps less than the markup suggests

Let's run one job all the way down. Our example is an HVAC / plumbing service shop with an average ticket of $650 — a typical repair or install call. Parts run 25% of the ticket, and the job takes 2.5 field hours. That much every owner can rattle off. The line that surprises them is what those field hours actually cost — not the $40 loaded wage, but more, for a reason we'll get to in a second.

One job · margin waterfall
Building one jobAmountRunning total
Average job price$650.00$650.00
− Materials & parts (25%)-$162.50$487.50
− Field labor (2.5 hrs, loaded)-$153.85$333.65
= Gross profit (J1)$333.6551%
− Truck, permits, callbacks (12%)-$78.00$255.65
= Contribution (J2)$255.6539%
− Office overhead per job-$161.54$94.12
= Net per job (J3)$94.1214%
The same $650 ticket, top to bottom, for a shop running 260 jobs a month against $42k of fixed overhead. It starts with a healthy-looking gross and lands at about $94 of net — roughly 14% of the ticket. Note the two lines that flatten it: field labor (bigger than the parts, once you count the hours that don't bill), and the office nut every job has to carry.

A ticket that looked like it was mostly profit keeps about $94 once every cost has had its say — real money, and a genuinely healthy job, but a long way from what the parts markup and the bill rate implied. The two lines that did the damage are the field labor, larger than the materials, and the $161 of office overheadeach job had to carry. That labor line is the one worth stopping on, because it's where most trades quietly lose money.

The field hour that never reaches the invoice

Here's the line that sinks more trades P&Ls than any other. You pay a tech a loaded $40 an hour— wage plus payroll taxes, insurance, and benefits. But a tech paid for eight hours doesn't bill eight hours. Drive time between calls, loading and restocking the truck, warranty callbacks, and estimates that never close all eat the day. If only about 65%of paid hours actually land on a customer's invoice — a normal number in the field — then the honest cost of a billedhour isn't $40. It's the whole day's wage spread over the hours that paid for themselves:

What a billed hour really costs
The utilization mathAmount
Loaded cost per paid hour$40.00
Utilization (billed ÷ paid)65%
= True cost per billed hour$61.54
The tech costs the same whether the hour reaches a customer or the highway. Spread the loaded wage over only the hours that bill, and the true cost of a billable field hour is half again the wage — the single most-missed number in the trades.

That's why the waterfall charged 2.5 × $61.54 = $153.85 for labor, not 2.5 × $40 = $100. The $54 gap is the unbilled part of the day, and it doesn't disappear just because you didn't invoice it — it comes straight out of the job. It's the exact lever that decides a services firm, wearing a tool belt: a person costs the same whether they bill half the week or all of it, so every point of utilization you claw back drops almost straight to the bottom line.

J1, J2, J3: the contractor ladder

D2C operators count in CM1/CM2/CM3, SaaS in L1/L2/L3, services in R1/R2/R3, restaurants in C1/C2/C3. A contractor climbs the same three steps — gross, then contribution, then net. Call the rungs J1, J2, J3, J for job.

  • J1 — gross profit. Price minus the direct cost of doing the job: materials, any subcontractors, and the loaded field labor. $650 − $162.50 − $153.85 = $333.65. The "we marked up the parts and billed the hours" number — necessary, flattering, and nowhere near the whole story.
  • J2 — contribution. J1 minus the other costs a job drags along whether you invoice them or not: truck and fuel, permits and disposal, a reserve for warranty callbacks, financing or sales commission. $333.65 − $78 = $255.65. The cash the job actually throws off toward the office.
  • J3 — net per job. J2 minus the fixed office overhead spread across the jobs you run. $255.65 − $161.54 ≈ $94.12. The real profit on a job — about 14% of the ticket, which is a good service trade.

J1 · gross / job

$333.65

51% — after materials & labor

J2 · contribution / job

$255.65

39% — after truck & callbacks

J3 · net / job

$94.12

14% — what's really yours

Read left to right and the shop works. At 260 jobs a month— a four-tech crew running a couple of calls a day — that's about $169,000 of revenue dropping roughly $24,000to the bottom line. But notice how you'd never see that $94 by looking at the estimate: you bill $650 ÷ 2.5 = $260 a field hour and keep about $38 of it. The gap between those two numbers is the entire reason busy contractors get blindsided.

Build your own job

Your shop isn't this one. A remodeler bills a $28,000 project but subs half of it out and floats the rest until the draw lands; an electrician runs cleaner tickets at higher utilization; a lawn-care route lives on a $70 stop where drive time between properties wrecks the day. Put in your real ticket, your materials and field-labor, the utilization your crew actually runs, and your monthly overhead, and watch the ladder — and the two reads that decide everything — resolve:

Try it with your numbers

The job

The field labor

Throughput & the office nut

$333.65

J1 · gross / job

after materials, subs & field labor

51% of price

$255.65

J2 · contribution / job

after the truck, permits & callbacks

39% of price

$94.12

J3 · net / job

after office overhead — yours

14% of price

Break-even jobs / month

164

you run 260 — the profit is the last 96

Direct job cost

49%

materials + subs + labor · you bill $260/field-hr, it costs $62

Prefer a spreadsheet? Open the free Unit Economics calculator to run all five business models side by side and download a branded, formula-driven Excel of your own job.

Two knobs move everything. Drag utilization from 65% down toward 55% and watch net per job fall while nothing about the job itself changed — that's the unbilled part of the day getting heavier. Then drop jobs a month and watch the office overhead per job climb, because the same nut is now split across fewer tickets. Labor efficiency and throughput are the two levers, and both hide from the estimate.

The two reads a contractor lives by

The first is your version of a restaurant's prime cost: direct job cost % — materials plus subs plus field labor as a share of the price. Ours is ($162.50 + $153.85) ÷ $650 ≈ 49%, which leaves daylight for the overhead and a profit. Let it drift toward 60%+ — through slipping utilization, material inflation you didn't reprice, or underbid labor — and there simply isn't room, no matter how many jobs you run. The second is break-even jobs: divide the fixed monthly overhead by the contribution per job — $42,000 ÷ $255.65 ≈ 164 jobs a month. You run 260. So 164 of every 260 jobs exist only to keep the office lights on; the profit is the last 96.

Direct job cost

49%

materials + labor — under the ~55% line

Break-even

164jobs / mo

of 260 you run — the rest just pays overhead

Margin of safety

37%

how far your month sits above break-even

A 37% margin of safety is more room than a restaurant ever gets — the trades aren't a knife-edge on profit the way hospitality is. Their knife-edge is somewhere else entirely, and it's the reason a shop with all of these numbers pointing the right way can still run out of cash.

The cash gap: why a profitable job can still sink you

Here's the cost a box or a subscription never carries. On the $650 service call, the timing is forgiving — you buy the part, do the work, and collect the same day. But scale up to the remodeler's $28,000 project and the timing turns lethal: you buy the materials and pay the subs in weeks one and two, and the customer pays you on a draw schedule, on completion, or net-30 — weeks later. Every growing job pulls cash outbefore it puts any back, so the busier you get, the more cash the growth consumes. That's the trades' version of being profitable but broke: the P&L says you made money and the bank account says you're drowning, because your cash is buried in work-in-progress you haven't billed and receivables you haven't collected. It's the front half of your cash conversion cycle, and managing it — deposits, progress billing, disciplined working capital — is as much of the job as the estimate is.

Four levers that move the job

When J3 is thin or break-even sits too close to a slow month, there are only a handful of places to push — and the one owners reach for first (mark the parts up harder) is rarely the biggest.

  • Buy back billable hours first. Utilization is the highest-leverage number you have because every point you recover drops almost straight to net. Tighter routing to cut windshield time, a stocked truck so techs aren't running to the supply house, and killing the callbacks that make you do a job twice — each turns paid hours you're already buying into billed ones.
  • Price the labor, not just the parts. Most trades over-mark materials and under-price labor, which is backwards — the labor line is bigger and it's the one that carries your true cost per billed hour. Make sure the bill rate covers the utilized cost of an hour with a real margin on top, not the wage.
  • Then defend contribution — the quiet costs.Warranty callbacks, disposal, and fuel don't show up on the estimate but they're real; a small reserve for them per job keeps J2 honest, and cutting the callback rate lifts it directly.
  • Right-size the office, and bill faster. Overhead per job only shrinks two ways — more jobs over the same nut, or a leaner nut. And on bigger work, the cash gap is a lever too: deposits and progress billing turn a job you were financing for the customer into one that funds itself.
The hard part, as always, isn't the formula — it's that your materials are buried in supply-house invoices, your labor in a payroll export, your utilization nowhere at all, and your true cost per billed hour is a number you've probably never once seen. That's the work Wauveldoes: it reads your actual QuickBooks and tells you what a job keeps and how close break-even really sits, while there's still a month left to move it. That closes the series — five business shapes, one discipline. Start back at the beginning with what one D2C order really earns, or see why a busy crew and a thin bank account so often add up to profitable but broke.

See what a report like this looks like on your own numbers.

Meet your AI CFO →

Keep reading

Finance 101July 24, 2026 · 10 min read

Unit economics for a restaurant: what one cover really earns

A restaurant is every other business at once — physical COGS like a product, perishable capacity like a services firm, and thin margins riding on a heavy fixed nut. Part four of the series: the unit is one cover, the ladder runs gross → contribution → net, prime cost is the number you live by, and break-even sits so close to a full house that turns decide everything.

Read it →
Finance 101July 24, 2026 · 10 min read

Unit economics for a services business: what one billable hour really earns

You bill $150 an hour and pay your people far less — so where does the money go? Part three of the series: the unit is one billable hour, the ladder runs realized rate → gross margin → net margin, utilization is the churn-sized lever nobody watches, and the one cost a box and a subscription never have to eat — the hour you couldn't sell.

Read it →
Finance 101July 21, 2026 · 10 min read

The month-end close for a D2C brand: a checklist that fits inventory

Every generic close checklist assumes a business with no inventory, no payment processors, and no channels — which is to say, not yours. Here's the month-end close built for a D2C/inventory brand: reconcile the cash, settle inventory to COGS, recognize revenue on the box, then review and report. Comes with an interactive checklist that remembers where you left off.

Read it →
Finance 101July 21, 2026 · 8 min read

Cash vs. accrual accounting: why one QuickBooks toggle changes your profit

The same month, the same business, two different profit numbers — and QuickBooks will show you either one at the click of a toggle. Here's what cash and accrual actually mean, why accrual tells you how the business is really doing, and which one to run yours on.

Read it →
Finance 101July 21, 2026 · 11 min read

Unit economics for a SaaS business: what one customer is worth

A subscription with an 82% gross margin can still keep you broke — because you pay to acquire the customer today and get it back a dollar a month. Part two of the series: the SaaS unit is a customer who renews, the L1/L2/L3 ladder from monthly margin to lifetime value, why CAC payback is the number that actually kills SaaS, and the one lever a shipped box will never have.

Read it →
Finance 101July 15, 2026 · 10 min read

Unit economics for a D2C brand: what one order really earns

Your P&L says whether last month made money. Unit economics say whether the next order will — the number that decides if scaling ad spend makes you richer or just busier. Part one of a series: the anatomy of a single D2C order, the CM1/CM2/CM3 layers operators live by, and why a 70%-margin brand can still lose money on order one.

Read it →
Finance 101July 14, 2026 · 9 min read

Why did revenue change? Price, volume, and mix explained

Revenue moved — but one number won't tell you whether you raised prices, sold more units, or shifted your mix toward pricier products. Here's the price/volume/mix bridge every CFO runs, worked through an example where revenue grew while units actually fell — the decomposition QuickBooks won't do for you.

Read it →
Finance 101July 13, 2026 · 9 min read

Budget vs. actual: reading a variance without drowning in it

A budget is only worth the moment you compare it to reality. Here's how to read a variance the way a CFO does — the sign trap that flips favorable and unfavorable, why the net number lies, flexing the budget to your actual volume, and which variances are worth your time at all.

Read it →
Finance 101July 7, 2026 · 9 min read

What's a healthy LTV:CAC ratio? (and how to find yours)

The number every founder spending on ads needs and the books won't give you: how much you can afford to pay for a customer. Here's how to calculate CAC and LTV honestly, what the 3:1 rule really means, why payback period bites harder than the ratio, and the ceiling you can bid to.

Read it →