Automation Solutions

Accurate Job Costing Starts With Better Quoting (Here's How to Close the Gap)

Aaron · · 8 min read

Most businesses can tell you what they quoted on a job. Far fewer can tell you what the job actually cost. And almost nobody routinely compares the two.

That gap — between what you quoted and what you spent — is where profit quietly disappears. Not in dramatic blowouts (though those happen too), but in the slow, invisible leak of $200 here, $500 there, across dozens of jobs per month. A business quoting $2M in work per year with a consistent 5% cost overrun is giving away $100,000 annually. Not to customers. Not to competitors. Just to poor information.

Accurate job costing isn’t about being a better estimator. It’s about building a feedback loop between your quotes and your actuals, so every job you complete makes the next quote more accurate.

The Quoting-to-Costing Disconnect

Here’s how it typically works in most trades and service businesses:

  1. An estimator puts together a quote based on experience, a pricing sheet, and a site visit
  2. The customer accepts
  3. The team does the work
  4. An invoice goes out (often matching the quoted amount)
  5. Nobody checks whether the actual labour, materials, and expenses matched the quote

The invoice gets paid. The job is “done.” But was it profitable? By how much? Where did the estimate differ from reality? These questions go unanswered — not because nobody cares, but because the data lives in different places and nobody has time to piece it together.

The quote is in a spreadsheet. The timesheets are in another system. The material purchases are in the accounting software. The subcontractor invoices are in email. Comparing these manually, for every job, takes time that nobody has.

Where Quotes Go Wrong

Quoting errors aren’t random. They follow patterns, and once you see the patterns, you can fix them. Here are the most common sources of cost overruns:

Labour underestimation. This is the big one. Estimators tend to quote based on how long a job should take in ideal conditions. But conditions are never ideal. Travel takes longer than expected. The site isn’t prepped. A complication arises mid-job. The apprentice is slower than the senior tech. On average, actual labour runs 15-25% higher than quoted labour across the businesses we work with.

Material waste and extras. You quote 50 metres of cable, but the actual run requires 58 metres once you account for the route, terminations, and spare. You need an extra fitting because the existing pipework wasn’t what you expected. These small additions are individually trivial — $20 here, $50 there — but they compound across every job.

Scope creep without requoting. The customer asks for “one small change” on site. Your tech does it because it’s easier than saying no. But that small change added 90 minutes of labour and $80 in materials that weren’t on the quote. Multiply that across 30 jobs a month.

Outdated pricing. Your quote uses material prices from three months ago. Your supplier has increased prices twice since then. Every quote built on old pricing is automatically under-costed.

Without Job Costing Feedback

  • Quotes based on gut feel and experience
  • Same estimation errors repeated job after job
  • No visibility on which job types are profitable
  • Margin surprises discovered at tax time
  • Pricing adjustments are reactive and slow

With Job Costing Feedback

  • Quotes informed by actual cost data from completed jobs
  • Systematic errors identified and corrected
  • Profitability visible by job type, team, and customer
  • Margin tracked in real time, job by job
  • Pricing adjustments are proactive and data-driven

Building a Feedback Loop

The goal is simple: after every job (or at least a representative sample), compare what you quoted to what you actually spent. Then use that comparison to improve your next quote.

Here’s a practical approach that doesn’t require software or a full-time analyst:

Step 1: Track Actuals at the Job Level

You need three numbers for every completed job:

  • Actual labour hours (not scheduled hours — actual hours on site plus travel)
  • Actual material cost (what you purchased for this job, including extras)
  • Actual subcontractor and other costs (hire, disposal, permits, anything else)

If you’re already tracking timesheets and purchase orders by job, you have this data. It’s just not being compared to anything.

Step 2: Compare to the Quote

For each completed job, calculate:

  • Labour variance: Actual hours minus quoted hours. Express it as a percentage. If you quoted 8 hours and it took 10, that’s a 25% overrun.
  • Material variance: Actual material cost minus quoted material cost.
  • Total margin variance: Actual total cost vs quoted total cost, and the resulting actual margin vs quoted margin.

Step 3: Look for Patterns

A single job’s variance doesn’t tell you much. But after 20 or 30 comparisons, patterns emerge:

  • “We consistently underquote labour on bathroom renovations by 20%”
  • “Material costs on commercial jobs run 8-12% over quote”
  • “Jobs quoted by [estimator A] come in on budget; jobs quoted by [estimator B] overrun by 15%”
  • “First-fix electrical is accurate; second-fix always blows out because of site coordination delays”

These patterns are gold. Each one is a specific, fixable problem — not a vague feeling that “margins are tight.”

Closing the Gap

Once you’ve identified where your quotes diverge from reality, the fixes are usually straightforward:

Adjust your standard times. If bathroom rough-ins consistently take 20% longer than quoted, update your labour estimate for bathroom rough-ins. Don’t just try harder to be faster — adjust the quote to match reality and price accordingly.

Add contingency where the data supports it. Not a blanket 10% on everything. A targeted 15% on labour for renovation work (where surprises are common) and 5% on new builds (where they’re not). Data-driven contingency is defensible. Across-the-board padding is just guessing.

Update material pricing more frequently. If you’re updating quarterly and seeing consistent overruns, switch to monthly updates. Better yet, build your quotes from a pricing sheet that’s connected to current supplier data.

Set rules for scope changes. If your techs are doing extra work on site without requoting, the problem isn’t their generosity — it’s the lack of a clear process. Define a threshold: any additional work over $200 or 1 hour requires a variation quote before proceeding. Most customers respect this. The ones who don’t are usually the ones eroding your margins.

The Spreadsheet Version

You can start this with a spreadsheet. Seriously. Create a tab with these columns:

Job #TypeQuoted LabourActual LabourLabour Var %Quoted MaterialsActual MaterialsMat Var %Quoted MarginActual Margin

Fill it in for every completed job. Review it monthly. After three months, you’ll have enough data to make meaningful adjustments to your quoting process.

This manual approach works for businesses doing 10-20 jobs per month. You’ll spend about 30 minutes per week on data entry and an hour per month on analysis. The return on that time — in improved margins — is typically enormous.

When Spreadsheets Stop Scaling

The manual feedback loop breaks down when:

  • Volume increases. At 40+ jobs per month, nobody has time to manually enter and compare costing data for every job.
  • Data lives in multiple systems. Your timesheets are in one place, purchase orders in another, subcontractor invoices in a third. Pulling it all together manually for each job becomes a half-day exercise.
  • You need real-time visibility. A monthly review is better than no review, but by the time you spot a problem, you’ve already quoted (and potentially underpriced) the next 20 similar jobs.
  • Multiple estimators need the same data. Sharing a spreadsheet with feedback data works for one person. For a team, you need a system that makes the right data available at the point of quoting.

That’s the point where a purpose-built system — one that connects your quoting data to your timesheets, purchases, and accounting — starts paying for itself. Not because it’s more sophisticated, but because it automates the comparison that nobody has time to do manually at scale.

The Bottom Line

Every business has margin leaks in its quoting. The question isn’t whether they exist — it’s whether you can see them. A feedback loop between quotes and actuals makes them visible. Once they’re visible, they’re fixable. And once they’re fixed, the same volume of work produces meaningfully more profit.

Start with a spreadsheet and your top five job types. Compare quoted to actual on every completed job for three months. The patterns will tell you exactly what to fix — and the fixes will pay for themselves many times over.

A

Aaron

Founder, Automation Solutions

Building custom software for businesses that have outgrown their spreadsheets and off-the-shelf tools.

Keep Reading

Ready to stop duct-taping your systems together?

We build custom software for growing businesses. Tell us what's slowing you down — we'll show you what's possible.