{
  "id": "oee",
  "version": "79b73e34281e",
  "status": "published",
  "name": "OEE Calculator",
  "question": "What is my OEE?",
  "summary": "Works out overall equipment effectiveness (OEE) from planned production time, downtime, ideal cycle time, total parts and good parts: availability × performance × quality.",
  "category": "logistics",
  "url": "https://www.acalculator.org/logistics/oee-calculator",
  "markdown": "https://www.acalculator.org/logistics/oee-calculator.md",
  "kind": "function",
  "method": "Run time = planned production time − downtime. Availability = run time ÷ planned production time. Performance = ideal cycle time × total parts ÷ run time. Quality = good parts ÷ total parts. OEE = availability × performance × quality = good parts × ideal cycle time ÷ planned production time.",
  "assumptions": [
    "Planned production time already leaves out planned breaks and planned stops; downtime is only the unplanned stops inside it.",
    "Good parts are those right the first time; reworked parts count as rejects.",
    "Performance cannot pass 100%: an ideal cycle time that does that is set too long."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "planned": {
        "title": "Planned production time",
        "description": "The time the machine was scheduled to run: the shift less planned breaks and planned stops.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "time",
        "minimum": 1,
        "maximum": 31622400
      },
      "down": {
        "title": "Downtime",
        "description": "Unplanned stops inside the planned time: breakdowns, changeovers, adjustments, waiting for material.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "time",
        "minimum": 0,
        "maximum": 31622400
      },
      "cycle": {
        "title": "Ideal cycle time",
        "description": "The fastest time to make one part, at the machine’s design speed.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "time",
        "minimum": 0.001,
        "maximum": 31622400
      },
      "total": {
        "title": "Total parts made",
        "description": "Every part made in the run time, good parts and rejects.",
        "type": "integer",
        "minimum": 0,
        "maximum": 1000000000000
      },
      "good": {
        "title": "Good parts",
        "description": "Parts that were right the first time, with no scrap or rework.",
        "type": "integer",
        "minimum": 0,
        "maximum": 1000000000000
      }
    }
  },
  "outputs": {
    "oee": {
      "label": "OEE",
      "description": "Availability × performance × quality: good parts × ideal cycle time ÷ planned production time.",
      "format": "percent"
    },
    "availability": {
      "label": "Availability",
      "description": "Run time ÷ planned production time.",
      "format": "percent"
    },
    "performance": {
      "label": "Performance",
      "description": "Ideal cycle time × total parts ÷ run time: the speed against the design speed.",
      "format": "percent"
    },
    "quality": {
      "label": "Quality",
      "description": "Good parts ÷ total parts.",
      "format": "percent"
    },
    "runTime": {
      "label": "Run time",
      "description": "Planned production time − downtime, in minutes.",
      "format": "quantity",
      "unit": "min"
    },
    "productive": {
      "label": "Fully productive time",
      "description": "Good parts × ideal cycle time, in minutes: the time the good parts would take at the ideal speed.",
      "format": "quantity",
      "unit": "min"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "planned": "450 min",
      "down": "45 min",
      "cycle": "30 s",
      "total": 760,
      "good": 741
    },
    "outputs": {
      "oee": 82.33333333333333,
      "availability": 90,
      "performance": 93.82716049382717,
      "quality": 97.5,
      "runTime": 24300,
      "productive": 22230
    },
    "text": "With 90% availability, 93.83% performance and 97.5% quality, OEE is 82.33%."
  },
  "examples": [
    {
      "given": {
        "planned": 60000,
        "down": 6000,
        "cycle": 51.3,
        "total": 1000,
        "good": 990
      },
      "expect": {
        "availability": 90,
        "performance": 95,
        "quality": 99,
        "oee": 84.645
      },
      "source": "Lean Enterprise Institute, Lean Lexicon: Overall Equipment Effectiveness (availability rate × performance rate × quality rate; 90% × 95% × 99% = 84.6%), https://www.lean.org/lexicon-terms/overall-equipment-effectiveness/; hand calculation in content.mdx; Python 3 check in docs/progress/WP-128/xcheck.py"
    },
    {
      "given": {
        "planned": 27000,
        "down": 2700,
        "cycle": 30,
        "total": 760,
        "good": 741
      },
      "expect": {
        "runTime": 24300,
        "availability": 90,
        "performance": 93.82716049382717,
        "quality": 97.5,
        "oee": 82.33333333333333,
        "productive": 22230
      },
      "source": "Lean Enterprise Institute, Lean Lexicon: Overall Equipment Effectiveness (availability rate × performance rate × quality rate; 90% × 95% × 99% = 84.6%), https://www.lean.org/lexicon-terms/overall-equipment-effectiveness/ (the three rates multiplied); hand calculation in content.mdx; Python 3 check in docs/progress/WP-128/xcheck.py"
    },
    {
      "given": {
        "planned": 25200,
        "down": 0,
        "cycle": 60,
        "total": 400,
        "good": 400
      },
      "expect": {
        "availability": 100,
        "quality": 100,
        "performance": 95.23809523809524,
        "oee": 95.23809523809524
      },
      "source": "Lean Enterprise Institute, Lean Lexicon: Overall Equipment Effectiveness (availability rate × performance rate × quality rate; 90% × 95% × 99% = 84.6%), https://www.lean.org/lexicon-terms/overall-equipment-effectiveness/; hand calculation in content.mdx; Python 3 check in docs/progress/WP-128/xcheck.py"
    }
  ],
  "sources": [
    "Lean Enterprise Institute, Lean Lexicon: Overall Equipment Effectiveness (a total productive maintenance measure: availability rate measures downtime losses as a percentage of scheduled time; performance rate measures operating speed losses; quality rate expresses scrap and rework as a percentage of total parts run; availability rate × performance rate × quality rate = OEE; example 0.90 × 0.95 × 0.99 = 84.6%). https://www.lean.org/lexicon-terms/overall-equipment-effectiveness/ (retrieved 2026-10-18)"
  ],
  "related": [
    "takt-time",
    "lead-time"
  ],
  "changelog": []
}
