← Blog
June 24, 2026 · 5 min read

Job costing 101: know your real margin on every job

Plenty of busy contractors are quietly losing money on jobs they think are winners. The culprit is almost always the same: they track what’s coming in, but not what each job actually costs. That’s what job costing fixes.

What job costing actually is

Job costing means assigning every dollar you spend — materials, labor, subs, mileage, equipment — to the specific job it belongs to, then comparing that running total against the job’s contract value. The gap is your margin to date.

The four numbers that matter

  • Revised contract — the original contract plus approved change orders.
  • Cost to date — everything spent on the job so far (materials + labor + subs + mileage).
  • Projected cost — the greater of your budget or what you’ve already spent.
  • Projected margin — revised contract minus projected cost, as a percentage.

Why “cost to date” beats gut feel

A job can look great on revenue and still bleed money if labor ran long or materials spiked. Watching cost-to-date against budget per cost code tells you which jobs are on track and which need attention — while you can still do something about it, not after the job closes.

Budget by cost code

Set a budget per CSI cost code (concrete, framing, electrical, etc.) and every expense you tag flows against it. When a code crosses 85% of budget, that’s your early-warning light.

From the field to the books

Good job costing starts in the field: crews log time and expenses to the right job from their phones, and it rolls up automatically. No spreadsheet reconciliation at month-end. ExpenseDesk Pro does exactly this — labor, mileage, and expenses feed each job’s true cost, and the Job Costing report shows contract-vs-cost and projected margin on every job at a glance.

Run your whole jobsite from your phone.

1 month free, then $50/month. Works with QuickBooks.

See pricing