OEE (overall equipment effectiveness) is the share of planned production time in which a machine or line makes good product at its ideal speed. It is calculated as availability × performance × quality, and the same number can be checked as good count × ideal cycle time ÷ planned production time. On the one-shift example worked through below, with 60 minutes of stops and 500 rejects, the line reaches 74.0 %.
What OEE measures
According to Wikipedia, the term first appeared in Seiichi Nakajima's 1982 book TPM Tenkai and became a central measure of total productive maintenance (TPM). OEE compares what a line produced with what it could have produced in the time it was planned to run. A score of 100 % would mean only good parts, made as fast as the process can run, with no stop time; Vorne calls that time fully productive time.
OEE is the product of three factors, each of which isolates one kind of loss:
| Factor | Calculation | What reduces it |
|---|---|---|
| Availability | run time ÷ planned production time | every stop during planned time, planned or unplanned |
| Performance | (ideal cycle time × total count) ÷ run time | running slower than the ideal rate, including small stops |
| Quality | good count ÷ total count | rejects, and units that need rework |
Run time is planned production time minus stop time. The ideal cycle time is the fastest cycle the process can achieve in optimal conditions, and the ideal rate is its inverse. Vorne describes quality as first pass yield: a unit that has to be reworked is not a good unit.
Multiplied together, the three factors reduce to one ratio: good count × ideal cycle time ÷ planned production time. Vorne presents this as the simple calculation. It gives the same OEE but cannot show which loss caused it, which makes it a good cross-check.
Definitions are not standardised across industries. Wikipedia notes that companies tailor them, and that ISO 22400-2:2014, the ISO standard on key performance indicators for manufacturing operations management, presents two OEE versions that appear inconsistent with each other.
The figure quoted most often as a target is 85 % (90 % availability, 95 % performance, 99 % quality). Vorne attributes it to Nakajima's 1984 book Introduction to TPM, where it was meant as a minimum for discrete manufacturing, and reports that most manufacturers score closer to 60 %. Wikipedia says that taking 85 % as a world-class target is in many cases wrong. Treat it as a rule of thumb and compare a line with its own history.
Planned production time: what is left out
The denominator decides the score, and sources draw it differently.
- Vorne removes only the time when there is no intention to produce, typically breaks. Changeovers count as stop time, and its FAQ says preventive maintenance probably should too.
- Sepasoft's OEE module calculates availability as run time ÷ (elapsed time − planned downtime), so planned downtime does not lower availability. Equipment modes such as maintenance, training or testing can each be included in OEE or not.
- Time that is not scheduled at all sits outside both and is covered by TEEP, below.
OEE values calculated under different rules cannot be compared. Write down for each plant which events are outside planned production time, apply the same rules on every line and shift, and report any excluded time separately.
Worked example: one shift on one line
The example uses the default values of the OEE calculator on the TDL site. The 480 minutes are planned production time, so breaks are already removed.
| Input | Value |
|---|---|
| Planned production time | 480 min |
| Stop time | 60 min |
| Ideal rate | 100 units/min (ideal cycle time 0.01 min = 0.6 s) |
| Total count | 36,000 units |
| Rejects | 500 units |
Step 1, availability. Run time = 480 − 60 = 420 min. Availability = 420 ÷ 480 = 87.5 %.
Step 2, performance. At the ideal rate, 420 min of run time could have made 420 × 100 = 42,000 units. The line made 36,000. Performance = 36,000 ÷ 42,000 = 85.7 %. In time units: 36,000 × 0.01 min = 360 min of net run time, and 360 ÷ 420 gives the same 85.7 %.
Step 3, quality. Good count = 36,000 − 500 = 35,500. Quality = 35,500 ÷ 36,000 = 98.6 %.
Step 4, OEE. 0.8750 × 0.8571 × 0.9861 = 0.7396, so OEE = 74.0 %. Carry the factors with four decimals: multiplying the rounded percentages (87.5 × 85.7 × 98.6) gives 73.9 %.
Cross-check. Good count × ideal cycle time = 35,500 × 0.01 = 355 min of fully productive time, and 355 ÷ 480 = 74.0 %.
The same shift as lost minutes:
| Loss | Minutes | How it is calculated |
|---|---|---|
| Stops | 60 | stop time |
| Slow running | 60 | run time − net run time = 420 − 360 |
| Rejects | 5 | 500 rejects × 0.01 min |
| Fully productive time | 355 | 480 − 60 − 60 − 5 |
The line lost as much time to slow running as to stops, and a downtime log alone would not show it. Expressed in minutes, the three losses can be compared directly.
The six big losses
Each factor is usually split into two losses. Vorne's names and examples:
| Factor | Loss | Typical causes |
|---|---|---|
| Availability | Equipment failure | breakdowns, unplanned maintenance, no operator or material, starved or blocked |
| Availability | Setup and adjustments | changeovers, cleaning, warm-up, planned maintenance |
| Performance | Idling and minor stops | jams, misfeeds, blocked sensors, quick cleaning |
| Performance | Reduced speed | worn or dirty equipment, substandard material, inexperienced operators |
| Quality | Process defects | scrap and rework during steady-state production |
| Quality | Reduced yield | scrap and rework from start-up until production is stable, often after a changeover |
Wikipedia uses different names for the same structure: waiting, breakdowns, minor stops, reduced speed, scrap and rework.
Where a minor stop ends and a stop begins is a plant decision. Vorne ties it to the reason-tracking policy: if every stop longer than two minutes needs a reason, those stops count as equipment failure and shorter ones fall into performance. Its FAQ also warns against downtime thresholds so low that operators spend as much time collecting data as running the machine.
TEEP: adding the time that was never planned
TEEP (total effective equipment performance) multiplies OEE by utilization, which Vorne defines as planned production time ÷ all time; Wikipedia calls the same factor loading. If the example line runs one 480-minute shift per day, utilization is 480 ÷ 1,440 = 33.3 % and TEEP is 74.0 % × 33.3 %, which is 355 fully productive minutes ÷ 1,440 = 24.7 %. OEE shows how well the scheduled time is used; TEEP also shows how much capacity is left unscheduled.
Common mistakes
Choosing the ideal rate. Vorne accepts the builder's nameplate rate or a time study of the fastest speed the process can hold, does not lower it for machine age or material, and rejects the standard (budget) cycle time used for scheduling because it hides losses. PackML's design speed (MachDesignSpeed) is defined for the machine as installed, which is not the builder's maximum rating. Choose one basis, set it per product and write it down.
Performance above 100 %. Vorne's FAQ says that when an OEE figure exceeds 100 %, the cause is almost always performance, with an ideal cycle time set too long, that is an ideal rate set too low. Correct the rate instead of capping the result.
Moving changeovers into planned stops. Vorne includes changeover time in availability. Taking it out of planned production time raises OEE without changing the line, and the loss disappears from the report.
Averaging percentages. Line 1 runs 480 min at 74.0 % (355 fully productive minutes); line 2 runs a 120-min order at 40.0 % (48 minutes). The simple average is 57.0 %, but together they made 403 fully productive minutes in 600 planned minutes: 67.2 %. Vorne's FAQ makes the same point for several products on one machine: a simple average is insufficient, and run times, planned times and counts are summed before dividing. For a whole plant it gives an average of each asset's OEE weighted by planned production time or by value added; weighting by planned production time gives the same 67.2 % here. Wikipedia, on the other hand, says OEE should not be aggregated to department or plant level.
Counting rework as good. Vorne counts a unit that needs rework as a reject the first time it runs.
Collecting the data: by hand or from the PLC
Vorne recommends starting with manual OEE to learn the method, then moving to automatic collection for more accurate downtime, visibility of slow cycles and minor stops, and real-time figures. Sepasoft notes that downtime written on paper and typed in later is often inaccurate and out of date.
The TDL OEE page lists what is taken from the line PLCs: machine states (running, stopped, starved, blocked, fault), good and reject counts from fillers, vision systems, checkweighers and reject stations, and alarm words that give the cause of each stop. PackML, created by OMAC with ISA, defines tags (PackTags) that Wikipedia describes as designed to support OEE. In its OPC UA mapping (OPC 30050), the admin tags include ProdProcessedCount (good and defective units), ProdDefectiveCount, StopReason (the first event captured when the machine stops, for first-out reporting) and cumulative time in each state.
The PLC cannot always know why a machine stopped. Sepasoft's example is an operator pressing the stop button: the system records that, and the operator adds the real cause. Its OEE module also records mode, state, count, shift and standard-rate tags, and can count several machine states (its example: loading, heating, molding) as running. Vorne suggests measuring at the line's constraint, since its performance is the performance of the line.
On TDL's OEE and downtime monitoring page: states, counts and alarm words already in the PLC are read as they are; missing ones are added with small program changes tested on the line, usually starting with the bottleneck line or one with frequent changeovers. For older machines, see connecting existing equipment. The same page lists dashboards on Ignition, FactoryTalk View SE or AVEVA System Platform with a historian; the historian article explains that part.
OEE and MES
ISO 22400-2 covers key performance indicators for manufacturing operations management, and relates its equipment indicators to work units as specified in IEC 62264; Wikipedia's ISA-95 article lists the ISA-95 parts as modified versions of the IEC 62264 parts. Manufacturing operations management is level 3 in the ISA-95 model, the MES layer.
OEE can also be one module of an MES. Sepasoft's OEE Downtime module runs inside Ignition next to its Track & Trace, SPC and Settings & Changeover modules, with Business Connector for links to ERP. The TDL OEE page notes that counts and stop data can go to MES or ERP through database or web-service interfaces. For when a spreadsheet is enough and when a platform is worth it, see what MES is and three ways to get one and the MES on Ignition page.
Frequently asked questions
How is OEE calculated?
OEE is availability × performance × quality: run time over planned production time, ideal cycle time × total count over run time, and good count over total count. The product equals good count × ideal cycle time over planned production time, which is a useful cross-check.
What is a good OEE score?
The often quoted 85 % comes from Nakajima's work on TPM and was meant for discrete manufacturing. Vorne reports most manufacturers are closer to 60 %, so compare a line with its own history.
Should changeover time count against OEE?
Vorne includes it in availability. Sepasoft's OEE module can exclude planned downtime, so a plant has to set one rule, apply it everywhere and report the excluded time separately.
Why is my performance above 100 %?
Almost always because the ideal cycle time is set too long, for example a standard or budget rate instead of the fastest rate the process can hold. Correct the ideal rate for that product.
What is the difference between OEE and TEEP?
OEE is measured against planned production time. TEEP multiplies OEE by utilization, planned production time over all time, so it also counts time that was never scheduled.
Sources
- Vorne Industries (OEE.com), Calculating OEE
- Vorne Industries (OEE.com), OEE FAQ
- Vorne Industries (OEE.com), Six Big Losses
- Vorne Industries (OEE.com), TEEP
- Vorne Industries (OEE.com), World-Class OEE
- Sepasoft, What Is OEE?, MES Module Suite user manual
- Sepasoft, How Is OEE Calculated?, MES Module Suite user manual
- Sepasoft, OEE: Features, MES module tutorials
- Sepasoft, OEE Downtime product page
- OPC Foundation, OPC 30050 OPC UA for PackML, 4.2 PackML overview
- OPC Foundation, OPC 30050, 6.3.4 PackMLAdminObjectType
- ISO, ISO 22400-2:2014, KPIs for manufacturing operations management, Part 2: Definitions and descriptions, 01/2014
- Wikipedia, Overall equipment effectiveness
- Wikipedia, PackML
- Wikipedia, ANSI/ISA-95
Read 2 November 2026. This article paraphrases the sources and does not quote them; read the original documents before designing or working on a system.