ThingConnect
Shift supervisor reviewing an OEE breakdown on a tablet beside a CNC machine, with availability, performance, and quality figures visible on screen

OEE

OEE calculation, step by step: the formula and the three inputs that decide it

OEE = Availability × Performance × Quality. The formula is simple; getting a trustworthy number out of it depends entirely on three definitions most floors never write down. Here's how to calculate OEE without those definitions quietly shifting underneath you.

5 min read

Share

OEE = Availability × Performance × Quality. The formula itself is three multiplications. What actually determines whether the resulting number means anything is how three inputs — planned production time, ideal cycle time, and "good part" — get defined, because none of those three has one universal definition.

The formula

  • Availability = run time ÷ planned production time
  • Performance = (ideal cycle time × total parts) ÷ run time
  • Quality = good parts ÷ total parts
  • OEE = Availability × Performance × Quality

Each term is a ratio between 0 and 1 (or 0–100%), so multiplying all three gives the share of planned production time that produced good parts at the rated rate. A 60% OEE and an 85% OEE aren't describing "better" or "worse" machines in any simple sense until you've looked at which of the three components is actually dragging the number down — see what good OEE actually looks like on a CNC floor for how to read the three components once you have them.

A worked example

Illustrative only — arithmetic to show how the pieces combine, not a customer result.

One machine, one 8-hour shift (480 minutes), with a 30-minute planned break:

InputValue
Planned production time480 − 30 = 450 min
Run time400 min
Ideal cycle time1.0 min/part
Total parts produced380
Good parts365
  • Availability = 400 ÷ 450 = 88.9%
  • Performance = (1.0 × 380) ÷ 400 = 95.0%
  • Quality = 365 ÷ 380 = 96.1%
  • OEE = 0.889 × 0.950 × 0.961 = 81.1%

Change any one input and the headline number moves, but it moves for a reason you can point to — that traceability is the entire value of calculating the three components separately instead of reporting a single OEE percentage.

The three decisions that actually determine the number

The formula never changes. What changes, floor to floor and sometimes week to week, is how these three questions get answered:

  1. Does planned production time include breaks and planned maintenance? Pick one answer and hold it constant. Switching the definition between periods makes Availability numbers incomparable even though the formula looks identical.
  2. Where does "ideal cycle time" come from? A demonstrated sustainable rate, not the CAM program's theoretical figure. The program number is usually optimistic — use it and Performance absorbs the gap between theory and reality, which makes the number stop diagnosing anything specific. If Performance ever reads above 100%, this is almost always why.
  3. What counts as a "good" part? Right-first-time only, or does a part that needed rework count? Counting reworked parts as good inflates Quality and hides real scrap cost sitting one level down.

A common pattern, not a specific install

Illustrative only — a generic pattern, not a customer result.

Production reports one OEE figure; the quality team, looking at the same machine and the same shift, reports a noticeably different one. Nobody's arithmetic is wrong — the formula is the same three multiplications on both sides. The mismatch is almost always upstream of the math: one side is counting a scheduled changeover against planned production time and the other isn't, or one side is still using the program's theoretical cycle time while the other switched to a demonstrated rate months ago.

Reconciling it is rarely a calculation problem. It's a five-minute conversation to agree on one answer to each of the three questions above, write it down somewhere both teams can see, and apply it identically going forward — at which point the two reports converge on their own, because the formula was never the thing in disagreement.

Why manual OEE calculation drifts from the controller's number

A hand-calculated OEE depends on a downtime log, a part count, and a cycle-time assumption — all three collected or estimated by a person. Each is a place for drift to creep in: a paper log that misses short stops, a part counter that gets reset, an ideal cycle time nobody has revisited since the program was first written.

Reading the same three inputs directly off the controller doesn't change the formula — it changes how much the inputs can be trusted. Availability comes from actual machine-state transitions instead of a logbook. Total parts comes from the control, not a counter an operator can zero. Run time is measured, not reconstructed from shift notes at the end of the day.

Where this calculation feeds into a bigger picture

A single OEE number for one machine over one shift is a starting point, not the whole picture. The same three-factor calculation run continuously, machine by machine, is what turns OEE from a monthly spreadsheet exercise into something that flags a Performance or Availability problem while it's still small — see the full OEE guide for CNC machines for how the three components connect to cycle time, takt time, and downtime classification across a whole shop floor.

The short version

OEE = Availability × Performance × Quality — three ratios, one multiplication. The formula is never the hard part. The hard part is agreeing, once, on what counts as planned time, what the ideal cycle time actually is, and what counts as a good part — and then applying those same three answers every time the number gets calculated again.

Frequently asked questions

OEE = Availability × Performance × Quality. Availability is run time divided by planned production time. Performance is ideal cycle time multiplied by total parts, divided by run time. Quality is good parts divided by total parts. All three are ratios between 0 and 1, so the product is the share of planned time that produced good parts at the rated rate.

Pick one machine, one period. Say an 8-hour shift (480 minutes) with a 30-minute planned break, so planned production time is 450 minutes. If the machine ran for 400 of those minutes, Availability = 400 ÷ 450 = 88.9%. If ideal cycle time is 1 minute per part and 380 parts were made in those 400 minutes, Performance = (1 × 380) ÷ 400 = 95%. If 365 of those parts were good, Quality = 365 ÷ 380 = 96.1%. OEE = 0.889 × 0.95 × 0.961 = 81.1%.

Planned production time is total available time minus time that was never intended for production — scheduled breaks, planned maintenance, no scheduled shift. It is a policy decision, not a fixed definition: whether a tea break or a changeover counts against it needs to be decided once and applied the same way every period, or OEE numbers across machines or weeks stop being comparable.

A demonstrated, sustainable rate for that part on that machine — not the CAM program's theoretical cycle time. Leave it at the theoretical value and Performance loss absorbs every gap between the program's optimism and reality, which makes the number stop pointing at anything specific. If Performance comes out above 100%, the ideal cycle time is set wrong.

Because they're quietly using different definitions for one of the three inputs — usually planned production time (does a break count?) or ideal cycle time (program value or demonstrated rate?). The formula itself never changes; the disagreement is almost always in what's being fed into it.

Talk to our team

See this on your own machines

A 30-minute call — your controllers, your shift pattern, your numbers.