← Back to Blog

The Job Costing Spreadsheet Every Contractor Needs (And How to Use It)

Learn how to track labor, materials, and subcontractor costs per job — so you always know your actual profit margin, not just your estimate.

The Job Costing Spreadsheet Every Contractor Needs (And How to Use It)

You bid the job at $12,000. You did the work. Now it's done — and if someone asked you right now whether you made money on it, you couldn't give a straight answer.

Labor ran a little long. The lumber came in higher than you quoted. Your sub threw on a change order you half-remember approving. You made probably fine and you move on to the next one.

That's not a business — that's hope with a work truck.

Most contractors are great at their trade and terrible at knowing which jobs actually paid off. Not because they're bad at math, but because they're not tracking anything. The estimate lives in their head. The actual costs scatter across receipts, texts, and memory. And by the time the job closes, the data is gone.

A job costing spreadsheet fixes that. Here's how it works — and why every contractor running even a two-person crew needs one.


Estimating vs. Job Costing: They're Not the Same Thing

Most contractors do estimating. You look at a job, price out materials, figure your labor hours, add a markup, and send a number. That's a before-the-job activity. It's a prediction.

Job costing is what happens during and after. It's the process of tracking what you actually spent on a job — and comparing it to what you said you'd spend.

Three terms matter here:

  • Budgeted cost — what you estimated before the job started
  • Actual cost — what you actually paid (labor, materials, subs, everything)
  • Variance — the gap between the two

Variance is the whole game. A positive variance (you spent less than budgeted) means you ran the job efficiently. A negative variance (you spent more) means something went sideways — and you need to know what so it doesn't happen on every job going forward.

Without a spreadsheet, you have no variance. You have vibes.


What a Proper Job Costing Spreadsheet Captures

A job costing spreadsheet isn't just a list of receipts. It needs to be structured so every cost category is tracked separately — so you can see exactly where the money went.

Labor This is usually where jobs bleed out. You need hours logged per worker or role, multiplied by their loaded hourly rate (wages + taxes + insurance, not just take-home). A good tracker separates labor by phase (demo, rough-in, finish) so you can see which part of the job ate the time.

Materials Quantity × unit cost, broken out by trade or phase. Not just "lumber: $1,200" — you want enough detail to know if the overage was framing lumber, trim, or fasteners. When you're building estimates for future jobs, this detail is your cost basis.

Subcontractors Contract amount vs. actual invoice. Subs are one of the most common sources of cost overruns because verbal change orders happen constantly. The spreadsheet needs a line for what you agreed to and a line for what they actually billed — with a notes column for why the two are different.

Equipment Either rental cost (actual invoice) or an owned-equipment allocation (a per-day or per-hour cost you assign to cover depreciation and maintenance). A lot of contractors skip this category entirely and wonder why their margins look fine but their equipment keeps breaking down with no money to fix it.

Permits and Misc Overhead Permit fees, inspection fees, dump fees, temporary utilities — these always exist and they always get forgotten. They're small individually but they add up across a season.

Overhead Allocation Your direct job costs don't include your truck payment, your insurance, your office time, your software subscriptions. A simple way to handle this: allocate overhead as a percentage of job revenue (many contractors use 10–15%). It's not perfect accounting, but it keeps your job-level numbers honest.


Key Metrics to Track Per Job

Once you're capturing the data, you can start measuring what actually matters.

Gross profit margin per job (Revenue − Direct Costs) ÷ Revenue × 100 This is your headline number. A 20%+ gross margin on a well-run job. Under 10% and something went wrong. Below zero and you paid to work.

Labor efficiency ratio Budgeted hours ÷ Actual hours A ratio above 1.0 means your crew ran faster than estimated. Below 1.0 means you gave away labor. If this number is consistently 0.80 or lower on a certain type of work, your labor estimates are wrong — and you're underpricing every similar job.

Materials variance % (Actual materials − Budgeted materials) ÷ Budgeted materials × 100 A 5–8% materials variance is normal — prices move, waste happens. Consistent 15–20%+ variance means your material takeoffs need work, or your subs are padding invoices.

Job profitability rank When you're running 4–6 jobs at once, you need a quick view of which ones are on track and which are in trouble. A simple ranking by current gross profit margin tells you where to focus your attention this week, not at final closeout when it's too late to do anything.


A Worked Example: $15,000 Bathroom Remodel

Let's make this concrete. You're doing a full bathroom remodel — demo, new plumbing rough-in, tile, vanity, fixtures. Contract price: $15,000.

Your estimate going in:

CategoryBudgeted
Labor$4,000
Materials$5,500
Tile setter (sub)$1,200
Overhead allocation$1,500
Total cost$12,200
Gross profit$2,800 (18.7%)

Decent margin. You'd take that job all day.

What actually happened:

The plumbing rough-in took longer than you planned — one of your guys ran into a corroded stack that needed replacing. Labor came in at $4,800 (20% over). Tile materials ran higher because the homeowner upgraded to a larger format tile mid-job: $5,900. And the tile setter had a day of extra work due to the floor being out of level — his invoice came in at $1,400.

CategoryBudgetedActualVariance
Labor$4,000$4,800−$800
Materials$5,500$5,900−$400
Tile setter (sub)$1,200$1,400−$200
Overhead$1,500$1,500$0
Total cost$12,200$13,600−$1,400
Gross profit$2,800$1,400
Margin18.7%9.3%

You lost half your margin. $2,800 became $1,400 — same job, same revenue, same crew.

Here's what changes when you're tracking this in a spreadsheet: you see the labor overrun by day 3, not at final invoice. At that point you can have a conversation with the homeowner about the corroded stack as a change order. You can push back on the tile setter's overage or negotiate it down. You can decide whether to absorb the materials variance or flag it.

A spreadsheet doesn't prevent overruns. It gives you the information early enough to act on them.


Why Spreadsheets Beat Napkin Math and Memory

You already know the answer here. But here are a few reasons that go beyond "it's more organized":

Audit trail for disputes and warranty claims. If a homeowner comes back six months later claiming you used cheap materials, you have line-item records with vendor names, quantities, and dates. That's the difference between a $3,000 argument and a five-minute conversation.

Your own historical cost basis. After two seasons of job costing, you don't need to guess labor hours for a bathroom remodel — you know what your crew actually takes. Your estimates get tighter because they're built on your numbers, not industry averages that may have nothing to do with how you run a job.

Crew accountability. When a crew lead knows you're tracking labor hours against budget, the conversation about a job going long changes. It's not "everyone works hard" — it's "we budgeted 32 hours and we're at 28 with the rough-in done, we're on track." That's a different kind of crew.

Tax prep. Categorized job-level expense records mean your accountant isn't guessing what "Home Depot — $847" was for. Materials by job, subs by job, permits by job — everything is already sorted.


A Spreadsheet Built for This

If you want to build your own job costing tracker from scratch, everything above tells you what to include. It'll take you a few hours and you'll probably rebuild it twice before it works right.

If you'd rather start with something that's already done — the Contractor Job Costing Tracker from Gridsmith is an .xlsx file built specifically for small contractors and remodelers.

It has four tabs:

  • Dashboard — YTD KPIs (total revenue, total costs, gross margin %) and a 40-job summary table with profitability rankings at a glance
  • Job Cost Sheet — the main tracking tab, with separate sections for Labor, Materials, Subcontractors, Equipment, and Permits, plus auto-calculated variance columns
  • Time & Labor Log — date-by-date hours entry per worker or role, feeding into the Job Cost Sheet automatically
  • Materials & Subs Log — line-item receipt entry for materials and subcontractor invoices, with running totals by category

No formulas to build. No columns to add. Open it, enter your job details, and start tracking.


Stop Guessing Which Jobs Made Money

If you're running three jobs this month and someone asked you right now which one has the best margin — could you answer?

If not, that's the problem this spreadsheet solves.

Get the Contractor Job Costing Tracker — $15

One spreadsheet. Every job. No more "probably fine."

Mentioned in this post

Contractor Job Costing Tracker

Stop guessing and let a spreadsheet do the math for you. One afternoon of setup pays for itself on your next repricing.