OEE & Performance
OEE built on real shop-floor data, not best guesses.
Availability × Performance × Quality, computed per machine, per shift, per day. Trace any number back to the inputs that produced it.
WHAT YOU GET
Availability
Run time over planned production time. Planned stoppages (changeover, breaks, scheduled maintenance) are tracked separately, so OEE is not penalised for work that was always going to happen.
Performance
Actual cycle time over the ideal cycle time you set per machine. Surfaces the slow-cycle losses that downtime tracking alone misses, the kind that quietly drops 5 percentage points before anyone notices.
Quality
Good count over total count. Scrap and rework are tracked per machine and per shift, with reason codes that line up with the downtime taxonomy.
TECHNICAL DEPTH
Sample OEE calculation
Real numbers from a one-shift run. Each input traces back to a row in the database that an engineer can verify.
OEE = Availability × Performance × Quality
Availability
(480 − 72) / 480 = 85.0%
Planned 480 minutes, downtime 72 minutes (operator log plus auto-detected), run time 408 minutes.
Performance
(30 × 750) / (408 × 60) = 91.9%
Ideal cycle 30 seconds, total count 750. Performance is the ideal time the line should have taken divided by the run time it actually took.
Quality
720 / 750 = 96.0%
Good count 720, total count 750. Scrap and rework are tracked separately and feed the loss breakdown.
OEE
85.0% × 91.9% × 96.0% = 75.0%
The composite figure that lands on the daily roll-up, alongside the three factors and the four loss-category buckets.
Industry references
Published in the industrial-engineering literature, not measured at our customers. We show them for context, not as a claim about Haltless's results.
- World-Class Manufacturing: ≥ 85%
- Typical Manufacturing: ~ 60%
- Below industry average: < 40%
WHAT IT ALSO DOES
Inputs from real ingestion
Run time from machine status events. Total and good count from OPC UA tag mappings. Downtime from the auto-detected and operator-logged events. No manual data entry.
Daily OEE roll-up
One OEE record per machine per shift per day, persisted with the inputs that produced it. Drill from any number back to the original event stream.
Per-shift comparison
Night shift versus day shift on the same machine. The shift performing worse is one click away from the loss breakdown that explains why.
Loss-category breakdown
Daily and shift-level rollups break OEE into availability, performance, quality, and not-scheduled buckets. The plant manager sees which loss is eating the day in seconds.
Trends over time
Week-over-week and month-over-month deltas per machine. A sparkline on the fleet view shows which machines are improving and which are sliding.
Tag mapping in the open
Ingested raw tags (temperature_raw_1, count_oee_good, etc.) are mapped to standard metrics on a configuration page you can audit and version.
FREQUENTLY ASKED
Where does the ideal cycle time come from?
Configured per machine. It is pulled from the machine spec during onboarding and can be tuned per shift if the product mix changes.
Do I need an MES?
No. Counts come from your existing PLC tags via OPC UA or Modbus TCP, and the downtime log fills in the rest. The platform sits between the controllers and the reporting layer.
Can I exclude planned downtime from OEE?
Yes. The Not Scheduled loss category covers planned breaks, holidays, and demand-driven idle time. They appear in the loss breakdown but do not penalise OEE.