---
title: "OEE explained: formula and machine data | Citia"
description: "OEE is the share of planned time that makes good parts: Availability × Performance × Quality. See the formula, a worked shift and the data a machine supplies."
url: https://citia-engineering.com/en/knowledge/oee
language: en
updated: 2026-11-13
type: article
site: Citia Engineering Indonesia
---

# OEE explained: formula, examples and the machine data you need

OEE is the share of planned production time that makes good parts at the ideal speed. This guide gives the formula, a worked shift and the machine data needed.

| Field | Value |
| --- | --- |
| Topic | Production Monitoring |
| Author | Tim Engineering Citia |
| Updated | 2026-11-13 |

Key takeaways

OEE (Overall Equipment Effectiveness) is the percentage of planned production time that actually produces good parts at the ideal speed, calculated as Availability × Performance × Quality.

A line with an OEE of 100% would run for all of its planned time, at its fastest proven speed, and make no rejects. Real lines lose time to stops, run below their ideal rate and make some scrap. OEE folds those three losses into one number per machine, line and shift, so a production team can see where output goes and check whether a change helped. This guide gives the formulas, a worked shift, the data a machine has to supply and the points where OEE figures go wrong.

- OEE (Overall Equipment Effectiveness) is the share of planned production time that produces good parts at the ideal speed, calculated as Availability × Performance × Quality.
- Availability counts stops, Performance counts slow running and Quality counts rejects, so one percentage shows where a line loses output.
- OEE needs only a few machine signals: running state, a part counter, a reject count and a reason for each stop.
- An OEE of 85% is a commonly quoted reference, not a target for every plant. Compare a line with its own history and product mix.
- OEE is only as accurate as its master data: ideal cycle time, shift calendar and stop classification must be agreed before anyone trusts the dashboard.

## What OEE measures

OEE tells you how much of the time you planned to produce was used well. It asks three questions about every shift: did the machine run, did it run at speed, and did it make good parts?

Each question matches one family of losses. Breakdowns, changeovers and waits for material reduce Availability. Short stops and reduced speed reduce Performance. Rejects and rework reduce Quality. Lean and TPM literature groups these into the six big losses, and ISO 22400-2 sets out key performance indicators for manufacturing operations management, the family OEE belongs to.

The base is planned production time, which is the shift minus breaks and planned stops. Time when nobody meant to run does not count against the machine. Time lost to missing orders or missing operators is a separate measure, TEEP, covered further down.

- Availability losses: Breakdowns, changeovers, material waits and any stop long enough to log.
- Performance losses: Short stops and slow running: the machine is on, but below its ideal rate.
- Quality losses: Rejects, scrap and rework: parts that miss the specification.

## The formula, one factor at a time

OEE is three ratios multiplied together. Each ratio lies between zero and one, so the product can never be higher than the weakest factor.

Availability is run time divided by planned production time. Run time is planned production time minus stop time.

Performance is what the machine made divided by what it would have made at the ideal rate during run time. The same thing in another form: ideal cycle time times total count, divided by run time.

Quality is good count divided by total count, where good count is total count minus rejects. The definitions follow the form published at oee.com.

- Availability: Run time / Planned production time
- Performance: (Ideal cycle time × Total count) / Run time
- Quality: Good count / Total count
- OEE: Availability × Performance × Quality
- Simple form: (Good count × Ideal cycle time) / Planned production time

## A worked example for one shift

Take one line on one shift and follow the numbers. The figures below are assumed for the example. They are not data from a Citia site.

The shift is 480 minutes. Breaks and planned stops take 80 minutes, so planned production time is 400 minutes. The line stopped for 40 minutes in total, so run time is 360 minutes and Availability is 360 / 400, or 90%.

The ideal rate is two parts per minute. In 360 minutes the line could have made 720 parts, and it made 648. Performance is 648 / 720, or 90%.

Of those 648 parts, 13 were rejected. Good count is 635 and Quality is 635 / 648, about 98%. OEE is 0.90 × 0.90 × 0.98, about 79%. The simple form gives the same answer: 635 / (2 × 400) is 0.79.

Where the planned time goes in the example shift

| Label | Value |
| --- | --- |
| Planned production time | 100 % |
| After availability loss | 90 % |
| After performance loss | 81 % |
| After quality loss (OEE) | 79.4 % |

Source: Worked example in this article, using the formulas published at oee.com

Assumed figures, shown as a percentage of planned production time.

## What a good OEE value looks like

There is no single good OEE. The right target depends on the product, the process and where the line starts.

A figure of 85% is often quoted as the benchmark for discrete manufacturing. According to oee.com, it is built from 90% Availability, 95% Performance and 99% Quality, and it goes back to Seiichi Nakajima, who introduced TPM and OEE. The same page says most manufacturers sit closer to 60%, and that three factors of 90% each multiply to only 73%.

Treat these numbers as a reference point. A batch process with long changeovers and a high-speed packaging line do not share a ceiling. The comparison that helps is the same line against its own last quarter, with the same definitions.

- 85% often quoted as a benchmark OEE, discrete manufacturing oee.com, OEE benchmark page
- 90 / 95 / 99% Availability, Performance and Quality behind that figure oee.com, OEE benchmark page
- 60% closer to where most manufacturers sit, per the same page oee.com, OEE benchmark page
- 73% OEE when all three factors are 90% oee.com, OEE benchmark page

## OEE and TEEP

OEE judges a line against the time you planned to run it. TEEP (Total Effective Equipment Performance) judges it against all the time in the period, nights and weekends included.

According to oee.com, TEEP equals OEE multiplied by Utilization, where Utilization is planned production time divided by all time. A line with a high OEE and a low TEEP is run well when it runs but sits idle for much of the calendar. That points to a sales or scheduling question, not a maintenance one.

- Time base: Planned production time | All calendar time in the period
- Losses counted: Stops, slow running, rejects | The same, plus schedule losses
- Formula: Availability × Performance × Quality | OEE × Utilization
- Question it answers: Is the line run well when it is scheduled? | How much of the installed capacity do we use?

## The machine data OEE needs

OEE needs four signals from a machine: is it running, how many parts did it make, how many were rejected, and why did it stop. Everything else is calculation.

Running state usually comes from the machine PLC or from a contact on the line. The part counter comes from the PLC or from a photoelectric or proximity sensor at the end of the process. Rejects come from a reject counter, a vision system or manual entry. The stop reason is the hard one. The PLC knows that the machine stopped and sometimes which alarm tripped, but only the operator knows whether it was a changeover, a jam or a wait for material.

Three items of master data sit beside the signals: the ideal cycle time for each product, the shift calendar with planned breaks, and a table that maps PLC status codes to running, idle, stopped or alarm. Without them, the same raw data gives different OEE on different dashboards.

Timestamp every count at the source, not when the dashboard receives it. A network delay otherwise moves minutes from one shift to the next. The polling interval must also be shorter than the shortest stop you want to see, or micro-stops vanish into Performance without a trace.

Citia describes this path on its Factory OEE Solution page, where the CATALYST CT-OG gateway collects status and counts from PLCs, controllers and sensors. A delivered example is the machine connectivity and OEE project at PT Rich’s Product Manufacturing Indonesia in Serang, Banten. There PLCs, Advantech EdgeLink and the iFactory platform feed OEE, line comparison and alarm analysis.

For the protocols between machines and gateways, see OPC UA, Modbus and MQTT compared and the industrial IoT gateway guide .

- Sensors: Photoelectric, proximity and counter signals from the line.
- PLC / controller: Machine state, cycles, counts and alarms.
- Data gateway: Collects status and counts and passes them to the OEE application.
- OEE dashboard: Availability, Performance, Quality and OEE per machine, line and shift.
- ERP / MES: Orders in, production results out.

## Starting OEE measurement on one line

Start with one line, not the whole plant. A single line with a known bottleneck gives you a baseline within a few weeks and shows which master data is missing.

Agree the definitions first. Write down the rules for planned production time, the ideal cycle time for each product and the list of stop reasons, and have production, maintenance and quality sign them. Then connect the signals, run the system next to a manual count for a week, and close any gap before you publish numbers.

Review the loss picture each week, not only the OEE figure. Two lines with the same OEE can lose output in very different places: one to changeovers, the other to short stops. The fix differs, and only the breakdown by loss shows it. A ranking of stop reasons by lost minutes is usually the first report worth reading.

- Pick one line and one product family: Choose a line with a known bottleneck so the first results are easy to check.
- Agree the master data: Planned time rules, ideal cycle times, status mapping and stop reasons, signed by production, maintenance and quality.
- Connect the four signals: Running state, part count, reject count and stop reason, timestamped at the source.
- Run beside a manual count: Compare for a week and fix every gap before anyone sees the dashboard.
- Review losses weekly: Rank stop reasons by lost minutes and pick one action per week.

## Where OEE figures go wrong

A dashboard can show a precise OEE that is wrong. The error is almost never in the arithmetic. It is in the inputs.

The notes on the Rich’s project list the controls that matter. Production-per-hour values, shift schedules, status classification and the OEE formula must be agreed as official master data. Manual alarm and defect entry can be late, misclassified or altered, so edit and delete rights should be limited and logged. Manual alarms must be closed on time, or downtime is counted twice. Dashboard figures should be reconciled with production records, quality data and maintenance reports on a regular schedule.

If Performance ever exceeds 100%, the ideal cycle time was set too high, according to oee.com. And a higher OEE does not automatically mean a better business result. Link it to throughput, good output, downtime, production cost and market demand. Raising OEE on a product nobody orders improves nothing.

Field tip: run one shift by hand: Before you trust a new dashboard, count one shift with a clipboard and compare it with the system. If the manual count and the PLC count disagree by more than a small margin, fix the counter source or the sensor first, then look at the formula.

## Terms used in this article

- OEE: Overall Equipment Effectiveness: Availability × Performance × Quality.
- Availability: The share of planned production time in which the machine actually ran.
- Performance: Actual output compared with the output at the ideal rate during run time.
- Quality: Good parts divided by all parts made.
- Planned production time: Shift length minus breaks and planned stops.
- Ideal cycle time: The fastest cycle time the process can achieve in optimal conditions.
- TEEP: Total Effective Equipment Performance: OEE × Utilization, measured against all calendar time.
- Downtime reason code: A short code the operator picks to say why the machine stopped.

## Frequently asked questions

Q: What is a good OEE value?

A: There is no single good value, but 85% is often quoted as the benchmark for discrete manufacturing. Most manufacturers sit closer to 60%, according to oee.com. Set the target from the line’s own history and product mix.

Q: What data do I need to calculate OEE?

A: You need the running state, a part counter, a reject count and a stop reason. You also need the ideal cycle time per product and the shift calendar. The PLC or a sensor at the end of the line usually supplies the first three.

Q: What is the difference between OEE and TEEP?

A: OEE is measured against planned production time, while TEEP is measured against all calendar time. TEEP equals OEE multiplied by Utilization, so it also shows the time nobody planned to run.

Q: How do I calculate OEE for one shift?

A: Multiply Availability, Performance and Quality for that shift. Availability is run time divided by planned production time, Performance is actual count against the ideal-rate count, and Quality is good count divided by total count.

Q: Can OEE be above 100%?

A: No. If a factor comes out above 100%, an input is wrong, most often an ideal cycle time that is set too high or a counter that double counts.

Q: Do I need a PLC to measure OEE?

A: No, but a PLC makes it easier. A sensor at the end of the line plus a running signal gives Availability and a count, and the operator can enter stop reasons on a screen.

## Sources and further reading

1. OEE Calculation: Definitions, Formulas, and Examples, Vorne Industries, oee.com (https://www.oee.com/calculating-oee/)
2. World-Class OEE, Vorne Industries, oee.com (https://www.oee.com/world-class-oee/)
3. TEEP: Total Effective Equipment Performance, Vorne Industries, oee.com (https://www.oee.com/teep/)
4. Factory OEE Solution, Citia (https://citia-engineering.com/en/products/factory-oee)
5. Rich machine connectivity & OEE, Citia (https://citia-engineering.com/en/projects/rich-machine-connectivity)
6. Cover photo by Marek Ślusarczyk (Tupungato) Photo portfolio, CC BY 3.0 (cropped and colour graded), Wikimedia Commons (https://commons.wikimedia.org/wiki/File:001_Car_factory_assembly_line_-_Opel_factory_in_Gliwice,_Poland.jpg)

Planning to measure OEE on your lines?: Tell siTia on WhatsApp which machines and PLCs you run, and a Citia engineer will reply.

## Contact

- Company: PT Citia Engineering Indonesia
- siTia - Virtual Assistance: [WhatsApp +62 813-2206-507](https://wa.me/628132206507). siTia answers questions about our products, projects and enquiries on WhatsApp. Replies are automated, and a person from the Citia team follows up.
- Email: services@citiaengineering.com
- Phone / WhatsApp (siTia): +62 813-2206-507
- Location: Bandung, Indonesia

[Contact Citia](https://citia-engineering.com/en/contact.md)

## Structured data (JSON-LD)

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://citia-engineering.com/#organization",
      "name": "Citia Engineering Indonesia",
      "legalName": "PT Citia Engineering Indonesia",
      "alternateName": "Citia",
      "url": "https://citia-engineering.com",
      "logo": {
        "@type": "ImageObject",
        "url": "https://citia-engineering.com/media/citia-logo.png",
        "width": 950,
        "height": 328
      },
      "description": "Citia is an engineering and system integration company in Bandung, Indonesia. We connect field devices, PLC and SCADA, terminal software and enterprise systems, then install, test and maintain them.",
      "email": "services@citiaengineering.com",
      "telephone": "+62 813-2206-507",
      "address": {
        "@type": "PostalAddress",
        "addressLocality": "Bandung",
        "addressRegion": "Jawa Barat",
        "addressCountry": "ID"
      },
      "contactPoint": [
        {
          "@type": "ContactPoint",
          "contactType": "customer service",
          "email": "services@citiaengineering.com",
          "telephone": "+62 813-2206-507",
          "url": "https://citia-engineering.com/en/contact"
        },
        {
          "@type": "ContactPoint",
          "contactType": "customer support",
          "name": "siTia - Virtual Assistance",
          "telephone": "+62 813-2206-507",
          "url": "https://wa.me/628132206507",
          "areaServed": "ID",
          "availableLanguage": [
            "id",
            "en"
          ]
        }
      ],
      "areaServed": {
        "@type": "Country",
        "name": "Indonesia"
      },
      "knowsAbout": [
        "Terminal automation system",
        "Automatic tank gauging",
        "Tank management system",
        "SCADA",
        "Programmable logic controller",
        "Modbus",
        "Field instrumentation",
        "Weighbridge",
        "Pipeline pressure monitoring",
        "Industrial IoT"
      ],
      "brand": [
        {
          "@type": "Brand",
          "name": "INTEGRA"
        },
        {
          "@type": "Brand",
          "name": "CATALYST"
        }
      ],
      "sameAs": [
        "https://www.facebook.com/citiaengineering/",
        "https://www.instagram.com/citiaengineering/"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://citia-engineering.com/#website",
      "url": "https://citia-engineering.com",
      "name": "Citia Engineering Indonesia",
      "inLanguage": [
        "en",
        "id"
      ],
      "publisher": {
        "@id": "https://citia-engineering.com/#organization"
      },
      "potentialAction": [
        {
          "@type": "SearchAction",
          "name": "Search Citia News",
          "target": {
            "@type": "EntryPoint",
            "urlTemplate": "https://citia-engineering.com/en/news?q={search_term_string}"
          },
          "query-input": "required name=search_term_string"
        },
        {
          "@type": "SearchAction",
          "name": "Cari di News Citia",
          "target": {
            "@type": "EntryPoint",
            "urlTemplate": "https://citia-engineering.com/id/news?q={search_term_string}"
          },
          "query-input": "required name=search_term_string"
        }
      ]
    },
    {
      "@type": "WebPage",
      "@id": "https://citia-engineering.com/en/knowledge/oee#webpage",
      "url": "https://citia-engineering.com/en/knowledge/oee",
      "name": "OEE explained: formula, examples and the machine data you need",
      "description": "OEE is the share of planned time that makes good parts: Availability × Performance × Quality. See the formula, a worked shift and the data a machine supplies.",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://citia-engineering.com/#website"
      },
      "publisher": {
        "@id": "https://citia-engineering.com/#organization"
      },
      "about": {
        "@id": "https://citia-engineering.com/#organization"
      },
      "breadcrumb": {
        "@id": "https://citia-engineering.com/en/knowledge/oee#breadcrumb"
      },
      "dateModified": "2026-11-13",
      "mainEntity": {
        "@id": "https://citia-engineering.com/en/knowledge/oee#entity"
      }
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://citia-engineering.com/en/knowledge/oee#breadcrumb",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Citia",
          "item": "https://citia-engineering.com/en"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Knowledge",
          "item": "https://citia-engineering.com/en/knowledge"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "OEE explained: formula, examples and the machine data you need",
          "item": "https://citia-engineering.com/en/knowledge/oee"
        }
      ]
    },
    {
      "@id": "https://citia-engineering.com/en/knowledge/oee#entity",
      "url": "https://citia-engineering.com/en/knowledge/oee",
      "mainEntityOfPage": {
        "@id": "https://citia-engineering.com/en/knowledge/oee#webpage"
      },
      "@type": "TechArticle",
      "headline": "OEE explained: formula, examples and the machine data you need",
      "description": "OEE is the share of planned production time that makes good parts at the ideal speed. This guide gives the formula, a worked shift and the machine data needed.",
      "dateModified": "2026-11-13",
      "author": {
        "@id": "https://citia-engineering.com/#organization"
      },
      "publisher": {
        "@id": "https://citia-engineering.com/#organization"
      },
      "inLanguage": "en",
      "articleSection": "Production Monitoring",
      "datePublished": "2026-11-13",
      "image": "https://citia-engineering.com/media/covers/oee.webp"
    },
    {
      "@type": "FAQPage",
      "@id": "https://citia-engineering.com/en/knowledge/oee#faq",
      "url": "https://citia-engineering.com/en/knowledge/oee",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://citia-engineering.com/en/knowledge/oee#webpage"
      },
      "mainEntity": [
        {
          "@type": "Question",
          "name": "What is a good OEE value?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "There is no single good value, but 85% is often quoted as the benchmark for discrete manufacturing. Most manufacturers sit closer to 60%, according to oee.com. Set the target from the line’s own history and product mix."
          }
        },
        {
          "@type": "Question",
          "name": "What data do I need to calculate OEE?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "You need the running state, a part counter, a reject count and a stop reason. You also need the ideal cycle time per product and the shift calendar. The PLC or a sensor at the end of the line usually supplies the first three."
          }
        },
        {
          "@type": "Question",
          "name": "What is the difference between OEE and TEEP?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "OEE is measured against planned production time, while TEEP is measured against all calendar time. TEEP equals OEE multiplied by Utilization, so it also shows the time nobody planned to run."
          }
        },
        {
          "@type": "Question",
          "name": "How do I calculate OEE for one shift?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Multiply Availability, Performance and Quality for that shift. Availability is run time divided by planned production time, Performance is actual count against the ideal-rate count, and Quality is good count divided by total count."
          }
        },
        {
          "@type": "Question",
          "name": "Can OEE be above 100%?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No. If a factor comes out above 100%, an input is wrong, most often an ideal cycle time that is set too high or a counter that double counts."
          }
        },
        {
          "@type": "Question",
          "name": "Do I need a PLC to measure OEE?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No, but a PLC makes it easier. A sensor at the end of the line plus a running signal gives Availability and a count, and the operator can enter stop reasons on a screen."
          }
        }
      ]
    },
    {
      "@type": "DefinedTermSet",
      "@id": "https://citia-engineering.com/en/knowledge/oee#glossary",
      "url": "https://citia-engineering.com/en/knowledge/oee",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://citia-engineering.com/en/knowledge/oee#webpage"
      },
      "name": "Terms used in this article",
      "hasDefinedTerm": [
        {
          "@type": "DefinedTerm",
          "name": "OEE",
          "description": "Overall Equipment Effectiveness: Availability × Performance × Quality.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Availability",
          "description": "The share of planned production time in which the machine actually ran.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Performance",
          "description": "Actual output compared with the output at the ideal rate during run time.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Quality",
          "description": "Good parts divided by all parts made.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Planned production time",
          "description": "Shift length minus breaks and planned stops.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Ideal cycle time",
          "description": "The fastest cycle time the process can achieve in optimal conditions.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "TEEP",
          "description": "Total Effective Equipment Performance: OEE × Utilization, measured against all calendar time.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        },
        {
          "@type": "DefinedTerm",
          "name": "Downtime reason code",
          "description": "A short code the operator picks to say why the machine stopped.",
          "inDefinedTermSet": {
            "@id": "https://citia-engineering.com/en/knowledge/oee#glossary"
          }
        }
      ]
    }
  ]
}
```
