What is job shop scheduling?
Job shop scheduling is figuring out which jobs run on which machines, in what order, and when. Every job can take a different path through your shop. One part might go from the saw to the lathe to the mill. The next might skip the lathe entirely and go straight to grinding.
That is what makes job shops different from flow production. There is no fixed sequence. Every week looks different from the last.
If you run a machine shop with lathes, mills, grinders, and maybe a saw or two, you are running a job shop. Same goes for most CNC shops. Custom work, different routings, shared machines. That is the reality.
Why job shop scheduling is harder
In a flow shop, every product follows the same path. You set up the line once and let it run. Scheduling is mostly about speed and throughput.
In a job shop, nothing is that simple.
Here is what makes it harder:
- Every job has a different routing. Part A needs three operations. Part B needs five. They share two of the same machines but in different order.
- Setup times vary. Switching from one job to the next on a CNC mill might take 10 minutes or 2 hours depending on the fixture and tooling.
- Priorities shift constantly. A rush order comes in. A customer moves up a deadline. Material arrives late. Every change ripples through the schedule.
- Machines are shared. Your VMC is running a production batch, but three other jobs are waiting for it. Which one goes next?
None of this is unsolvable. But it does mean you need a system. Keeping it all in your head works until it doesn’t. And when it breaks, it usually breaks on the day you can least afford it.
The cost of bad scheduling
Most shop owners don’t think of scheduling as something that costs them money directly. But it does.
Idle machines. If the next job isn’t staged and ready when a machine finishes, that machine sits idle. Even 30 minutes of idle time per machine per day adds up. Across 10 machines, that is 5 hours of lost capacity every single day.
Missed deadlines. When you don’t have visibility into what is coming next, jobs slip. You find out a deadline is tomorrow only when someone asks about it. Rush charges, overtime, and unhappy customers follow.
Double-booking. Two jobs need the same machine at the same time. Without a schedule that shows conflicts, you don’t catch it until someone is standing at the machine waiting.
Operator confusion. If your team doesn’t know what to work on next, they either ask (which interrupts you) or guess (which is worse). A clear schedule removes the guesswork.
How most small shops schedule today
Let’s be honest about what most shops do:
-
The whiteboard. Job names, due dates, maybe machine assignments. Updated by hand. Erased and rewritten constantly. No history, no way to share it remotely.
-
Spreadsheets. Better than a whiteboard but still manual. No conflict detection, no real-time updates. Falls apart once you have more than 20 active jobs. See our full comparison of scheduling software vs spreadsheets.
-
One person who “just knows.” This is the most common approach and the most dangerous one. When that person is out, nobody knows the schedule. The shop runs on tribal knowledge instead of a system.
-
ERP systems. Tools like MRPeasy or JobBOSS2 offer scheduling as part of a larger system. But they are built for bigger operations, cost more, and take weeks to set up. Most small shops don’t need 40 modules. They need to know what every machine is doing.
What actually works for small job shops
You don’t need a complex scheduling algorithm. You need three things:
1. A way to see all your jobs at once
Not a list buried in a spreadsheet tab. A view that shows every active job, which machine it is on, who is running it, and when it is due. If you can’t see it all at a glance, you can’t manage it.
2. Conflict detection
When you assign a job to a machine that already has something on it at the same time, you need to know immediately. Not after the operator shows up and finds someone else running the machine.
3. Multi-step job tracking
Most job shop work involves multiple operations. Cut, machine, deburr, inspect, ship. You need to track where each job is in its sequence. Not just “in progress” but “on step 3 of 5, currently on the VMC, next stop is grinding.”
That is it. Visibility, conflict detection, and multi-step tracking. Everything else is a bonus.
Scheduling methods that work at small scale
There are textbook scheduling algorithms (Johnson’s Rule, Critical Path, etc.) but most small shops don’t need them. Here are practical approaches that work:
Priority-based scheduling
Rank your jobs by what matters most. Due date is the most common priority. Jobs due soonest go first. You can also factor in customer importance, margin, or contract penalties.
This is simple and effective. It breaks down when every job is “high priority,” which means your real problem is taking on too much work, not scheduling.
First-come, first-served
Jobs are scheduled in the order they arrive. Simple. Fair. But it doesn’t account for due dates or urgency. A job that arrived last week but is due tomorrow will sit behind a job that arrived yesterday but isn’t due for a month.
Bottleneck-first scheduling
Identify your most constrained machine. Schedule that one first, then build the rest of the schedule around it. If your 5-axis mill is the bottleneck, make sure it is never idle. Everything else adjusts.
This is particularly effective in shops where one machine handles the most complex operations.
How to get started
If you are currently running on whiteboards or spreadsheets and want to move to something better, here is the path:
-
List your machines. Every machine that takes job assignments. Include the CNC mills, lathes, saws, grinders, everything.
-
List your active jobs. What is in progress right now? What is queued up? Include the due dates and which machines each job needs.
-
Map the routings. For each job, write out the sequence of operations. Which machine for each step? Who can run it?
-
Put it on a scheduling board. Whether it is a digital scheduling board or a physical one, get all of this visible in one place.
-
Review daily. Spend 5 minutes each morning looking at the schedule. What is due this week? Are there any conflicts? Is anything behind?
That is how you start. You don’t need to get it perfect on day one. You just need to move from guessing to seeing.
When to consider scheduling software
If you have 3 or more machines and more than a handful of active jobs, you will outgrow a whiteboard quickly. The signals are clear:
- You have double-booked a machine more than once
- An operator has stood idle because nobody told them what to run next
- You have missed a deadline because a job got lost in the shuffle
- You spend more than 15 minutes a day answering “what should I work on?”
At that point, a scheduling tool built for small shops will pay for itself in the first week. Not because it does something magical, but because it gives you visibility you didn’t have before.