Quoted vs actual job costing means tracking what you said a job would cost against what it really cost, while the job is still running. It's the difference between catching a £1,200 overrun in week two — when you can still act — and discovering it in the accounts three months later, when the money is long gone.
If you run a trades or services business, you've probably lived the bad version. The job felt busy. The invoice went out. Then your accountant told you the margin wasn't what you thought. This post explains how quoted vs actual costing works, why it matters more for small firms than big ones, and how to set it up without adding hours of admin to your week.
What "Quoted vs Actual" Actually Means
Every job has two sets of numbers:
- Quoted — what you charged the customer, and what you expected the work to cost you when you priced it
- Actual — what you really spent on materials, labour, fuel, subcontractors and everything else
The gap between them is where your profit lives. Or doesn't.
| Quoted | Actual | Variance | |
|---|---|---|---|
| Revenue | £8,400 | £8,400 | — |
| Materials | £2,100 | £2,850 | −£750 |
| Labour (46 hrs) | £1,380 | £1,840 | −£460 |
| Subcontractor | £900 | £900 | — |
| Fuel & runs | £180 | £310 | −£130 |
| Profit | £3,840 | £2,500 | −£1,340 |
This job didn't lose money. But it made £1,340 less than the quote promised — and if the same pattern repeats across ten jobs, that's £13,400 a year quietly evaporating.
Why Month-End Is Too Late
Most small businesses track costs in one of two places: the bookkeeper's head, or a spreadsheet updated "when things calm down". Both share the same flaw — the numbers arrive after the decisions.
By the time month-end accounts show a job over budget:
- The materials are bought and fitted
- The labour is logged and paid
- The only remaining move is an awkward conversation about a variation — or absorbing the loss
Compare that with seeing the overrun in week two. At that point you can still:
- Raise a variation with the customer for the extra scope
- Source cheaper materials for the remaining work
- Re-plan labour so the rest of the job runs leaner
- Price the next similar job properly — the most valuable outcome of all
Margin drift is only fixable in real time. After the fact, it's just history.
The Five Numbers That Matter on Every Job
You don't need a finance dashboard. On any live job, five numbers tell you nearly everything:
- Quoted revenue — the accepted quote total (ex-VAT)
- Estimated cost — what you expected to spend when you quoted
- Actual cost — what you've spent so far, updated as costs land
- Projected profit — quoted revenue minus actual cost
- Margin % — profit as a percentage of revenue
The habit that makes this work is simple: log costs as they happen, not in batches. A receipt photographed at the merchant takes ten seconds. The same receipt found in a glovebox three weeks later takes ten minutes — and often doesn't get logged at all.
Where the Money Actually Leaks
When firms first start tracking quoted vs actual properly, the overruns cluster in predictable places:
- Unlogged labour. The 90 minutes of van time, the Saturday morning "quick fix". If it isn't logged against the job, your labour estimate for the next quote is fiction.
- Supplier runs. Three trips to the merchant at £18 of fuel each — none of it quoted, all of it real.
- Small scope creep. "While you're here, could you just…" — five free extras at 20 minutes each is most of a day's margin.
- Optimistic labour estimates. Quoting 30 hours because that's how long it should take, not how long it does take. Your actuals from past jobs are the only honest source.
- Subcontractor drift. The subbie who was "on the quote at £600" and invoices £750.
None of these are catastrophes on their own. Together, across a year, they're the difference between a good year and a frustrating one.
How to Set It Up Without Drowning in Admin
The system only works if logging costs is easier than not logging them. Three rules:
1. Quote with costs attached. When you build a quote, put your estimated cost against each line — not just the price. That's your baseline for comparison later. (If you use a system that shows projected margin before you send, even better — you'll catch a bad quote before the customer does.)
2. Log costs against the job, by category. Materials, labour, fuel, subcontractors, supplier runs, and a category for the genuinely unexpected. Keep the categories short — six or seven, not sixty.
3. Convert accepted quotes into jobs automatically. The quoted figures should copy across so the comparison is apples-to-apples. If someone re-types the numbers, errors creep in and trust in the data dies.
Making It Work in SME System
This is the exact loop SME System is built around. You build a quote with estimated cost per line and see the projected profit and margin before you send it. When the customer accepts, one click converts it to a job — quoted figures copied across, job number generated (JOB-2026-0001 style). As the job runs, you log costs by category and hours against the clock, and the actuals roll up automatically. The reports page shows quoted vs actual, margin per job, and flags every job running over budget — sorted by how much trouble it's in.
If you want to see what your own numbers look like, start with the free job costing template — it works standalone and shows you exactly what the system tracks. And if you want the live version, start a free trial and convert your next accepted quote into a job.
