When Job Costs Go Over Budget: How to Analyze and Prevent Overruns
Learn why manufacturing job costs exceed budget and how to analyze overruns by cost category to protect margins and improve future pricing decisions.

A job that runs over budget is annoying. A job that runs over budget and nobody knows why is worse, because the next one will too.
This post is about the single job: how to break an overrun into its pieces, find the cause, and catch the next one while you can still do something about it. There's an illustrative job with the math worked out.
If you're trying to fix a pattern across many jobs in your quotes, that's covered in how to use job cost reports to sharpen bidding accuracy. This one is about the job in front of you.
Why are job cost overruns so costly for manufacturers?
Because the price is usually fixed. You quoted it, the customer accepted it, and every extra dollar of cost comes straight out of your margin.
The timing makes it worse. If you only see job costs after the month closes, the job is often already shipped. At that point the only thing left to do is learn from it.
And overruns usually hit cash before they hit the P&L. Extra hours are extra payroll. Extra material is an extra vendor bill. You pay those before you can invoice the job.
What causes most manufacturing cost overruns?
The causes I'd check first:
- Hours. Setup took longer than quoted, cycle time was optimistic, or the first-article inspection failed and had to be redone.
- Material usage. More scrap, worse nesting, or a remake.
- Material price. The quote used an old price and the purchase came in higher.
- Labor rate. Overtime, or a more senior person did the work than the quote assumed.
- Scope changes. The customer changed a dimension, a finish or a quantity, and nobody wrote a change order.
- Outside processing. The vendor raised its price or a part needed a second pass.
Overhead can also look like an overrun. If overhead is applied by hours, any hours overrun pulls overhead with it. That's correct, but the cause is the hours, not the overhead.
How do you analyze a job that went over budget?
Step 1: Put the budget and actual side by side
Line by line, not just the total. Material, labor, overhead, outside processing. Units as well as dollars: pounds, pieces, hours.
Step 2: Split each line into price and quantity
This is the step most people skip, and it's the most useful. For every line that's over, ask two questions. Did we pay more per unit? Did we use more units?
The formulas are simple. Price (or rate) variance = (actual price - budget price) x actual quantity. Quantity (or efficiency) variance = (actual quantity - budget quantity) x budget price. The two add up to the total overrun on that line.
Step 3: Find the root cause
Once you know which piece moved, ask why. "Labor efficiency was off" is not a cause. "The fixture didn't hold the part and we re-cut 30 pieces" is.
Ask the people who ran it, soon after it ships. A week later, nobody remembers.
Step 4: Put a dollar figure on it
Show what the job was supposed to earn and what it did earn. That's what gets attention and a decision.
Step 5: Log it and decide on one fix
Write a line in an overrun log: job, line, cause, dollars, fix. One fix per job is plenty. Review the log monthly. Patterns show up faster than you'd think.
A worked example of an overrun
Illustrative job, quoted at $10,000. Overhead is applied at $40 per direct labor hour.
| Line | Budget | Actual | Over |
|---|---|---|---|
| Aluminum | 600 lb x $3.00 = $1,800 | 660 lb x $3.25 = $2,145 | $345 |
| Direct labor | 80 hr x $30 = $2,400 | 96 hr x $31 = $2,976 | $576 |
| Applied overhead | 80 hr x $40 = $3,200 | 96 hr x $40 = $3,840 | $640 |
| Outside processing | $500 | $500 | $0 |
| Total cost | $7,900 | $9,461 | $1,561 |
| Gross profit | $2,100 (21.0%) | $539 (5.4%) |
Now split material and labor into price and quantity:
| Variance | Math | Amount |
|---|---|---|
| Material price | ($3.25 - $3.00) x 660 lb | $165 |
| Material quantity | (660 - 600) lb x $3.00 | $180 |
| Labor rate | ($31 - $30) x 96 hr | $96 |
| Labor efficiency | (96 - 80) hr x $30 | $480 |
| Overhead from extra hours | 16 hr x $40 | $640 |
| Total | $1,561 |
Look at where it actually came from. The 16 extra hours drove $480 of labor and $640 of overhead, $1,120 of the $1,561. Price increases on metal and labor were only $261.
So the fix is about hours. If the 60 extra pounds of material were the same remade parts, then hours and material share one cause, and that's where to look first. A purchasing conversation would have saved a lot less.
That's why splitting the variance matters. Looking only at the total, you might have blamed metal prices.
The glossary has short definitions of labor rate variance and efficiency variance, and our post on standard cost variances goes deeper.
How do you catch an overrun while the job is still open?
The analysis above is after the fact. The better habit is a quick check while the job is running.
The simplest version: compare hours used with how far along the job is. Ask the shop lead for a percent complete, then project the finish.
Illustrative example. Same job, 80 hours budgeted. At the midweek check, 52 hours are used and the lead says the job is about 60% done. 52 / 0.60 = about 87 hours projected at this pace. That's 7 hours over, and you still have 40% of the job left to act on.
What can you do with that? Check whether a setup problem is being repeated. Move the job to a better machine. Call the customer if the overrun is because they changed something. Or simply update the projected margin so nobody is surprised at month-end.
Percent complete from the floor is a judgment call, and people tend to be optimistic. I'd still take it over no check at all. Over time you'll learn whose estimates to trust.
How do you stop scope changes from becoming overruns?
A customer asks for a small change. The shop does it to be helpful. It happens three more times. None of it gets billed.
Write a simple change order rule. Any change to drawing, material, finish, quantity or date after the quote gets written down, priced and approved by the customer before the work is done. It can be a one-page form or an email.
Customers generally accept a change order when it's clear and quick. What they push back on is a surprise charge at the end. And if you decide to absorb a change for a good customer, that's fine. Just record it so the job cost report shows why the margin dropped.
When should you talk to the customer?
Early, if the cause is on their side. If a drawing revision, a late material spec or a quantity change is driving the overrun, say so while the job is open. "This change adds about 12 hours. Here's the cost. Can you approve it?" is an easy conversation in week one and a hard one after the invoice goes out.
If the cause is on your side, I don't think you go back for more money. You absorb it, fix the cause, and requote the next order if the original price was simply too low.
The in-between case is a delivery date. If the overrun is going to make the job late, tell the customer now, with a new date. They'd rather plan around it than find out on the ship date.
Either way, keep a note on the job. When the customer orders the part again, the person quoting should know what happened last time.
How do you build estimates that prevent overruns?
Most of this is covered in the bidding post, so just the short version here.
Use your own closed jobs, not the original template, to set hours. Have the shop lead review setup and cycle time on any new or unusual job before the quote goes out. Put a validity date on every quote so material prices can't go stale. And make sure the quote uses full cost, including the items in hidden job costing mistakes.
What does good job cost reporting look like?
For catching overruns, I'd want one report for open jobs and one for closed jobs.
Open jobs, weekly: each job's budget hours, hours to date, percent complete, projected hours at finish, and projected margin. Flag anything projected more than a set amount over, say 10%. Pick a threshold that fits the size of your jobs.
Closed jobs, monthly: budget and actual by line, with price and quantity split for anything over the threshold, and the cause from the log.
The monthly one ties into your close and your margin analysis. The weekly one is the one that actually saves money, because it's the only one that arrives before the job is done.
Using overrun data to improve pricing
Each overrun is a small lesson about your quote. Was the cause a one-off, like a bad lot of material? Then nothing changes. Was it something that will happen again, like setup on that part family? Then the quote template should change.
The overrun log is what tells you which is which. After a few months, sort it by cause. If half the dollars come from one cause, that's where to spend your time.
Sometimes the answer isn't the shop at all. If one customer's jobs keep running over because of late changes, the fix may be a pricing or terms conversation. Our pricing and margin analysis post covers how to look at margin by customer.
How we help
As part of our manufacturing accounting and outsourced controller work, we set up open-job reporting, run the closed-job variance review and keep the overrun log. Our pricing and margin analysis turns what we find into quoting changes.
We do this most often for metal fabrication and CNC machining shops, where hours are usually the swing factor. Let me know if you want to talk through a job that went sideways.
Frequently Asked Questions
How do I know if an overrun is a price problem or an efficiency problem?
Split each line into a price variance and a quantity variance. If you paid more per unit, it's a price or purchasing issue; if you used more hours or material, it's an efficiency or estimating issue.
Why did overhead go over on my job?
If overhead is applied per labor hour, extra hours bring extra overhead with them. Fix the hours and the overhead overrun goes away too.
How can I track job costs during the job without an ERP?
Record hours by job daily and check them weekly against budget and a percent complete from the shop lead. A simple spreadsheet is enough to project the finish and flag problems.
What variance threshold should trigger a review?
Pick one that fits your job sizes, often around 10% of budget or a fixed dollar amount. The point is to review the few jobs that matter, not every small miss.
Should I bill the customer for overruns?
Only for changes they asked for, which is why change orders matter. Overruns from your own estimating or execution are yours, but they should still change your next quote.
More on: Cost Accounting · Budgeting & Forecasting


