OEE Quick Diagnosis Workbook

Interactive workbook to measure OEE reliably, map top losses by category, run prioritized experiments, and capture sustainment handovers. Collects run data, guides correct OEE calculations, records loss-detail entries, tracks up to three rapid experiments, and stores a short sustainment checklist and handover notes.

{ "Title": "OEE Quick Diagnosis Workbook", "IntroductionHtml": "

Welcome

This workbook helps teams capture reliable OEE inputs, map the top availability/performance/quality losses, run prioritized experiments, and record sustainment handover steps. Use this interactive form during a short improvement huddle or while validating data on the shop floor.

Quick example (filled)

Run: Line 2, Day shift. Planned production time = 480 min. Downtime = 60 min → Availability = (480-60)/480 = 0.875 (87.5%). Total pieces = 9,600, Ideal cycle = 3 sec = 0.05 min → Performance = (0.05*9,600)/(420) = 1.14 → capped at 1.0 (100%). Good pieces = 9,360 → Quality = 9,360/9,600 = 0.975 (97.5%). OEE ≈ 0.875 * 1.00 * 0.975 = 0.85 (85%).

This form stores your entries so you can compare before/after runs, prioritize losses, and track experiments. If you want automatic calculations and dashboards later, see the CapabilityEnhancementNotes below.

", "SubmitLabel": "Save Workbook Entry", "SuccessMessage": "Workbook saved. You can reopen and update this entry when you have experiment results.", "DataType": "oee-quick-diagnosis.v1", "SchemaVersion": "1.0", "Fields": [ { "Key": "run_identity_date", "FieldType": "text", "Label": "Record name / Run identifier (date, line, shift)", "HelpText": "Give this entry a short name you will recognize later, e.g. 'Line2_2026-08-01_Day'.", "Required": true }, { "Key": "line_or_cell", "FieldType": "text", "Label": "Line / cell / machine", "HelpText": "Which production line, cell or machine is this run on?", "Required": true }, { "Key": "shift", "FieldType": "select", "Label": "Shift", "HelpText": "Select the shift for this entry.", "Options": [ {"Value": "day", "Label": "Day"}, {"Value": "swing", "Label": "Swing"}, {"Value": "night", "Label": "Night"}, {"Value": "other", "Label": "Other"} ], "Required": true }, { "Key": "operator_or_owner", "FieldType": "text", "Label": "Operator / owner", "HelpText": "Name of the operator or CI owner for follow-up.", "Required": false }, { "Key": "planned_production_time_min", "FieldType": "number", "Label": "Planned production time (minutes)", "HelpText": "Total scheduled production time for the period being measured (minutes).", "Required": true }, { "Key": "downtime_minutes", "FieldType": "number", "Label": "Total downtime (minutes)", "HelpText": "Minutes the line was stopped for any reason during the planned production time.", "Required": true }, { "Key": "run_time_minutes", "FieldType": "number", "Label": "Run time (minutes)", "HelpText": "Run Time = Planned production time - Downtime. Enter value or leave blank to compute externally.", "Required": false }, { "Key": "total_pieces_produced", "FieldType": "number", "Label": "Total pieces produced", "HelpText": "All parts produced (including scrap and rework).", "Required": true }, { "Key": "good_pieces", "FieldType": "number", "Label": "Good pieces (first-pass quality)", "HelpText": "Parts that meet quality criteria without rework.", "Required": true }, { "Key": "ideal_cycle_time_sec", "FieldType": "number", "Label": "Ideal cycle time (seconds per part)", "HelpText": "The theoretical fastest consistent cycle time for this product/line (seconds).", "Required": true }, { "Key": "availability_percent", "FieldType": "number", "Label": "Availability (%)", "HelpText": "Formula: Availability = Run Time / Planned Production Time. Enter as percentage (0–100). If you calculated it elsewhere, paste the value. Example: 87.5", "Required": false }, { "Key": "performance_percent", "FieldType": "number", "Label": "Performance (%)", "HelpText": "Formula: Performance = (Ideal Cycle Time * Total Pieces) / Run Time (in same time units). Convert to percentage (cap at 100%). Enter as percent (0–100).", "Required": false }, { "Key": "quality_percent", "FieldType": "number", "Label": "Quality (%)", "HelpText": "Formula: Quality = Good Pieces / Total Pieces. Enter as percent (0–100).", "Required": false }, { "Key": "oee_percent", "FieldType": "number", "Label": "OEE (%)", "HelpText": "OEE = Availability * Performance * Quality (as decimals). Enter OEE as percent (0–100).", "Required": false }, { "Key": "loss_mapping_instructions", "FieldType": "text", "Label": "Loss mapping instructions (read before filling loss entries)", "HelpText": "Categorize losses as Availability (stops and speed losses that cause downtime), Performance (reduced speed, micro-stops), or Quality (scrap, rework). Record minutes lost and a short description. Prioritize by total minutes and root cause potential.", "Required": false }, { "Key": "loss_1_description", "FieldType": "text", "Label": "Loss 1 — short description", "HelpText": "Describe the loss (e.g. 'Changeover delay', 'Sensor fault causing stop', 'Product jam').", "Required": false }, { "Key": "loss_1_category", "FieldType": "select", "Label": "Loss 1 — category", "Options": [ {"Value": "availability", "Label": "Availability"}, {"Value": "performance", "Label": "Performance"}, {"Value": "quality", "Label": "Quality"} ], "HelpText": "Which OEE component does this loss primarily affect?", "Required": false }, { "Key": "loss_1_minutes", "FieldType": "number", "Label": "Loss 1 — minutes lost", "HelpText": "Total minutes lost to this cause in the measured period.", "Required": false }, { "Key": "loss_1_frequency", "FieldType": "number", "Label": "Loss 1 — occurrences in period", "HelpText": "How many times the loss occurred in the period.", "Required": false }, { "Key": "loss_1_priority_scale", "FieldType": "scale", "Label": "Loss 1 — priority (1 low — 5 high)", "HelpText": "Use this to capture your team's initial priority. See scoring rubric below.", "Required": false }, { "Key": "loss_2_description", "FieldType": "text", "Label": "Loss 2 — short description", "Required": false }, { "Key": "loss_2_category", "FieldType": "select", "Label": "Loss 2 — category", "Options": [ {"Value": "availability", "Label": "Availability"}, {"Value": "performance", "Label": "Performance"}, {"Value": "quality", "Label": "Quality"} ], "Required": false }, { "Key": "loss_2_minutes", "FieldType": "number", "Label": "Loss 2 — minutes lost", "Required": false }, { "Key": "loss_2_frequency", "FieldType": "number", "Label": "Loss 2 — occurrences in period", "Required": false }, { "Key": "loss_2_priority_scale", "FieldType": "scale", "Label": "Loss 2 — priority (1 low — 5 high)", "Required": false }, { "Key": "loss_3_description", "FieldType": "text", "Label": "Loss 3 — short description", "Required": false }, { "Key": "loss_3_category", "FieldType": "select", "Label": "Loss 3 — category", "Options": [ {"Value": "availability", "Label": "Availability"}, {"Value": "performance", "Label": "Performance"}, {"Value": "quality", "Label": "Quality"} ], "Required": false }, { "Key": "loss_3_minutes", "FieldType": "number", "Label": "Loss 3 — minutes lost", "Required": false }, { "Key": "loss_3_frequency", "FieldType": "number", "Label": "Loss 3 — occurrences in period", "Required": false }, { "Key": "loss_3_priority_scale", "FieldType": "scale", "Label": "Loss 3 — priority (1 low — 5 high)", "Required": false }, { "Key": "loss_summary_top_3", "FieldType": "textarea", "Label": "Team note — top 3 losses (short list and why)", "HelpText": "List the top three losses you will address and why these were prioritized.", "Required": false }, { "Key": "scoring_rubric", "FieldType": "text", "Label": "Scoring rubric (use as guidance)", "HelpText": "Priority scale guidance: 5 = >60 minutes or safety/stop risk or high customer impact; 4 = 30–60 minutes or likely repeat; 3 = 10–30 minutes; 2 = <10 min and low repeat; 1 = negligible. Combine minutes, frequency and ease-of-fix when prioritizing.", "Required": false }, { "Key": "experiment_1_hypothesis", "FieldType": "textarea", "Label": "Experiment 1 — hypothesis", "HelpText": "Clear hypothesis: what you will change and expected measurable outcome (e.g. 'Reducing changeover checklist items will save 10 minutes per changeover').", "Required": false }, { "Key": "experiment_1_owner", "FieldType": "text", "Label": "Experiment 1 — owner", "Required": false }, { "Key": "experiment_1_start_date", "FieldType": "text", "Label": "Experiment 1 — start date", "Required": false }, { "Key": "experiment_1_end_date", "FieldType": "text", "Label": "Experiment 1 — planned end date", "Required": false }, { "Key": "experiment_1_test_description", "FieldType": "textarea", "Label": "Experiment 1 — test description", "Required": false }, { "Key": "experiment_1_metric", "FieldType": "text", "Label": "Experiment 1 — metric to measure", "HelpText": "What you will measure (minutes saved, scrap%, uptime), and the baseline value.", "Required": false }, { "Key": "experiment_1_baseline", "FieldType": "number", "Label": "Experiment 1 — baseline value", "Required": false }, { "Key": "experiment_1_target", "FieldType": "number", "Label": "Experiment 1 — target value", "Required": false }, { "Key": "experiment_1_result", "FieldType": "select", "Label": "Experiment 1 — result", "Options": [ {"Value": "not_started", "Label": "Not started"}, {"Value": "in_progress", "Label": "In progress"}, {"Value": "success", "Label": "Success"}, {"Value": "partial", "Label": "Partial"}, {"Value": "failed", "Label": "Failed"} ], "Required": false }, { "Key": "experiment_1_notes", "FieldType": "textarea", "Label": "Experiment 1 — notes and learning", "Required": false }, { "Key": "experiment_1_sustain", "FieldType": "yesno", "Label": "Experiment 1 — should this change be sustained?", "HelpText": "Select yes if the experiment result should become standard work and be handed over.", "Required": false }, { "Key": "experiment_2_hypothesis", "FieldType": "textarea", "Label": "Experiment 2 — hypothesis", "Required": false }, { "Key": "experiment_2_owner", "FieldType": "text", "Label": "Experiment 2 — owner", "Required": false }, { "Key": "experiment_2_start_date", "FieldType": "text", "Label": "Experiment 2 — start date", "Required": false }, { "Key": "experiment_2_end_date", "FieldType": "text", "Label": "Experiment 2 — planned end date", "Required": false }, { "Key": "experiment_2_test_description", "FieldType": "textarea", "Label": "Experiment 2 — test description", "Required": false }, { "Key": "experiment_2_metric", "FieldType": "text", "Label": "Experiment 2 — metric to measure", "Required": false }, { "Key": "experiment_2_baseline", "FieldType": "number", "Label": "Experiment 2 — baseline value", "Required": false }, { "Key": "experiment_2_target", "FieldType": "number", "Label": "Experiment 2 — target value", "Required": false }, { "Key": "experiment_2_result", "FieldType": "select", "Label": "Experiment 2 — result", "Options": [ {"Value": "not_started", "Label": "Not started"}, {"Value": "in_progress", "Label": "In progress"}, {"Value": "success", "Label": "Success"}, {"Value": "partial", "Label": "Partial"}, {"Value": "failed", "Label": "Failed"} ], "Required": false }, { "Key": "experiment_2_notes", "FieldType": "textarea", "Label": "Experiment 2 — notes and learning", "Required": false }, { "Key": "experiment_2_sustain", "FieldType": "yesno", "Label": "Experiment 2 — should this change be sustained?", "Required": false }, { "Key": "experiment_3_hypothesis", "FieldType": "textarea", "Label": "Experiment 3 — hypothesis", "Required": false }, { "Key": "experiment_3_owner", "FieldType": "text", "Label": "Experiment 3 — owner", "Required": false }, { "Key": "experiment_3_start_date", "FieldType": "text", "Label": "Experiment 3 — start date", "Required": false }, { "Key": "experiment_3_end_date", "FieldType": "text", "Label": "Experiment 3 — planned end date", "Required": false }, { "Key": "experiment_3_test_description", "FieldType": "textarea", "Label": "Experiment 3 — test description", "Required": false }, { "Key": "experiment_3_metric", "FieldType": "text", "Label": "Experiment 3 — metric to measure", "Required": false }, { "Key": "experiment_3_baseline", "FieldType": "number", "Label": "Experiment 3 — baseline value", "Required": false }, { "Key": "experiment_3_target", "FieldType": "number", "Label": "Experiment 3 — target value", "Required": false }, { "Key": "experiment_3_result", "FieldType": "select", "Label": "Experiment 3 — result", "Options": [ {"Value": "not_started", "Label": "Not started"}, {"Value": "in_progress", "Label": "In progress"}, {"Value": "success", "Label": "Success"}, {"Value": "partial", "Label": "Partial"}, {"Value": "failed", "Label": "Failed"} ], "Required": false }, { "Key": "experiment_3_notes", "FieldType": "textarea", "Label": "Experiment 3 — notes and learning", "Required": false }, { "Key": "experiment_3_sustain", "FieldType": "yesno", "Label": "Experiment 3 — should this change be sustained?", "Required": false }, { "Key": "sustainment_checklist", "FieldType": "checkbox", "Label": "Sustainment checklist", "Options": [ {"Value": "document_standard_work", "Label": "Document updated standard work / checklist"}, {"Value": "train_team", "Label": "Train operators and supervisors"}, {"Value": "update_visuals", "Label": "Update visual controls and signage"}, {"Value": "assign_owner", "Label": "Assign ongoing owner / monitor"}, {"Value": "monitor_for_period", "Label": "Monitor metrics for at least 2 weeks"}, {"Value": "rollout_plan", "Label": "Create rollout plan for other lines"} ], "HelpText": "Check items required to sustain a change.", "Required": false }, { "Key": "handover_notes", "FieldType": "textarea", "Label": "Handover notes (for shift-to-shift or team-to-team)", "HelpText": "Include who will own the new standard, where documentation is stored, and who to contact if problems recur.", "Required": false }, { "Key": "additional_observations", "FieldType": "textarea", "Label": "Additional observations and next steps", "HelpText": "Capture any other immediate actions, risks, or requests for support.", "Required": false } ] }

Discussion

Comments and conversation will live here.