Average Subcontractor Cost per Job Counts Only Invoiced Work
Why this matters
The dangerous moment with this figure is not the quarterly review, it is the middle of a live job. Somebody pulls up what the job has cost so far, sees a healthy margin, and on the strength of it agrees to absorb a small extra, discounts the final bill, or prices the next one of these the same way. The number they read was missing every subcontractor who had not billed yet, and on a multi-trade job that is usually most of the subcontractor cost, because the big scope bills last. The figure is not wrong. It describes settled work, accurately, and settled work is not the same as the work you are standing in.
The denominator is invoiced assignments, and neither word is "job"
Two things in the name are not true of the arithmetic.
It is an average over ASSIGNMENTS, not over jobs. Each subcontractor placed on a job is one row. A job with three subcontractors contributes three rows, not one. So a shop that brokers whole jobs across several trades will show a low average per subcontractor engaged, and a shop that buys one trade occasionally will show a high one, on identical total spend. Before you compare your figure to anything, including your own from two years ago, check how many assignments per job you are running now against then.
It is an average over INVOICED assignments only. An assignment with no invoice against it is not a zero in the average, it is absent from the average. That is the same exclusion that flatters every completed-cases-only figure in a shop's records - the still-open ones are missing and the still-open ones are the difficult ones - and the card named in the references works that claim through in general. What is specific here is which rows go missing, and why they go missing in a pattern rather than at random.
The two kinds of row that never arrive
The invoice that has not come yet. Ordinary and temporary. The subcontractor is mid-scope, or finished last week and bills monthly, or is waiting on their own supplier. The row fills in eventually and the average corrects itself. This one is a lag.
The flat rate that was agreed and never raised as an invoice. A rate settled by handshake or on a one-line agreement, paid off a statement or just paid, with no document that ever becomes a cost row. Where you pay an unincorporated person or firm 600 dollars or more for services in a calendar year in the course of your business, that payment generally needs a Form 1099-NEC and therefore a signed W-9 collected BEFORE you pay rather than chased in January, so the missing paperwork is a filing problem before it is ever a costing problem.
This one is a hole, not a lag, and it does not correct itself. It is common on the exact work small shops sub most: a half-day of an extra pair of hands, a same-trade crew brought in for a peak week, a neighbouring trade who returns the favour next month. Two of those three carry more than a costing problem. An individual paid a day rate to work your job under your direction is the fact pattern that gets reclassified as an employee, which reaches payroll tax, unemployment and workers compensation, and in most states an uninsured subcontractor is treated as your employee for comp purposes. A swapped favour is barter, taxable to both sides at fair market value under 26 U.S.C. 61. Where your records show either shape, that is a question for your accountant and your insurance agent, and the classification test is federal and state law both, with several states applying a stricter ABC test than the federal one.
On a shop that works this way the average can describe a minority of the subcontracted work and read as authoritative.
The tell between them is age. An assignment sitting past the maturation lag you measured for your spend figure - the companion card sets how to measure it - with no invoice behind it is not waiting, it is missing.
The worked job, costed twice
Index subcontractor cost in units, where 1.0 unit is roughly what one day of one subcontracted worker costs the shop. The job's price and the shop's own direct cost are on the same index.
A multi-trade job. Price 45.0 units. The shop's own direct cost - its crew, parts and travel - 14.0 units. Three subcontractor assignments:
| Assignment | Agreed | Invoiced | When |
|---|---|---|---|
| First trade | 4.0 | 4.0 | Week 2 |
| Second trade | 6.0 | 6.5 | Week 6, after a scope change |
| Third trade, flat rate | 9.0 | 9.0 | Week 10 |
The office costs the job in week 3. Only the first trade has billed, so the job's subcontractor cost reads 4.0 units. Total cost reads 14.0 plus 4.0, or 18.0 units. Margin reads 45.0 less 18.0 over 45.0, which is 27.0 over 45.0, or 60.0 percent.
The same job at settlement. Subcontractor cost is 4.0 plus 6.5 plus 9.0, or 19.5 units. Total cost is 14.0 plus 19.5, or 33.5 units. Margin is 45.0 less 33.5 over 45.0, which is 11.5 over 45.0, or 25.6 percent.
The week-3 read showed 4.0 of an eventual 19.5 units of subcontractor cost, which is 20.5 percent of it, and put the job's margin 34.4 percentage points of its own price above where it landed. Same job, same price, two moments, one of which was used to make a decision.
That is the failure mode in one line: a 60 percent margin invites a concession, and a 25.6 percent margin does not. Nothing in the figure warns you which one you are looking at, because an assignment with no invoice and an assignment that cost nothing look identical from the outside.
The exclusion runs one way, and it is not random
Take the whole window rather than the one job. The shop made 30 subcontractor assignments. Twenty-two have been invoiced; 8 have not.
- The 22 invoiced assignments total 55.0 units, so the published average is 2.5 units per invoiced assignment.
- The 8 uninvoiced assignments carry agreed amounts totalling 36.0 units, an average of 4.5 units each.
- Across all 30, the total is 55.0 plus 36.0, or 91.0 units, an average of 3.03 units per assignment.
So the excluded rows average 1.8 times the included ones, since 4.5 over 2.5 is 1.8, and the published average sits at 82.5 percent of the all-assignments average, since 2.5 over 3.03 is 0.825. Turn that round and the figure you should be planning against is about 1.2 times the one you are reading.
The direction is structural rather than a run of bad luck. Long scope bills at completion or on milestones; short scope bills the week it happens. So at any moment the uninvoiced pile is biased toward the big jobs, and every month you look, the missing rows are larger than the present ones. A shop that corrects for this by adding a flat allowance will undercorrect in a quarter heavy on projects and overcorrect in a quarter of service work, which is why the fix below is a second figure rather than a fudge factor.
Record the rate at assignment
The first habit closes most of the gap and costs nothing at the time.
When a subcontractor is put on a job, the agreed amount goes on the assignment then: the quoted figure, the day rate times the expected days, or the not-to-exceed number if that is all you have. Not when the invoice arrives. So do the three things that are cheapest to get at that same moment and nearly impossible afterwards: a current certificate of insurance showing general liability and workers compensation, a signed W-9, and the trade licence where your state requires one.
Three things follow from recording the number at the moment of assignment:
- The job carries a cost the moment the commitment exists, which is the moment it becomes real to the shop, not the moment the paperwork catches up.
- A flat-rate arrangement that never produces an invoice still lands in the records, which is the only thing that closes the permanent hole described above.
- The invoice, when it comes, becomes a comparison rather than a first sighting. The second trade above agreed 6.0 and billed 6.5, and that 0.5-unit difference is a conversation worth having on the day it appears, not a number absorbed silently into a margin nobody questions.
The objection is that an agreed figure is not a real figure. It is not - and an estimate you can check against an invoice beats a blank you cannot check against anything.
The open-commitment figure that sits beside it
The second habit is a separate number, deliberately not blended into the first: open commitment, the sum of agreed amounts on assignments with no invoice yet. Invoiced cost and open commitment are reported side by side, and the two added together are the job's subcontractor exposure.
Three of the window's open jobs, read on the same day:
| Job | Assignments, invoiced / open | Invoiced to date | Open commitment | Exposure |
|---|---|---|---|---|
| The worked job, week 3 | 3, as 1 / 2 | 4.0 | 15.0 | 19.0 |
| A single-trade service call, closed | 1, as 1 / 0 | 2.0 | 0.0 | 2.0 |
| A retrofit, week 8 | 4, as 2 / 2 | 12.0 | 7.5 | 19.5 |
| Totals | 8, as 4 / 4 | 18.0 | 22.5 | 40.5 |
Those three jobs hold 4 of the window's 8 uninvoiced assignments and 22.5 of its 36.0 units of open commitment, and their invoiced rows run well above the window's 2.5-unit average because they are among its larger jobs.
Read on invoices alone, these three jobs have consumed 18.0 units of subcontracted work. Read on exposure, 40.5 units. The invoiced figure is 44.4 percent of what the shop has actually committed, since 18.0 over 40.5 is 0.444.
Now re-cost the worked job with it. Exposure at week 3 is 4.0 invoiced plus 15.0 open, or 19.0 units, against an eventual 19.5 - 97.4 percent of the truth, against the 20.5 percent the invoiced-only read gave. Margin at week 3 on exposure is 45.0 less 33.0 over 45.0, which is 12.0 over 45.0, or 26.7 percent, against the 25.6 percent it settled at. Off by 1.1 points of the job's price instead of 34.4.
The residual 0.5 units is the second trade's scope change, and it is worth naming as a different problem with a different fix. No commitment figure can see a change nobody has agreed yet. That one belongs to change control, not to reporting.
One maintenance rule keeps the commitment figure honest: an assignment past your measured maturation lag with no invoice gets chased or closed out, because a stale commitment inflates exposure exactly as an absent one deflates cost.
Checking yours
- Count the assignments in the window, then count the invoiced ones. Write both down. The difference is the size of the blind spot, and it is the first thing to establish before anyone quotes the average.
- Take the three oldest assignments with no invoice and ask whether the subcontractor has finished. Finished and unbilled is a chase. Unfinished is a genuine open commitment. The two need opposite handling and today they look identical on the page.
- Open one flat-rate assignment and check whether the agreed amount is recorded anywhere a report can read, or only in the agreement. If it is only in the agreement, that job's cost is wrong until somebody types it across.
- Re-cost one job you closed last quarter using only what had been invoiced at the moment somebody last quoted its margin, and set that against the settled figure. The gap on a real job of your own is the number worth carrying into the next mid-job conversation.
References
- See related: Time to Invoice Only Counts the Invoices You Sent - the owner of the completed-cases-only claim this card leans on
- See related: Subcontractor Spend Is Anchored to When the Job Was Created - where the maturation lag is measured
- See related: What a Subcontractor Agreement Must Spell Out - fixing the invoicing terms that create the lag
- See related: Cost per Job, and What Is Actually Inside It - the rest of a job's direct cost
- See related: Subcontractor Utilisation and the Capacity Question Behind It