How to Build a Machine Health Scoring System for Manufacturing: From Raw Sensor Data to Actionable Scores
A maintenance manager walks into the daily production meeting. The plant manager asks: "How are our machines doing?"
The honest answer — "Well, the hydraulic pump on Press 4 is showing elevated vibration in the 3× RPM harmonic, suggesting possible misalignment, and the spindle motor on CNC-7 has been drawing 12% more current than baseline, which could indicate bearing degradation, and..." — puts the room to sleep by sentence two.
What the plant manager actually wants is a number. A score. A simple indicator that says: this machine is healthy, this one needs attention, this one is going to break.
That's what a machine health scoring system provides. Here's how to build one that's practical, accurate, and actually used.
Why You Need a Health Score (Not Just Alerts)
You might think threshold alerting is sufficient. If a parameter exceeds its limit, you get an alert. Problem solved.
Not quite. Here's why health scores add value beyond alerts:
Alerts are binary; health is a spectrum. A machine with temperature at 198°C (limit: 200°C) and vibration at 4.2 mm/s (limit: 4.5 mm/s) and motor current at 95% of rated aren't alarming on any individual parameter — but collectively, that machine is in trouble. A health score captures this compound risk that individual threshold alerts miss.
Alerts tell you what happened; health scores tell you what's coming. An alert fires when a threshold is crossed. By then, the problem exists. A declining health score — from 92 to 87 to 79 to 71 over four weeks — tells you a problem is developing, even though no individual parameter has alarmed.
Health scores communicate across skill levels. Your vibration analyst understands spectral peaks. Your controls engineer understands PLC fault codes. Your maintenance manager understands both. Your plant manager understands neither. But everyone understands "Machine #7 health score dropped from 85 to 62 this week."

The Health Score Architecture
A practical machine health scoring system has four layers:
Layer 1: Parameter Health (Individual Signals)
Each monitored parameter gets its own health score from 0 (critical) to 100 (perfect). The scoring function depends on the parameter type:
Range-based parameters (temperature, pressure, vibration):
- 100: Within normal operating range
- 80-99: Approaching upper or lower warning threshold
- 50-79: Between warning and alarm threshold
- 20-49: At or beyond alarm threshold
- 0-19: Far beyond alarm threshold or sensor failure
Example: A motor bearing temperature with normal range 40-65°C, warning at 70°C, and alarm at 80°C:
- 55°C → Score: 100 (well within range)
- 68°C → Score: 85 (approaching warning)
- 73°C → Score: 65 (between warning and alarm)
- 82°C → Score: 35 (beyond alarm)
Trend-based parameters (parameters that don't have fixed limits but where the trend matters):
- Stable trend → Score: 100
- Slowly increasing/decreasing → Score: 70-90 (depending on rate)
- Rapidly changing → Score: 40-60
- Erratic/oscillating → Score: 20-40
Cycle-based parameters (cycle time, parts per hour):
- At target → Score: 100
- Within 5% of target → Score: 85
- Within 10% of target → Score: 70
- More than 10% off target → Score: 50
- More than 25% off target → Score: 20
Layer 2: Subsystem Health (Grouped Parameters)
Group related parameters into subsystems. Each machine typically has 3-7 subsystems:
CNC Machine example:
- Spindle System: Spindle temperature, vibration, motor current, speed deviation
- Hydraulic System: Hydraulic pressure, oil temperature, flow rate, filter pressure differential
- Coolant System: Coolant temperature, flow rate, concentration
- Drive System: Axis motor currents, position errors, following errors
- Electrical System: Power consumption, voltage stability
Each subsystem health score is a weighted average of its constituent parameter scores. The weighting reflects which parameters are most indicative of subsystem health:
Spindle Health = (Temperature Score × 0.25) +
(Vibration Score × 0.35) +
(Current Score × 0.25) +
(Speed Deviation Score × 0.15)
The vibration score gets the highest weight because it's the most reliable early indicator of spindle bearing degradation.
Layer 3: Machine Health (Overall Score)
The machine health score aggregates subsystem scores. But here's the key insight: don't use a simple average. A machine with four healthy subsystems and one failing subsystem should not show a score of 85.
Use the weakest-link principle: the machine health is limited by its worst subsystem, with moderation from the others.
Practical formula:
Machine Health = (Worst Subsystem Score × 0.40) +
(Average of All Subsystem Scores × 0.35) +
(Second Worst Subsystem Score × 0.25)
This ensures that a single failing subsystem pulls the overall score down significantly (a machine with one subsystem at 30 can't score above ~55, regardless of how healthy everything else is), while also reflecting the overall condition.
Layer 4: Fleet Health (Multi-Machine View)
At the fleet level, you need:
- Individual machine scores ranked from worst to best
- Production line scores (average of machines on the line, weighted by criticality)
- Plant score (rolled up from lines)
- Trend — is fleet health improving, stable, or declining?
This gives management the 30-second view: "Our plant health score is 78, down from 82 last week. Three machines need attention — here are the work orders."

Building It: Practical Implementation
Step 1: Start with the Machines That Matter
Don't try to score every machine on day one. Prioritize:
- Bottleneck machines — if they stop, everything stops
- High-maintenance machines — the ones that consume 80% of maintenance attention
- High-value machines — expensive to repair or replace
- Safety-critical machines — failure has safety implications
Start with 5-10 machines. Build the scoring model. Validate against operator intuition. Refine. Then expand.
Step 2: Collect the Right Data
For each machine, you need continuous data from the PLC. Most IIoT platforms, including MachineCDN, connect directly to PLCs via Ethernet/IP or Modbus and can read tags every few seconds.
Minimum data set per machine type:
| Machine Type | Essential Parameters |
|---|---|
| CNC | Spindle temp, vibration, motor current, cycle time |
| Injection Molder | Barrel temps (all zones), hydraulic pressure, cycle time, clamp tonnage |
| Press | Motor current, stroke rate, tonnage, vibration |
| Pump | Vibration, discharge pressure, motor current, temperature |
| Conveyor | Motor current, belt speed, tracking position |
| Compressor | Discharge pressure, temperature, vibration, oil pressure |
Step 3: Establish Baselines
Run data collection for 2-4 weeks before activating health scores. Use this period to:
- Learn normal ranges — what does "healthy" look like for each parameter?
- Identify natural variation — some parameters fluctuate with ambient temperature, material batch, or production recipe
- Set thresholds — warning and alarm levels based on observed data plus engineering limits
The baseline period is critical. Without it, you'll set thresholds too tight (constant false alarms) or too loose (missed warnings). Base your thresholds on statistical analysis: warning at mean + 2σ, alarm at mean + 3σ for normally distributed parameters.
Step 4: Assign Weights
Work with maintenance engineers and operators to assign parameter and subsystem weights. This is where domain expertise matters more than data science.
Guidelines:
- Parameters that are leading indicators of failure get higher weight
- Parameters that affect product quality get higher weight
- Parameters that are easily influenced by operating conditions (ambient temperature, material variation) get lower weight
- Parameters with high measurement noise get lower weight
Step 5: Validate Against Reality
Before going live, validate the health scoring system against known equipment conditions:
- Machine with known bearing issue: Does the health score reflect it?
- Machine after recent overhaul: Does the health score show improvement?
- Machine during normal operation: Is the score stable in the 85-95 range?
- Machine during a challenging product run: Does the score dip appropriately without alarming?
Ask experienced operators: "On a scale of 1-10, how healthy is this machine?" Compare their intuition to the calculated score. If they consistently disagree, investigate why — often they know something the sensors don't capture.
Step 6: Define Action Triggers
Health scores are useless without defined responses:
| Score Range | Status | Action Required |
|---|---|---|
| 90-100 | Excellent | Normal operations. No action needed. |
| 75-89 | Good | Monitor trends. Review during weekly maintenance meeting. |
| 60-74 | Fair | Investigate lowest-scoring subsystem. Schedule inspection within 1 week. |
| 40-59 | Poor | Create urgent work order. Inspect within 48 hours. Consider production backup plan. |
| 0-39 | Critical | Immediate maintenance intervention. Risk of unplanned failure. Engage backup equipment. |
Step 7: Display and Communicate
The health score dashboard should serve multiple audiences:
For operators: A simple traffic light per machine on the plant floor display. Green/Yellow/Red. No numbers needed.
For maintenance: Individual machine scores with drill-down to subsystem and parameter level. Trend charts showing score evolution over days and weeks.
For management: Fleet summary — number of machines in each category, overall plant health score, week-over-week trend. Five machines needing attention, ordered by priority.
Common Pitfalls to Avoid
Over-engineering the model. A health score with 50 parameters and complex nonlinear weighting is not better than one with 8 parameters and simple linear weighting. Complexity reduces trust and increases maintenance burden. Start simple.
Ignoring seasonal effects. A machine that runs at 65°C in summer and 50°C in winter isn't degrading — it's responding to ambient conditions. Use seasonally adjusted baselines or the health score will cry wolf every summer.
Not updating thresholds after maintenance. After a major overhaul, the machine's parameters change. Update baselines and thresholds to reflect the "new normal," or the health score will show artificially high scores for months (because post-overhaul parameters are better than the worn-equipment baseline).
Using the score punitively. If operators learn that a low health score on "their" machine leads to blame, they'll find ways to game the system. The score reflects equipment condition, not operator performance.
The Outcome
Plants that implement machine health scoring consistently report:
- 30-40% reduction in unplanned downtime within 6 months (catching degradation before failure)
- 20% reduction in maintenance costs (prioritizing work on machines that actually need it)
- Improved maintenance planning (weekly health score reviews replace daily firefighting)
- Better capital planning (health score trends over months reveal which machines need replacement)
The biggest win is often organizational: when everyone — from operator to VP — is looking at the same health scores, maintenance stops being a black box and becomes a shared, visible priority.
Ready to move from reactive maintenance to proactive machine health management? Book a demo to see how MachineCDN's equipment health monitoring platform gives you real-time health scores for every machine on your floor.