Walk into almost any CNC shop and ask, "What's your machine utilization?" You'll get a confident answer: 85%. 90%. "Our machines run all day."
Then ask the second question: "So why are orders still late?"
That's where it gets uncomfortable. Despite the high numbers, delivery dates slip, work-in-progress piles up, priorities change every day and expediting has become normal. Either the numbers are wrong, or they measure the wrong thing. In most shops, it's the second.
In this article you'll see how machine utilization is calculated, why the same machine can show 80% or 25%, how utilization differs from OEE, and why pushing it higher often makes deliveries worse. Then we'll cover what to track instead.
What Is Machine Utilization?
Machine utilization is the share of available time a machine spends actually running: making parts, not waiting, not being set up and not broken down. It answers one question: "Was this machine busy?"
The Machine Utilization Formula
Machine utilization (%) = Run time ÷ Available time × 100
Run time is the time the machine is producing. What counts as "available time" is where shops, and software vendors, differ. And it changes the answer completely.
Worked example: one machine, two answers
Take a VMC on one 8-hour shift with a 30-minute break. During the shift, its spindle runs for 6 hours (360 minutes).
| Available time based on | Available minutes | Utilization |
|---|---|---|
| Planned shift time (480 minutes minus a 30-minute break) | 450 | 360 ÷ 450 = 80% |
| All 24 hours of the day | 1,440 | 360 ÷ 1,440 = 25% |
Same machine, same day, same parts. One report says 80%, another says 25%. Before you compare your number with anyone else's, or with a benchmark you read online, check what it's divided by.
Also notice what the formula leaves out: whether those 360 minutes made the right parts, at the right time, for an order that's actually due.
Machine Utilization vs OEE
OEE (Overall Equipment Effectiveness) goes further than utilization. It multiplies three factors:
- Availability: how much of the planned time the machine ran (close to utilization)
- Performance: whether it ran at its ideal cycle time
- Quality: how many of the parts were good first time
So a machine can show 90% utilization and still have a low OEE if it ran slow cycles or made rejects. Utilization asks "was it busy?" OEE asks "was the busy time productive?"
But here's the catch: neither number tells you whether your shop is delivering. Both measure one machine. Delivery depends on how work flows between machines.
Why High Utilization Doesn't Mean High Output
Most shops run on one belief: higher utilization means better performance. So the focus becomes keeping machines running, avoiding idle time and loading as much work as possible. To keep the number high:
- Jobs are released early "so machines don't wait"
- Operators pick whatever job is available to stay busy
- Setups are done even when the next operation isn't ready
- Batches are made bigger "to save setup time"
Each decision looks sensible on its own. Together, they overload the shop. You don't see it in the utilization report. You see it on the floor: jobs waiting between operations, half-finished parts everywhere, constant rescheduling and firefighting at dispatch.
Utilization is a machine number. Output is a shop number.
A job passes through several operations, and the shop can only ship as fast as its slowest one. Take a shop where turning finishes 40 parts a shift and milling finishes 25. Run turning at 100% and it makes 15 parts a shift that milling can't take. Those parts don't ship. They queue.
| Approach | Turning utilization | Parts shipped per shift | Parts added to the queue at milling |
|---|---|---|---|
| "Keep every machine busy" | 100% | 25 | 15 every shift |
| Turning paced to milling | About 63% | 25 | 0 |
The output is the same. The only difference is a growing pile of work-in-progress, longer lead times and cash tied up on the floor. This is exactly how WIP keeps increasing even when everyone is busy.
The fuller a machine is, the longer jobs wait
There's a second effect. As a machine gets close to fully loaded, the queue in front of it grows much faster than the load. A standard rule from queueing theory shows the pattern:
| Machine loaded to | Typical wait before a job starts (in multiples of its run time) |
|---|---|
| 50% | 1× |
| 80% | 4× |
| 90% | 9× |
| 95% | 19× |
Real shops don't follow the formula exactly, but the shape holds: going from 80% to 95% loaded doesn't add a little more waiting, it multiplies it. That's why the "fully utilized" machine is so often the one with the oldest jobs in front of it.
The Reality Most Shops Miss
A machine can be 90% utilized, running continuously and fully loaded, and still be causing delays, because it's working on the wrong job, at the wrong time, in the wrong sequence. That work still counts as utilization. For the shop as a whole, it's noise.
High utilization often hides a deeper issue: the production flow itself is already breaking down. Even advanced ERP systems struggle when daily decisions are still driven by keeping machines busy.
What Is a Good Machine Utilization Rate?
There's no single good number, because it depends on which machine you're looking at:
- At your bottleneck (the operation that limits output), protect every hour. An hour lost there is an hour lost for the whole shop. Keep it fed with ready jobs, cut its setup time and never let it wait for material or a program.
- At every other machine, lower utilization is normal and healthy. These machines have spare capacity by definition, and running them flat out only builds queues in front of the bottleneck.
So good utilization isn't a target for the whole shop. It's a question about one machine: is your bottleneck ever idle?
If you're not sure which machine that is, here's how to identify bottlenecks in manufacturing: five simple checks that point to the real one within a week.
What High Utilization Is Really Costing You
- Delivery reliability: you can't predict completion when jobs sit in queues. Often you can't even say where a job is right now, which is the problem behind "where is my job?"
- Throughput: more activity doesn't mean more output, and often means less.
- Work-in-progress and cash: everything is "in progress", nothing is finishing, and none of it can be invoiced.
- Margin: expediting, overtime and rework quietly eat profit And once expediting becomes the normal way to run, it makes more jobs late than it saves: see when every job is urgent.
And the worst part: the utilization numbers still look good, so the problem stays hidden longer.
What to Track Instead of Machine Utilization
You don't fix this by telling people to "reduce utilization". That goes against everything they've been trained to do. The shift is from "keep machines busy" to "keep jobs moving", and four numbers show whether that's happening:
- Utilization of your bottleneck only. The one utilization figure that really matters. If the bottleneck is idle, the whole shop loses output.
- On-time delivery. The share of jobs that ship on the promised date. This is what your customers see.
- Queue in front of the bottleneck. How much work is waiting there. If it keeps growing, you're releasing too much. If it runs empty, the bottleneck is about to starve.
- Age of the oldest job. How long the oldest open job has been on the floor. It exposes hidden waiting faster than any average.
In shops that make this shift, not every machine is always running, and some managers find that uncomfortable at first. But work-in-progress is controlled, queues are intentional, the schedule stops changing every hour, and operators no longer decide priorities on their own. Overall utilization may drop slightly. Throughput goes up, lead times shrink and delivery becomes predictable.
How to Measure Machine Utilization Without Software
You don't need a monitoring system to start. For one or two weeks, on your bottleneck machine first:
- Put a simple sheet at the machine, with one row per hour of the shift.
- The operator marks each hour as running, setup or stopped, and writes the reason for every stop: no job, no material, no program, waiting for inspection or breakdown.
- At the end of each shift, count the jobs waiting in front of the machine.
The stop reasons are more useful than the percentage. If your bottleneck regularly waits for material or programs, that's lost output for the whole shop, and it's usually cheap to fix.
How We Solve This
At KeshRaghTech we start with an Operational Workflow Review to find which machine really sets your output and where work waits. Then we design release rules and priority rules that protect that machine. We deliver them as a workflow application built around your shop, so the right job is always ready at the bottleneck and everyone works from the same priorities, and we coach your team until it runs that way every day.
Related reading: Why Your WIP Keeps Increasing (and How to Reduce It) · What Breaks Production Flow in CNC Job Shops · How to Identify Bottlenecks in Manufacturing · When Every Job Is Urgent · Where Is My Job?