Job Costing Template for Specialty Trade Subcontractors (Free Google Sheets)
TLDR
A job costing template tracks labor, materials, equipment, and subcontractor costs against your original estimate for every active job. The goal is a real-time budget vs. actual view — not a post-job reconciliation. A well-built Google Sheets template covers cost codes, WIP calculation, and cost-to-complete — enough for subs with under 10 active jobs. Once you're running 15+ jobs simultaneously, the manual entry cost exceeds what job costing software costs.
- cost code
- A numbered category (e.g., 03-100 = concrete labor, 16-200 = electrical materials) used to organize costs by work type. Cost codes let you compare estimated vs. actual costs at the phase level, not just the job level.
DEFINITION
- WIP calculation
- Work-in-progress calculation: percent complete times contract value, compared to billings to date. Used to identify over-billing (you've billed more than you've earned) or under-billing (you've earned more than you've billed). Required for bonding and construction lending.
DEFINITION
- cost-to-complete
- The remaining budget on a job: total estimated cost minus actual cost incurred to date. When cost-to-complete plus costs already incurred exceeds the contract value, the job is trending to a loss.
DEFINITION
- budget variance
- The difference between estimated and actual cost at any cost code or job level. Negative variance means actual costs exceeded the estimate — over budget.
DEFINITION
“We ran the Google Sheets template for three years. At 18 active jobs, my office manager was spending 12 hours a month maintaining it. That's when the math finally made sense to switch.”
“Five tabs. Job list, cost entry log, budget vs. actual, WIP schedule, cost-to-complete. Build those right and everything else is detail.”
What the template needs to do vs. what bookkeeping does
Bookkeeping records that money moved. Job costing tracks where it went and whether that was the plan.
Your QuickBooks file shows that you paid $8,400 to an electrical supplier on March 3. A job costing system shows that $6,100 of that went to Job #2241 (Northside Medical, rough-in phase, materials cost code) against an estimate of $5,800 — and that job is now $300 over on materials with two phases left.
That’s a different kind of information. QuickBooks gives you the transaction. Job costing gives you the context to act on it.
A job costing template in Google Sheets can bridge this gap if you’re willing to enter costs manually or copy them from QuickBooks exports. The limitation is that manual entry takes time and introduces errors. At low job volume — under 10 active jobs — the manual overhead is manageable. Past that, it becomes a problem.
The 5 tabs your job costing spreadsheet needs
Tab 1: Job list. One row per job. Columns: job number, job name, contract value, estimated cost, estimated margin, start date, percent complete (manually entered), revised cost-to-complete, projected final cost, projected final margin. This tab is your dashboard.
Tab 2: Cost entry log. Every cost entered here: date, job number, cost code, cost type (labor, material, equipment, sub), vendor/employee, amount. This is the raw ledger that feeds every other tab. Enter costs here once; every other tab pulls from it.
Tab 3: Budget vs. actual by cost code. One row per cost code per job. Columns: estimated cost, actual cost to date (summed from the entry log), variance, percent of budget used. Filter by job to see a single job’s cost performance. This tab answers: where are we running over?
Tab 4: WIP schedule. One row per job. Columns: contract value, estimated cost, percent complete, earned value (contract value times percent complete), billings to date (pulled from your invoicing records), over/under-billing (billings minus earned value). Your bonding agent and bank want this report. Build it once and keep it updated.
Tab 5: Cost-to-complete summary. One row per job. Columns: estimated cost, actual cost to date, cost-to-complete (estimated minus actual), revised estimated cost (from PM input), revised variance, projected final margin. This tab answers: how will each job finish?
Five tabs. No more, no less. Additional tabs for subcontractor logs, change order tracking, or labor hour detail are useful but only after these five are working cleanly.
Where the spreadsheet breaks down — and when to switch
The spreadsheet has three failure modes.
The first is data entry volume. At 15+ active jobs with weekly cost entries across multiple cost codes per job, manual entry becomes several hours per week. That time has a cost. At 20 jobs, the person maintaining the spreadsheet is essentially doing a job that job costing software automates.
The second is WIP complexity. When your bonding company starts asking for a formal WIP schedule with over/under-billing columns that tie to your financial statements, a spreadsheet WIP that doesn’t reconcile to your books creates problems. Bonding agents and construction lenders want numbers that agree with your CPA’s reports. Getting there manually requires reconciliation time that compounds every month.
The third is multi-user access. Google Sheets handles concurrent editing poorly when multiple people are entering costs simultaneously. Someone overwrites someone else’s entry; the version history becomes your audit trail. That works until it doesn’t.
None of these are reasons to switch on day one. They’re reasons to watch the threshold. When your office manager is spending more than 6-8 hours per month on spreadsheet maintenance, run the numbers: job costing software at $20/month is cheaper than that time, and it gets more accurate as you add jobs, not less.
Like what you're reading?
Try MarginLock free for 14 days and take control of your job costs.
Q&A
What should a job costing template include?
A complete job costing template needs: (1) a job list tab with contract value, estimated cost, and percent complete for each active job; (2) a cost entry tab where labor, materials, equipment, and sub costs are logged by job and cost code; (3) a budget vs. actual tab that compares estimated cost by cost code to actual costs entered to...
Q&A
When should a subcontractor switch from a spreadsheet to job costing software?
Two thresholds matter. The first is job count: around 10-15 active jobs, the manual entry volume becomes a part-time job in itself. The second is WIP complexity: if your bonding company, bank, or CPA is asking for a formal WIP schedule and your spreadsheet produces numbers that require significant manual cleanup to present, you've passed the point where the tool...
Want to learn more?
- Zero implementation fees
- Unlimited users
- Starts at $20/month
No credit card required.
What is the difference between job costing and bookkeeping?
Can you do job costing in QuickBooks?
How do you calculate cost-to-complete on a job?
Ready to stop losing money on jobs?
Start Your 14-Day Free TrialGo deeper
How to Estimate Construction Jobs: A Guide for Specialty Subs
A practical estimating guide for specialty trade subcontractors. How to build a complete estimate from takeoff through margin, calculate labor burden correctly, and hand the estimate off to job costing.
Construction WIP Report: What It Is and How to Build One
A plain-English guide to the construction work-in-progress (WIP) schedule. Learn what a WIP report is, how to calculate percent complete and over/under-billings, and why your bonding company requires it.
Best Construction Job Costing Software for Subcontractors in 2026
We compared 5 construction job costing software tools for specialty trade subcontractors. Here's which ones track costs accurately, which are overpriced for the sub market, and which ones to skip.