Manufacturing KPIs with formulas and worked examples
21 production KPIs, each with one formula, one unit and a worked example from the same lathe shift, plus the denominator traps that make two reports disagree.
A plant should track the production KPIs that answer its own questions about time, speed, quality and delivery: uptime and downtime, the three OEE factors, cycle time against takt, first pass yield and scrap, and schedule attainment and OTIF. You calculate each one as a ratio of measured minutes, parts or orders, and two reports agree only when both write the denominator down.
This reference gives 21 KPIs one formula, one unit and one worked example each. Every example uses the same lathe shift, so you can check each number against the others.
Key takeaways
- A KPI is usable only when its formula, unit, denominator and period are written down beside the number.
- OEE multiplies availability, performance and quality, and good count × ideal cycle time ÷ planned time checks the product.
- To check whether a machine meets demand, compare takt time with planned time per good part, not with its ideal or actual cycle time.
- First pass yield counts reworked parts as failures, and a line’s rolled yield is the product of its step yields.
- Roll KPIs up by adding minutes, parts and orders before you divide, never by averaging percentages.
What a KPI definition must state#
Definition
Manufacturing KPI (key performance indicator) is a ratio of measured shop-floor quantities, such as minutes, parts or orders, tracked against a target over a fixed period, with its formula, unit and denominator written down so that every report computes it the same way.
A KPI with a name and no written formula drifts. Two supervisors who both report “availability” can divide by different times and both be right. Write four things beside every KPI:
- Formula: the ratio, in words, with each term defined.
- Unit: %, minutes, seconds per part, parts per hour or orders.
- Base: what sits in the denominator and what is left out, such as lunches, changeovers or offline time.
- Period: the shift, day, week or month the ratio covers.
The base is where plants split. Even OEE has no single published form: an academic review found that the versions in the ISO 22400 standard diverge from each other and from Nakajima’s original TPM formulation.[6] This article follows one written convention and states it in each section.
Worked example
The shift every example uses
- Machine: a Haas ST-20 CNC lathe on one 8-hour shift, 480 minutes, with a 30-minute lunch.
- Stops: an 18-minute coolant pump fault, a 22-minute changeover and 10 minutes waiting for bar stock, 50 minutes in all.
- Ideal cycle time: 54 seconds (0.9 minutes) per part.
- Count: 400 parts made. 388 passed inspection the first time, 4 were reworked and passed, and 8 were scrapped.
- Demand: the customer needs 375 parts a day, and the lathe runs one shift a day.
Every KPI below comes from six measured inputs. If an input is missing, the KPIs that need it can’t be computed, no matter what the software shows.
| Input | KPIs that use it |
|---|---|
| Shift calendar and planned stops | Every time-based KPI |
| Running and stopped state | Uptime, downtime, availability |
| Total part count | Performance, cycle time, throughput |
| Good, reworked and scrapped count | Quality, FPY, scrap rate |
| Ideal cycle time per operation | Performance, OEE, TEEP |
| Due dates, orders and completions | Schedule attainment, OTIF |
Time KPIs: uptime, downtime and utilization#
Time KPIs need only a running or stopped signal and the shift calendar. They are the first numbers you can trust, because no part count or cycle time feeds them.
| KPI | Formula | Unit | Lathe shift |
|---|---|---|---|
| Uptime | Running ÷ (running + stopped) | % of shift | 400 ÷ 480 = 83.3% |
| Downtime | Sum of stopped time | Minutes | 80 min, 30 of it lunch |
| Utilization, calendar | Running ÷ calendar time | % | 400 ÷ 1,440 = 27.8% |
Uptime is the share of shift time a machine spends running. It counts every stop inside the shift, planned or not, so the 30-minute lunch pulls the lathe down to 83.3%.
Track downtime as minutes, a count of stops and a reason for each. The lathe lost 50 minutes to three stops inside planned time, and the 22-minute changeover is the largest.
A minute total with no reasons tells you how much time went, but not where to look. To put a price on those minutes, follow the method in what an hour of downtime costs.
Utilization has the most meanings of any word here. Calendar utilization divides running time by every hour in the period, so a one-shift lathe that runs well still reads 27.8%. The machine utilization guide works one machine through four denominators.
National capacity utilization is a different measure again. The Federal Reserve reports US manufacturing at 75.7% for August 2026, output against sustainable capacity across the whole economy, against a 1972–2025 average of 78.2%.[9] It says nothing about how long any one machine ran.
OEE, its three factors and TEEP#
OEE multiplies three factors: availability, performance and quality.[1] Each factor removes one kind of loss, so a single OEE number hides which loss is largest. Report the factors beside it.
OEE =
Availability × Performance × Quality
Planned production time is the shift minus time with no intention to produce, such as breaks. Under the convention this article follows, changeovers stay inside planned production time and count as stop time, so they lower availability.[1]
| KPI | Formula | Unit | Lathe shift |
|---|---|---|---|
| Availability | Run time ÷ planned production time | % | 400 ÷ 450 = 88.9% |
| Performance | Ideal cycle × total count ÷ run time | % | 360 ÷ 400 = 90.0% |
| Quality | Good count ÷ total count | % | 388 ÷ 400 = 97.0% |
| OEE | Availability × performance × quality | % | 77.6% |
| TEEP | OEE × planned time ÷ calendar time | % | 0.776 × 0.3125 = 24.3% |
Worked example
OEE for the lathe shift, computed two ways
- Availability: 400 ÷ 450 = 0.8889.
- Performance: 400 parts × 0.9 min = 360 ideal minutes, and 360 ÷ 400 = 0.900.
- Quality: 388 ÷ 400 = 0.970.
- Product: 0.8889 × 0.900 × 0.970 = 0.776.
- Check: good count × ideal cycle time ÷ planned production time = 388 × 0.9 ÷ 450 = 349.2 ÷ 450 = 0.776.
Always run the short form as a check. It uses only the good count, the ideal cycle time and planned production time, so an arithmetic slip in any factor shows up as a mismatch.[1] The step-by-step OEE method covers each factor in more depth.
Two quality rules decide whether OEE means anything. Good parts are parts that pass the first time, so the 4 reworked parts count as losses. And performance above 100% doesn’t mean the machine is fast: it means the ideal cycle time is set too slow.[1]
TEEP (total effective equipment performance) multiplies OEE by planned production time over all calendar time; some references call that second term utilization.[2] The lathe’s 450 planned minutes are 31.25% of the day, so TEEP is 24.3%. That is a one-shift schedule, not a failing machine, and the TEEP and calendar breakdown shows how the shift pattern sets its ceiling.
Flow KPIs: cycle time, takt and throughput#
Flow KPIs ask whether the machine keeps pace with demand. Three of them are durations per part, and one is a rate.
| KPI | Formula | Unit | Lathe shift |
|---|---|---|---|
| Actual cycle time | Run time ÷ total count | s per part | 24,000 s ÷ 400 = 60 s |
| Takt time | Available time ÷ customer demand | s per part | 27,000 s ÷ 375 = 72 s |
| Time per good part | Planned time ÷ good count | s per part | 27,000 s ÷ 388 = 69.6 s |
| Throughput | Good count ÷ shift hours | Parts per hour | 388 ÷ 8 h = 48.5 |
Cycle time is the time to produce a part or complete a process, as timed by actual measurement.[4] The lathe’s actual cycle is 60 seconds against a 54-second ideal. That 6-second gap per part is the 10% performance loss, made of slow cycles and the micro-stops too short to log.
Definition
Takt time is the available production time divided by customer demand: the pace at which a process must finish one unit to meet the demand exactly, set by the customer and the schedule rather than by the machine.
A plant that runs 480 minutes a day for a demand of 240 widgets has a takt time of 2 minutes.[3] For the lathe, 450 available minutes and 375 parts give 72 seconds.
Takt time =
To check whether the lathe meets demand, compare takt with planned time per good part, not with a cycle time. The 54-second ideal and the 60-second actual both look comfortable against 72 seconds, but neither counts stops or scrap. Planned time per good part counts both: 69.6 seconds, 2.4 seconds inside takt, with 13 parts to spare on the day.
Machines that load by hand need one more adjustment. The effective machine cycle time adds load and unload time and the changeover spread over the batch: a 20-second cycle with 30 seconds of load and unload and a 30-second changeover every 30 pieces runs at 51 seconds a part.[4]
Write the unit beside throughput every time. The same lexicon uses throughput time as another name for production lead time, a duration, while throughput on a shop floor usually means a rate in parts per hour.[4]
Quality KPIs: first pass yield, scrap and rolled yield#
Quality KPIs count parts, not time. The question each one answers is which parts you count as good, and when.
Definition
First pass yield (FPY) is the share of units that come through a process step right the first time, with no rework and no scrap: good-first-time units divided by units started at that step.
The IoTFlows glossary entry for first pass yield applies the idea down a line: each step’s good count against Step 1’s, so the last step reads how much of Step 1’s output reached the end of the line. FPY is the quality factor OEE uses, because rework counts as a loss in OEE quality.[1]
| KPI | Formula | Unit | Lathe shift |
|---|---|---|---|
| First pass yield | Good first time ÷ units started | % | 388 ÷ 400 = 97.0% |
| Final yield | Good after rework ÷ units started | % | 392 ÷ 400 = 98.0% |
| Scrap rate | Scrapped ÷ units started | % | 8 ÷ 400 = 2.0% |
| Rolled throughput yield | Product of every step’s FPY | % | 0.970 × 0.960 × 0.990 = 92.2% |
Final yield and scrap rate leave rework out of sight. The lathe’s 98.0% final yield hides 4 parts that took a second pass of labor and machine time. Report FPY when you want to see that cost, and final yield when you want to see what ships.
The first pass yield guide works through why OEE quality and the scrap rate disagree.
Rolled throughput yield (RTY) is the probability that a unit passes every step of a process the first time, calculated by multiplying the yield of every step together.[5] In iSixSigma’s example, four steps that each fail 15% of units first time give an RTY of 52.2%.[5]
Rolled throughput yield =
FPY step 1 × FPY step 2 × … × FPY step n
Add a mill at 96.0% and an inspection station at 99.0% after the lathe. Each step reads 96% or better, yet the line’s RTY is 92.2%: of 1,000 bars started, about 922 come out without rework or scrap.
Delivery KPIs: schedule attainment and OTIF#
Delivery KPIs count jobs and orders against dates. No standard fixes their formulas, so pick a unit and write it down.
| KPI | Formula | Unit | Example week or month |
|---|---|---|---|
| Schedule attainment, jobs | Jobs done by due date ÷ jobs due | % | 21 ÷ 24 = 87.5% |
| Schedule attainment, units | Units done by due date ÷ units due | % | 8,880 ÷ 9,600 = 92.5% |
| OTIF | Orders on time and in full ÷ orders | % | 102 ÷ 120 = 85.0% |
Schedule attainment is the share of scheduled work finished by its due date. The same week reads 87.5% by jobs and 92.5% by units, because the three late jobs were small. Measure by jobs when each job is a separate customer promise, and by units when the cell runs a few long orders.
A schedule built on programmed cycle times misses before the first job starts. Plan on the measured rate instead, as covered in scheduling on real run rates.
OTIF (on time, in full) is the share of orders delivered both on time and in full. Count the orders that meet both conditions. Don’t multiply the two rates.
Worked example
One month of shipped orders
- Orders: 120. On time: 108 (90.0%). In full: 111 (92.5%). Both on time and in full: 102.
- Late or short: 18 orders. 12 were late and 9 were short, so 3 orders were both.
- Wrong: 0.900 × 0.925 = 83.3%. Multiplying assumes late orders and short orders are unrelated, which would predict about 1 order that was both, not 3.
Check your customer’s rulebook before you report OTIF. Customers define “on time” differently, for example against a requested date or a promised date, and inside different delivery windows.
Reliability KPIs: MTBF and MTTR#
Reliability KPIs come from the same stop log as downtime, filtered to failures. Decide first what counts as a failure: the coolant pump fault does, but the changeover and the wait for bar stock don’t.
| KPI | Formula | Unit | Lathe quarter |
|---|---|---|---|
| MTBF | Operating time ÷ number of failures | Hours | 420 ÷ 4 = 105 h |
| MTTR | Repair time ÷ number of repairs | Hours | 6 ÷ 4 = 1.5 h |
| Inherent availability | MTBF ÷ (MTBF + MTTR) | % | 105 ÷ 106.5 = 98.6% |
MTBF (mean time between failures) applies to equipment you repair and return to service. MTTF (mean time to failure) is the same ratio for parts you replace, and the two aren’t interchangeable.[7]
A 105-hour MTBF doesn’t mean the lathe can count on 105 hours between failures. Under a constant failure rate, the chance of reaching the MTBF without a failure is about 37%.[8] The same model gives a 93.8% chance of getting through one shift’s 400 running minutes with no failure, since e^(−6.67 ÷ 105) = 0.938.
Report the longest repair beside MTTR. A quarter of four 1.5-hour repairs and a quarter of three 30-minute repairs and one 4.5-hour repair share a 1.5-hour mean, but only the second quarter had a machine down for most of a shift.
Measure production KPIs from the machine#
IoTFlows puts a sensor on each machine that decides running or stopped every second and counts parts from the machine’s own cycle, with no PLC connection. Uptime is running time over running plus stopped inside your shifts, and time the sensor was offline stays out of both terms. With lunch set to None severity and Exclude None on in the Advanced Report, uptime reads on the availability base.
Performance reads against the ideal cycle time, and quality comes from the scrap your team logs with a reason, so you read OEE factor by factor. Each formula is in the metrics reference.
On a line, a cascading group reads each step’s count against the first step’s. Altium Packaging reads first pass yield and the bottles lost at every step of its ten bottling lines as they happen.
Production Scheduler Insights reports which scheduled work finished by its due date.
Which KPIs to track first#
Start from the question you need answered this month, then take the KPI that answers it and the inputs it needs.
| Your question | Start with | Inputs you need |
|---|---|---|
| Are the machines running? | Uptime and downtime | Run and stop signal, shifts |
| Where did the time go? | Downtime by reason | A reason on each stop |
| Do we keep up with demand? | Time per good part against takt | Good counts, daily demand |
| How well do scheduled hours run? | Availability, performance, quality | Counts, ideal cycle times |
| Where are parts lost? | FPY by step and RTY | Counts at every step |
| Will we ship on time? | Schedule attainment and OTIF | Due dates, completions |
Before any KPI goes on a wall or into a customer report:
- Write the base beside the number: “77.6% OEE on 450 planned minutes”, not “77.6%”.
- Name the convention for changeovers, planned maintenance and rework, and keep it the same in every trend.
- Show the factors beside OEE, and FPY beside final yield.
- Roll up by adding minutes, parts and orders, then divide once.
- Keep offline time out of every time-based KPI, and fix the connection that caused it.
Questions#
How many production KPIs should a plant track?#
Track as many as you have decisions for, and no more. Start with uptime and downtime by reason, add the three OEE factors once parts are counted against an ideal cycle time, and add first pass yield and schedule attainment when quality and delivery are the questions. A KPI nobody acts on in a weekly review is a number to drop.
What is the difference between uptime and availability?#
Both divide running time by a slice of the shift. Uptime divides by everything inside the shift, so a lunch counts as stopped time. OEE availability divides by planned production time, which leaves the lunch out. On the same lathe shift, 400 running minutes give 83.3% uptime over 480 minutes and 88.9% availability over 450.
Is utilization one of the OEE factors?#
No. The three OEE factors are availability, performance and quality. Utilization in the TEEP sense is planned production time divided by calendar time, and it multiplies OEE to give TEEP. On shop-floor reports, utilization often means running time over available time, which is a fourth meaning, so always write down the denominator.
Why does my OEE differ from another plant’s?#
Two plants rarely define planned production time, changeovers, ideal cycle time and good parts the same way. Take the changeover out of planned production time and count the 4 reworked parts as good, and the same lathe shift reads 82.4% OEE instead of 77.6%. Compare a machine with its own history under one written convention before you compare plants.
Written by
Data Analytics Team, IoTFlows
Sources#
- OEE Calculation: Definitions, Formulas, and Examples, Vorne Industries (OEE.com). Accessed Oct 16, 2026
oee.com/calculating-oee - TEEP: Calculate Total Effective Equipment Performance, Vorne Industries (OEE.com). Accessed Oct 16, 2026
oee.com/teep - Takt Time (Lean Lexicon), Lean Enterprise Institute. Accessed Oct 16, 2026
lean.org/lexicon-terms/takt-time - Cycle Time (Lean Lexicon), Lean Enterprise Institute. Accessed Oct 16, 2026
lean.org/lexicon-terms/cycle-time - What is Rolled Throughput Yield (RTY)?, iSixSigma. Accessed Oct 16, 2026
isixsigma.com/dictionary/rolled-throughput-yield-rty - Overall Equipment Effectiveness: consistency of ISO standard with literature (Schiraldi and Varisco, Computers & Industrial Engineering 145, 106518, 2020), University of Rome Tor Vergata institutional repository. Accessed Oct 16, 2026
art.torvergata.it/handle/2108/280082 - Maintenance and Reliability KPI Reference, Reliamag. Accessed Oct 16, 2026
reliamag.com/guides/maintenance-reliability-kpi-reference - MTBF: Misinterpreted and Misused, Reliabilityweb. Accessed Oct 16, 2026
reliabilityweb.com/mtbf-misinterpreted-and-misused - Industrial Production and Capacity Utilization, G.17 (release of September 18, 2026), Federal Reserve. Accessed Oct 16, 2026
federalreserve.gov/releases/g17/current/default.htm
