How to Improve On-Time Delivery in a Job Shop: A Practical 5-Step Guide
On-time delivery starts with knowing — before the customer calls — which jobs are at risk. Here's a 5-step guide to improving OTD starting this week.
The 4 PM phone call is where on-time delivery gets decided
It's 4 PM on a Thursday. A customer calls asking where their parts are — the order you promised for Tuesday. You walk out to the floor, find the job sitting third in line behind two rush orders that jumped the queue on Monday, and realize nobody flagged the slip until the customer did.
That phone call is where on-time delivery actually gets decided. Not on the shop floor, where your machinists are already running flat out, but in the gap between what you promised and what you could see coming. Most shops treat poor on-time delivery as an effort problem and respond by pushing people harder. It's almost never an effort problem. It's a visibility-and-capacity problem: the schedule promised something the shop couldn't deliver, and nobody saw the gap until it was too late to fix.
This is a practical 5-step guide to improving on-time delivery in a job shop. It starts with measuring on-time delivery (OTD) honestly, moves through diagnosing why due dates slip and building a schedule that respects real capacity, and ends with a weekly routine that keeps the schedule accountable. You can start the first step this week.
What it actually takes to improve on-time delivery in a job shop
Improving on-time delivery in a job shop comes down to closing the distance between the date you promise and the date the work is physically capable of finishing. Every one of the five steps below pushes on that distance — by measuring it, finding where it opens up, and building a schedule that warns you before it widens past the due date. None of it requires more machines or more overtime. It requires seeing the schedule clearly enough to make promises you can keep.
Step 1: Measure on-time delivery before you try to improve it
You can't improve a number you don't track. Most job shops don't measure OTD at all — they notice it only when a customer complains, which is the most expensive possible moment to find out.
Start with one definition and hold it. On-time delivery is the share of jobs shipped on or before their promised date, divided by total jobs shipped in the period:
OTD = jobs shipped on or before promised date ÷ total jobs shipped
The trap is the denominator. Decide three things up front and don't move them: whether "promised date" means the original promise or the most recent revised promise, whether a partial shipment counts as on time, and whether you measure by job or by line item.
That first choice is where most shops quietly lie to themselves. A job promised for the 5th, repromised to the 12th when it started slipping, and shipped on the 12th scores as on-time if you measure against the revised date — and as four days late if you measure against the original. The customer is keeping score on the original. So should you. Measuring against the revised promise produces an OTD number that looks healthy while accounts walk out the back door.
Run the math once to see how much room that leaves for self-deception. Say you shipped 40 jobs last month and nine missed their original promised date. Measured honestly, that's 31 ÷ 40, or about 78%. Now re-promise five of those nine partway through and score them against the new date, and the same month reads 36 ÷ 40, or 90%. Nothing changed on the floor. Only the denominator moved. Pick the honest version and live with the lower starting number — it's the only one that improves something real.
Then count weekly, not quarterly. A weekly OTD number turns a vague sense that "we've been slipping lately" into a trend you can act on before it costs an account. It's one of a small set of numbers worth tracking on a regular cadence; the broader set is covered in the five production scheduling KPIs every job shop should track.
Step 2: Diagnose why due dates actually slip
Missed due dates in a job shop almost always trace back to one of three causes. Tag every late job with which one applied, and within a month the dominant pattern usually names itself.
The promise was never keepable. A quote went out with a delivery date based on a gut feel, not on what the shop floor actually had open. The job was late the moment it was promised. This is the most common cause and the most fixable, because it lives in the quoting step, not the production step — you're losing the job before a single chip is cut. Picture a 35-employee contract machining shop where the estimator quotes a three-week lead time on every job out of habit, regardless of what's already loaded. When the floor is light, that quote is conservative and everyone's happy. When the floor is full, the same three-week promise is fiction — and the estimator has no way to tell which situation they're in, because the quote and the schedule never talk to each other.
The machine got double-booked. Two jobs landed on the same machine in the same window because the scheduling tool — usually a spreadsheet or a whiteboard — let them. A scheduling conflict that reaches the floor costs an estimated $250–$1,000 per incident in machine restart, resequencing, and lost capacity (Product Brief §2). Each one also pushes a due date downstream.
Something disrupted the plan and nobody replanned. A rush order jumped the queue, a machine went down, a material delivery slipped. Unplanned downtime is especially corrosive here because it runs about 35% more expensive than planned downtime (Arda Cards 2026) — it cascades, knocking over every job queued behind the stopped machine. The disruption itself isn't the failure. The failure is having no fast way to see what it did to every downstream due date.
Knowing which cause dominates tells you where to spend your effort. A shop drowning in keepable-promise failures needs to fix quoting. A shop with chronic double-booking needs a schedule that enforces capacity. Most shops have all three at once and have to work them in order, because a perfect schedule can't save a promise that was impossible the day it was made.
Step 3: Build a capacity-aware schedule (the part most shops skip)
Here's the structural problem behind missed due dates in manufacturing: most scheduling tools don't know how much capacity a machine actually has. A spreadsheet will happily let you load 30 hours of work onto a machine that runs 8 hours a day. The math doesn't object. The customer does, three weeks later.
A capacity-aware schedule enforces finite capacity — the plain rule that a machine can't do more work than the hours it's actually running. The arithmetic is something you can check yourself: a two-shift operation running Monday through Friday is staffed for 80 of the 168 hours in a week, which structurally caps how much work any one machine can absorb no matter how cleverly the jobs are arranged. A schedule that ignores that ceiling isn't a schedule. It's a wish list with dates on it.
The second half of capacity-awareness is a single source of truth. When the schedule lives in one person's spreadsheet, a whiteboard on the wall, and three people's memories, those versions drift apart by mid-morning — and the drift is exactly where due dates get lost. The drift is rarely dramatic. The whiteboard says Job 4471 is on the VMC; the spreadsheet still has it on the manual mill it was rerouted off of yesterday; the lead hand remembers the reroute but called in sick. By the time anyone reconciles the three, the job has lost half a day it didn't have. One schedule that everyone reads from, and that updates the moment a job moves, removes an entire category of slip.
A visual drag-and-drop schedule does this by making a machine's load impossible to ignore: when a job won't fit before its due date, you see it on the board instead of discovering it on the floor. It also turns absorbing a rush order without breaking the rest of the schedule into a deliberate trade-off you can watch in real time, rather than a silent reshuffle that quietly makes three other jobs late.
Step 4: See at-risk jobs before the customer calls
The single biggest lever on on-time delivery is time. A job that's going to be late is almost always knowable days before it actually misses — if you're looking at the right view.
The signal is simple: any job whose remaining work exceeds the remaining capacity before its due date is already late, whatever the schedule claims. A capacity-aware schedule can surface those jobs automatically, which turns OTD from something you react to into something you manage. Instead of finding out at 4 PM Thursday, you see on Monday that Tuesday's job is at risk — early enough to add a shift, reroute to another machine, pull in subcontract help, or call the customer while you still have a credible story and a real option.
That early-warning view has to survive the shift change. In a two- or three-shift operation, an at-risk job spotted on first shift means nothing if the warning doesn't carry to the crew that could actually act on it overnight. Getting that handoff right is its own discipline, covered in scheduling shifts on a CNC machining floor. The principle holds regardless of shift count: the schedule, not a person's memory, has to carry the warning forward.
The warning is only half the value. The other half is what it buys you — options. A due date you see slipping on Monday can still be saved a dozen ways. The same due date discovered Thursday afternoon can usually only be apologized for. Early warning converts a customer-relationship problem back into a scheduling problem, which is the kind you can actually solve.
Step 5: Close the loop with a weekly OTD review
Improvement that isn't reviewed decays. The final step is a standing weekly review — 20 minutes, same time every week — built around three questions: What was our OTD this week? Which jobs slipped, and what cause did each get tagged with in Step 2? What in the schedule or the quoting process do we change because of it?
The point of the review isn't to assign blame for late jobs. It's to feed what you learned back upstream. If keepable-promise failures keep showing up, quoting needs the schedule's real capacity numbers before it commits to a date. If double-booking keeps showing up, the finite-capacity enforcement from Step 3 isn't being used consistently. The review is what turns five separate steps into a system that holds its shape week over week.
This is also where the money becomes visible. Manual scheduling inefficiency costs a typical job shop 5–10% of revenue (Qlector 2025) — roughly $128,000–$276,000 a year for a $2M shop once the knock-on costs are counted. A meaningful share of that is missed-delivery cost: expedite fees, recovery overtime, and the accounts you lose when OTD slips far enough that a customer starts dual-sourcing. Every point of on-time delivery you recover claws back part of that number.
Where to start
On-time delivery in a job shop isn't won by working harder. It's won by measuring honestly, knowing why dates slip, scheduling against real capacity, seeing trouble early, and reviewing weekly. The five steps reinforce each other: the weekly review only works if you're measuring, and the measurement only improves if the schedule respects capacity.
Start with Step 1 this week — pick your OTD definition and start counting against the original promise. If you want the broader scoreboard that OTD sits inside, our store has planning and tracking templates you can run in a spreadsheet today. And when you're ready to see at-risk jobs on a live board instead of hearing about them from a customer, you can try Visual Machine Scheduler free for 14 days — no credit card required.
Ready to go beyond the guide?
Most shops are on a live Gantt board within 60 minutes of sign-up, with their existing job list imported from Excel.
Get shop floor scheduling guides in your inbox
Practical articles for production managers — no spam, unsubscribe anytime.
Related articles
How to Handle Rush Orders Without Breaking Your Production Schedule
Every job shop gets rush orders. The ones that handle them without chaos have one thing in common: a live capacity view …
The 5 Production Scheduling KPIs Every Job Shop Should Track
Most job shops track OTD when a customer complains. The shops that consistently hit their due dates track five metrics w…
How to Prevent Scheduling Conflicts on the Shop Floor (Before They Cost You)
A scheduling conflict that reaches the shop floor costs $250–$1,000 in machine restart, resequencing, and lost capacity.