What Is OEE? Formula, Calculation, and How to Improve It
OEE (Overall Equipment Effectiveness) is a single percentage that measures how much of your planned production time actually makes good parts at full speed. It combines three factors — Availability, Performance, and Quality — into one number using the formula OEE = Availability x Performance x Quality. A higher OEE means less hidden downtime, slow running, and scrap.
What is OEE?
OEE stands for Overall Equipment Effectiveness. It answers a simple question: of the time you planned to produce parts, what fraction was fully productive — meaning the machine ran, ran at speed, and produced good parts? It is the standard manufacturing metric for spotting hidden losses on CNC machines and other equipment, and it turns vague feelings of being "busy" into a number you can act on.
OEE is widely used because it rolls three different kinds of loss into one comparable figure. Downtime, slow cycles, and quality defects each drag the score down in a way you can trace back to a root cause.
What is the OEE formula?
The OEE formula is:
OEE = Availability x Performance x Quality
Each factor is a percentage between 0 and 100 percent, and you multiply them together. Because the factors are multiplied, a weak score in any one area pulls the whole result down hard. This is why a machine that "feels busy" can still have a low OEE — small losses in all three factors compound.
The three factors are defined as:
- Availability = Run Time / Planned Production Time. It captures downtime losses: breakdowns, setups, changeovers, and waiting for material or operators.
- Performance = (Ideal Cycle Time x Total Count) / Run Time. It captures speed losses: running below the ideal cycle time, micro-stops, and reduced feeds.
- Quality = Good Count / Total Count. It captures defect losses: scrap, rework, and parts that fail inspection.
How is OEE calculated? (worked example)
Calculate each factor, then multiply. Imagine an 8-hour shift (480 minutes) with 30 minutes of planned breaks, so planned production time is 450 minutes. The machine experienced 45 minutes of unplanned downtime, leaving 405 minutes of run time. It made 360 parts, of which 12 were scrap. The ideal cycle time is 1 minute per part.
- Availability = 405 / 450 = 90%
- Performance = (1.0 x 360) / 405 = 88.9%
- Quality = 348 / 360 = 96.7%
- OEE = 0.90 x 0.889 x 0.967 = 77.4%
That single number, 77.4%, tells you the line was fully productive for about three-quarters of planned time. Tracking it shift over shift shows whether changes are helping. See how this works continuously on real machines on the OEE tracking page.
What is a good OEE score (the 85% benchmark)?
The widely cited world-class benchmark for OEE is around 85 percent — roughly 90 percent Availability, 95 percent Performance, and 99 percent Quality. Treat it as a North Star, not a pass mark. Many small and mid-size CNC shops score well below it when they measure honestly for the first time, especially because manual logs tend to hide micro-stops and short setups.
The more useful target is your own trend. A trustworthy baseline that climbs over time is worth more than chasing a single benchmark number, because it reflects real improvement on your machines, parts, and mix.
How does real-time monitoring improve each OEE factor?
Real-time monitoring improves OEE by replacing estimates with controller-level facts and surfacing losses the moment they happen, so you fix causes instead of guessing. Each of the three factors improves in a specific way when data is automatic, accurate, and visible on the floor.
- Availability: Automatic downtime capture records every stop with a timestamp and, with operator input, a reason code. You see the true split between breakdowns, setups, and waiting — the biggest hidden loss in most shops. CNC monitoring makes downtime visible instead of guessed.
- Performance: Comparing live cycle times against the ideal exposes slow running and micro-stops that no one notices manually. An operator terminal at the machine lets the team react to speed loss in the moment rather than at end of shift.
- Quality: Tying scrap and rework counts to the exact run, program, and tool helps you find which jobs and conditions generate defects, so you address the source.
Native, controller-level data is what makes these numbers trustworthy. xynLog reads directly from the controller — not just MTConnect surface signals — so run state, cycle times, and counts reflect what the machine actually did. Where you want a heads-up before a stoppage, condition-based alerts flag abnormal conditions like temperature or load drift so maintenance can act early.
How do you use OEE without gaming it?
Use OEE to find and remove losses, not to rank operators. The factors should point you to root causes: low Availability means attack downtime, low Performance means attack speed, low Quality means attack scrap. Keep the definition of planned production time consistent, or the number stops being comparable.
A plain-language AI layer helps here. The AI manufacturing assistant lets a production manager ask, in normal words, "Why did OEE drop on machine 4 last night?" and get an answer drawn from the live data. It runs on hosted models or fully on-premise with Ollama, and xynLog is EU-hosted, so your production data stays under your control.
How does OEE connect to the rest of your shop?
OEE is most powerful when it is not a standalone report. Connecting it to scheduling and costing closes the loop: accurate run times feed better quotes, and real availability feeds realistic delivery dates. Through ERP integration, the same controller-level facts that drive OEE can flow into your planning and costing systems, so one source of truth covers the floor and the office.
To collect that data, xynLog uses native machine connectors for common controllers such as Fanuc, Siemens, Heidenhain, Haas, and Mazak, capturing controller-level depth rather than relying only on generic surface protocols.
See xynLog on your own CNC brand — book a demo.
Key takeaways
- OEE = Availability x Performance x Quality, expressed as one percentage of fully productive planned time.
- Availability targets downtime, Performance targets speed loss, Quality targets defects — and because they multiply, small losses compound.
- The widely cited world-class benchmark is around 85 percent, but your own upward trend matters more than one universal number.
- Real-time, controller-level monitoring makes each factor accurate and actionable, which is the practical path to improving OEE.
