The excavator burns $180 an hour and your books don't know it
You bid a pad and utility trench at $46,000. Three weeks later the check clears and you feel fine about it. Then the fuel card statement lands, the hydraulic hose you replaced on the 336 shows up on a parts invoice, and the trucking company bills you for six loads of export you thought were four. Nobody stole anything. The job just quietly gave back $9,000, and you found out sixty days late — which is what excavation contractor bookkeeping looks like when the costs land in the ledger long after the dirt is moved.
That gap between what the dirt cost and what your books say it cost is the whole reason excavation contractor bookkeeping is a different animal from bookkeeping for a shop that installs cabinets. Your two biggest cost drivers — iron and hauling — don't show up on a timesheet.
Why excavation bookkeeping breaks the standard trade playbook
Most trades have labor and materials. You have labor, materials, subs, and a fleet that eats money whether it's digging or sitting on a trailer.
Here's what has to be tracked at the job level, not just the company level:
- Equipment hours by machine, by job. Not "fuel expense." Hours on the meter tied to a job number.
- Trucking and haul-off — loads, tipping fees, and whether you or the GC eats the overage.
- Import material — select fill, base, sand — priced per ton, delivered, and reconciled against the ticket count.
- Rental iron with the delivery and pickup charges baked in.
- Site labor split between machine operators, pipe crew, and grade checkers, because their burdened rates aren't the same.
- Mobilization — lowboy in, lowboy out. Two moves on a small job can eat your whole margin.
If your P&L has one line called "Equipment" and one called "Subcontractors," you have a tax return, not a management report.
Give every machine a cost code and charge the job
This is the single highest-return change most site work outfits can make, and it takes an afternoon to set up.
Pick an internal hourly rate for each machine that covers payment, insurance, fuel, and a reserve for undercarriage, tires, and major service. Say your mid-size excavator costs $2,400/month in payments, $400 in insurance, and you budget $1,200/month for wear parts and service. That's $4,000 fixed. Run it 100 billable hours in a month and you're at $40/hour before a drop of diesel. Add $35/hour in fuel and you're charging the job $75/hour internally.
Now when that machine sits 40 hours on a job, the job report shows $3,000 of equipment cost — not a blank space and a shrug. Your bid on the next pad has a number behind it instead of a feeling.
The tradeoff people argue about: some contractors say internal equipment rates are "fake money" moving between buckets. I disagree, and here's why. Without them, every job you run with owned iron looks more profitable than it is, and every job you rent for looks worse. You'll end up bidding against yourself and never knowing which crew configuration actually makes money. Charge the job. Reconcile the equipment account at year end and see whether your rate was high or low, then adjust it.
Ticket discipline is the whole game
Haul tickets and scale tickets are the receipts for the largest variable cost on most site jobs, and they live in truck cabs, glove boxes, and text messages.
Set one rule: a ticket without a job number on it doesn't get paid. Photograph it the day it's written. Suppose you're importing 600 tons of select fill at $19/ton delivered — that's $11,400. If the supplier bills you for 640 tons and your tickets say 600, you just caught $760. That happens more often than anyone admits, and it only gets caught if someone matches tickets to invoices before the check goes out.
Same discipline for haul-off. Loads out, tipping fees, and standby time. Standby is where trucking bills go sideways — a broker sits three hours because the GC wasn't ready, and unless it's documented against the job with a note about who caused the delay, you can't back-charge it and you can't defend it.
Where retainage and progress billing bite site work
You're typically first on site, which means you're substantially complete in month two on a job that closes in month ten. Your 10% retainage sits there for eight months while you've already paid every hauler and every operator.
Book retainage as its own receivable account, not buried in AR. On a $46,000 job with 10% held, that's $4,600 you should be able to see, age, and chase on a schedule. Contractors who lump it in with regular AR routinely write off retainage they never invoiced for at closeout. That's real money.
Watch the timing mismatch, too. If you bill $180,000 in a month and your costs on those jobs were $126,000, your gross profit reads 30% — but only if the costs actually landed in that month. Trucking invoices that arrive three weeks late will make one month look great and the next look terrible. Accrue them. This is exactly what disciplined monthly bookkeeping is for: closing the month with the costs sitting where they belong.
The 1099 problem for owner-operators
Site work runs on owner-operator truckers and small dirt subs, and that means a stack of Form 1099-NEC every January. For tax years beginning after 2025, the nonemployee compensation reporting threshold is $2,000 — so for 2026, a hauler you paid $2,400 gets a form.
You must furnish the payee statement by January 31 and file with the IRS by January 31. One hauler you can't find a W-9 for in late January is a scramble. Twelve of them is a week you don't have. Collect the W-9 before the first check, not after the last one.
If those payments were coded to "Trucking" as a lump expense with no vendor detail, you'll be rebuilding the year from bank statements. That is the most preventable fire in this trade.
What to fix this week
Three moves, in order: assign machine numbers and internal hourly rates; require a job number on every haul and scale ticket; pull retainage out of AR into its own account. Do those and your job reports start telling the truth within a month.
If you want the setup done right — job costing, WIP, and books that show equipment cost by machine — submit a pricing request and tell us how many machines and crews you run. Or call and leave a message.
Prefer to read first? Our newsletter sends practical construction accounting notes for site work and trade contractors.