Equipment Health IndexDemo data: fictional plants, real part numbers

Appendix

Every formula, assumption and data source behind the Equipment Health Index, for Q&A. Search on the left. Items taggedFrom Velocity · chat name came from research we ran on Velocity, the Kearney × PERLab research platform; the market numbers and their sources are on the Sources tab.

01

How we used Velocity

Velocity was our research engine for every number we could not measure ourselves. We ran 20+ Velocity research prompts across a dozen chats and logged each one (prompt, answer, what we used, what we pushed back on) in docs/research/velocity.md.

Velocity research chatWhat it gave usWhere it is used
Manufacturing Maintenance Data AdoptionCMMS use 45/60/75%, part-level records 5/15/30%, drive/PLC diagnostics availability and useInstall records (~28%)
Cabinet Monitor unit economicsHardware $127/$185/$285, certification, install, data plans, cabinets per plant, comparable monitoring pricesCabinet Monitor economics
Vision feasibility (narrowed rerun)Label-reading accuracy benchmarks (85%, 94%, >97% OCR), failure modes, design rules, USPAP relianceReading labels
Common PLC/drive/HMI families + lifecycleLifecycle dates checked for the knowledge base (e.g. 1769-L32E discontinued Dec 16, 2020)Knowledge base
Money-thread prompts #1–6, #15–20Plant baselines, carrying cost, rush premiums, failure rates by age (#4), emergency vs planned (#5), discount rates (#15), migration labor (#16), sister-plant transfer (#20)Downtime and CapEx
Market validation (3 chats) + 7 deep dives83% of automation parts end-of-life in one audit, PLC lead times 10–24 wks, ~1,667 US manufacturing deals, appraisal cost structureMarket

Where Velocity could not answer (e.g. a national rate of surprise failures, cabinets per plant), we say so and label the number an assumption.

02

Data collection workflow

SourceWhenWhat we collectWhat it changes in the health score
1. Label photosday 1, every cabinetpart number, maker, date codeidentity → rated life from the manual, lifecycle status; date code = minimum age
2. Plant recordsweek 1, where they exist (~28% of parts)install dates from the CMMS and purchase orderstrue age → position on the wear-out curve
3. Cabinet Monitorcontinuous, line-stopper cabinetstemperature, motor current, drive fault logs, fan + capacitor lifeheat aging; anomalies raise failure risk up to 20×; +30% per fault

A part uses whatever evidence it has. More sources → tighter remaining-life range and higher confidence (high ±15%, medium ±30%, low ±50%).

03

Install records: the ~28% formula

How many parts come with a known install date? No survey measures it directly, so we combined the Velocity estimates: From Velocity · Manufacturing Maintenance Data Adoption

P(install record) = P(CMMS) × [ P(part level) × completeness  +  P(machine level) × P(part is original) × completeness ]
                  = 0.60     × [ 0.15 × 0.7                +  0.85 × 0.6 × 0.7 ]
                  ≈ 28%   (6% part-level records + 21% machine-level records)
InputValue (low / base / high)Basis
Plant uses a CMMS45 / 60 / 75%Velocity; anchors Plant Engineering surveys 2018 (53%), 2019 (61%) From Velocity · Maintenance Data
Of those, part-level records5 / 15 / 30%Velocity, low confidence From Velocity · Maintenance Data
Record completeness70%assumption; Lukens et al. 2019 saw cost fields go 20% → 90% after process fixes (via Velocity)
Part still original to its machine60%assumption, so a machine install year can date its parts; validate in the pilot

Also from the same chat: drives exposing fan/capacitor life 10/25/45%; PLCs networked with diagnostics 50/70/85%; plants that routinely use those diagnostics 5/12/25%. That gap (data inside the hardware, unread) is why the Cabinet Monitor reads it.

04

Reading labels with Claude vision

Each photo is read by Claude (claude-sonnet-5-5) into manufacturer, part number, serial, date code, plus an explicit list of anything unclear. Readings are cached so the demo runs offline.

BenchmarkResultSource
Our test factory: rendered labels incl. glare, blur, worn, cut-off127 / 129 exact; the 2 misses flagged unclear, not guessedmeasured
Building nameplates (Park et al. 2022)65.8% → 85.0% character accuracy after post-processingFrom Velocity · Vision feasibility
Auto-parts part numbers (Schlüter et al.)94%From Velocity · Vision feasibility
Control-cabinet detection (Scheck et al. 2026)> 95% mAP, > 97% OCRFrom Velocity · Vision feasibility

Design rules from that research: an identifier with any ambiguous character is unverified; never silently correct a serial or series letter; low-confidence reads go to a person. Appraisers may rely on AI-collected data but keep responsibility (USPAP Advisory Opinion 41, April 2026). From Velocity · Vision feasibility

05

Health score formula

Health = 100 × the chance the part survives the next 12 months, from a Weibull proportional-hazards survival model (the reliability-engineering standard).

effective age  a = life_used × rated_life
life_used      = self-reported (fan/capacitor life from the drive)            if available
               = age × heat_factor / rated_life                               otherwise
heat_factor    = 2 ^ ((T − T_ref) / 10)      (life halves per +10 °C; half of today's excess counted for the past)
hazard mult. m = exp( ln(20) × anomaly_severity ) × (1 + 0.3 × faults_12m)     (faults capped at 5)
η = 1.1 × rated_life,  β = 3

health        = 100 × exp( −m × ((a + 1)^β − a^β) / η^β )          floored at 1
remaining life = (a^β + η^β × ln 2 / m)^(1/β) − a                    (conditional median)
range          = ± 15% / 30% / 50%  for high / medium / low confidence
StatusRule
Replace ASAPhealth ≤ 10, or getting a replacement takes longer than the life left
Replace soon≥ 75% of life used, but there is still time to get one
Workingotherwise

Rated life comes from the manufacturer manual / knowledge base. T_ref: drives 55 °C, PLCs/HMIs 45 °C, power supplies 50 °C. Order-by dates use the health model's conservative remaining life (below).

06

Anomaly detection statistics

Each monitored part learns its own normal over 30 days, then every daily summary is checked by standard statistical process control:

expected temp:  (T − ambient) = a + c × load        (least squares on the 30-day baseline)
residual r      = actual − expected
EWMA            z_t = 0.2 r_t + 0.8 z_{t−1};  alarm beyond 3σ limits        → sudden shifts (failing fan)
CUSUM           S_t = max(0, S_{t−1} + r_t/σ − 0.5);  alarm at S > 5        → slow drift (aging capacitors)
trend           slope of r over time, t-test;  alarm at > 1 °C/month, t > 3 → warming
peers           robust z vs same-model parts (median / MAD);  alarm at |z| > 3
motor current   Mahalanobis distance on RMS/load + sideband energy;  alarm at > 3
severity        1 − exp(−(stat − alarm)/alarm) per detector;  anomaly_severity = max (0–1)
judged on the last 7 days

Toledo line-stopper drive with a failing fan (planted, simulated sensor data): EWMA crosses its limit the week the step starts. Measured false-alarm rate: ~1 in 40 monitored parts.

07

Downtime avoided and output protected

Downtime is the number plants feel. We count it two ways, and only for spare rescues we actually found (a line-stopping part whose spare sits at a sister plant). Never scaled up to the whole plant, never in the fee.

hours down without spare = min(lead time to buy one, outage cap 10–25 operating days) × operating hours/day
hours down with spare    = transfer (1–2 days) + swap (2–8 h)
at stake (one failure)   = (hours without − hours with) × line $/hour × share of output never made up (40–80%)

OUTPUT PROTECTED   = Σ at stake                                  (Toledo: $622k, 668 h of stoppage)
DOWNTIME AVOIDED   = Σ P(fails within 3 yrs) × at stake, discounted at 10%, per year   (Toledo: ~$77k/yr, $12–205k)
EXPOSURE / YEAR    = P(fail this year) × hours down × $/hour × unrecovered share        (line-stopper table)

P(fail this year)  = 1 − health/100     (the part's own health score: age, heat, sensor anomalies, faults)
                   = age table below     (only for parts with no health evidence)

Fallback failure odds by age, for parts with no health score: 0–10 yrs 2–5%/yr, 10–20 yrs 4–8%, 20+ yrs 6–10% From Velocity · money thread #4. Transfer time and cost From Velocity · #20 sister-plant transfer. Line $/hour from plant revenue and operating hours From Velocity · #1 plant baseline.

08

CapEx cliff and order-by dates

CapEx in year Y   = Σ replacement cost of control parts expected to reach end of life in Y  (+ migration engineering if discontinued)
replacement cost  = market price from trusted listings, else type fallback;  migration = engineering hours × integrator rate
failure date      = today + health model's conservative remaining life   (else install year + typical life)
order-by          = failure date − lead time − 14-day buffer

Component prices and migration labor From Velocity · #16 prices + migration labor; emergency vs planned cost From Velocity · #5; lead times for new PLCs 10–24 wks From Velocity · market validation.

09

Sourcing and where to buy

Recommended order: a spare already on a shelf in the portfolio (reserve it, ~7 days) → the manufacturer or an authorized distributor (for discontinued parts: the official successor) → refurbishers and marketplaces, flagged as counterfeit risk.

Marketplace prices: 42 real listings hand-collected for the demo parts, plus real distributor offers. Lifecycle status comes from manufacturer pages and distributor records (source URL + date on every knowledge-base row). From Velocity · PLC/drive/HMI lifecycle check

10

Cabinet Monitor: design and economics

Cabinet Monitor system block diagram
ItemLow / base / highBasis
Hardware at 1,000 units$127 / $185 / $285MLX90640 ~$31 (Octopart), ESP32-S3 $3.73, SHT40 $1.33 (DigiKey), 24→5 V ~$20 From Velocity · Cabinet Monitor unit economics
Certification (one time)$25k / $55k / $100ksafety listing + FCC (pre-certified module $4.9–10k) + cellular From Velocity · unit economics
Install per cabinet$120 / $250 / $5201.5–4 h × loaded electrician rate (PILARS 2026) From Velocity · unit economics
Data + cloud per year$10 / $30 / $901NCE, Hologram, AWS IoT Core From Velocity · unit economics
All-in first year per cabinet~$270 / ~$474 / ~$902From Velocity · unit economics
Line-stopper cabinets per plant20 / 60 / 150planning assumption, no published benchmark From Velocity · unit economics
Comparable monitoring$300 / $900 / $2,400 per asset-yearErbessd $22/device/month + $400; Augury unpublished From Velocity · unit economics

Read-only to plant equipment, own cellular link (not on the plant network), no inbound ports. Before quoting: qualify the clamps, confirm camera field of view in a real cabinet, test LTE-M inside a closed steel cabinet. Diagram source: docs/plan/hardware/cabinet-monitor-diagram.tex (TikZ).

11

How we charge, savings and revenue

We charge for what the customer can count, not for what we say they saved. Never a share of savings: savings can't be audited, so a share of them would make us the judge of our own fee (mentor feedback).

StepPriceWhat it covers
1 · One-time: onboard a plant$1–2k flat, per plantfirst scan: registry, line stoppers, spending by year
2 · Yearly: registry subscription$4–10k per plant, tiered by the number of critical partskept current: lifecycle alerts, rescans, spares on every plant's shelf
3 · Monthly: sensors$ per monitored point (price to set)clip-on Cabinet Monitors on the riskiest parts, hardware included

Toledo pays ~$9.7k a year against ~$48.6k of auditable savings: paid back in ~2.4 months. Cost to serve a plant: $0.3–1.8k a year. Tier amounts come from Brandon's money model (xray/pricing.py); pilots test willingness to pay.

Direct savings at Toledo (slide 8)Per yearHow
Spares carrying cost$16.6kexcess spares × carrying cost % From Velocity · money thread #2
Planned instead of emergency buys$13.7kat-risk parts × P(fail) × (emergency − planned price) From Velocity · #5
Purchases a sister plant's spare avoids$10.5kP(fail) × (part value − transfer cost) From Velocity · #20
Rush premiums$7.8krush premiums × share avoided From Velocity · #3
Total, auditable$48.6keach line traced to parts in the registry; whole-plant extrapolation by coverage
Idle spares cash, freed once$79kexcess spares inventory released (one-time, not priced)

Revenue per PE portfolio (slide 9: $1–4M a year). A typical mid-market PE portfolio: 10–20 companies, 30–100 plants.

registry      = plants × ~$5.9k (demo-plant average)                       = $0.2–0.6M / yr
sensors       = plants × ~60 line-stopper cabinets × $50 / point / month     = $36k per plant / yr   (illustrative; price to set)
total         = 30 plants × ($5.9k + $36k) ≈ $1.3M   …   100 plants ≈ $4.2M   → $1–4M / yr
market        = 25,800 US plants with 100+ employees (Census CBP 2022): registry alone $7.6M / yr at 5%, $152M at all

The $50 / point / month sensor price is an assumption for illustration (comparable monitoring sells for ~$900 per machine per year From Velocity · unit economics). Without sensors one portfolio is ~$0.2–0.6M a year.

The savings model stays as the customer's business case (payback), not as the price formula. Comparable monitoring sells for ~$900 per machine per year From Velocity · unit economics.

12

Proof: what we measured

WhatResultHow
Part numbers read from label photos127 / 129 exact; 2 misses flaggedsynthetic test factory with planted answers
Matching parts to the catalog100% precision, 98% recallagainst the answer key
Planted failures caught by the health model5 / 5 score ≤ 40failing fan, worn capacitors, current anomaly, hot connection, overheating relay
False alarms (anomaly detectors)~1 in 40 monitored partsparts with no planted problem

Sensor data in the demo is simulated in the exact format the device would send; plants are fictional; part numbers, lifecycle data and listings are real.

13

The $1.4T on the problem slide

What it is: unplanned downtime costs the world's 500 largest companies about $1.4 trillion a year, 11% of their revenue (Siemens, The True Cost of Downtime, 2024). From Velocity · Manufacturing Equipment Risk Costs

How to say it: it is a cost to the largest companies, not the size of a market, and not specific to mid-market plants. For smaller firms, the same Velocity research found 52% of smaller US manufacturers put an hour of downtime at $50k or more, and 44% have an equipment interruption every month.

14

How much automation is end-of-life (83%)

What it is: one real plant audit published by Siemens (2025): 699 of 843 automation assets, from 17 manufacturers, were discontinued or end-of-life. From Velocity · Manufacturing Equipment Risk Costs

Why we don't headline it: it is one plant, from a vendor that sells upgrades, not a national rate. Siemens' other published audits found 35% (3,686 filling/packaging assets), 59% (914 process assets) and 60% (388 utility assets). From Velocity · Manufacturing Equipment Risk Costs

What we claim: a large share of the automation in older plants is past its supported life, often a third to most of it. Our own demo portfolio, built on real part numbers and lifecycle data, has 32% of critical parts discontinued or end-of-life. No survey measures a national rate, so we never quote one.

15

Market, competition, risks

MarketNumberSource
US multi-plant manufacturers (recurring accounts)8–18kSources tab
PE-owned manufacturers in hold2–4kSources tab
US manufacturing deals (2024)1,667; ~670 with an equipment reviewFrom Velocity · deal volume deep dive
Automation parts end-of-life in one plant audit83%From Velocity · Manufacturing Equipment Risk Costs
New controller lead time10–24 weeksFrom Velocity · Installed-Base Audits Market
CompetitorGap
Appraisersvalue machines, not parts
Operations diligenceone-time, not kept up
Controls audits (e.g. OEM installed-base audits)one brand at a time
Monitoring vendors~$900 per machine per year, no part registry
RiskHow we would know
Plants have terrible datapilot plant coverage: share of parts with an identity, a date and a health score
The health score is unprovencalibrate on 10 cabinets for 90 days against real failures
Plants won't install hardwareinstall time and approvals in the pilot (read-only, clamp-on, planned stop)
16

Every assumption

AssumptionValueJustification
Parts with an install record~28%60% CMMS × (15% part-level × 70% complete + 85% machine-level × 60% original × 70%); Velocity research, Plant Engineering surveysFrom Velocity · see section 01
Record completeness70%assumption; a measured CMMS study saw record fields go from 20% to 90% filled (Lukens 2019)
Part still original to its machine60%assumption, so a machine install year can date its parts; validate in the pilot
Heat aginglife halves per +10 °CArrhenius rule of thumb in capacitor and fan datasheets
Design-point temperaturedrives 55 °C, PLCs 45 °Ctypical rating points for industrial electronics; verify per manual
Past heat historyhalf of today's extra heatwe only see today's temperature, not the part's past
Health score100 × P(survives next 12 months)Weibull survival model (reliability-engineering standard); shape 3 = wear-out; scale 1.1 × rated life from the manual
Anomaly alarmsEWMA 3σ, CUSUM h = 5, z > 3, Mahalanobis > 3standard statistical process control defaults; measured ~1 false alarm per 40 monitored parts
Anomaly effectfailure rate × up to 20proportional hazards: severity 0–1 scales the hazard; assumption, calibrate against real failures in the pilot
Fault effect+30% failure rate per fault (max 5)assumption; faults logged by the drive in the last 12 months
Remaining lifeconditional medianyears until P(survive | survived so far) = 50%, from the same Weibull model
Remaining-life range±15% / 30% / 50%by confidence (high / medium / low), set by which evidence exists
Device hardware cost$185 ($127–285) at 1,000 unitsVelocity research: MLX90640 ~$31 (Octopart), ESP32-S3 $3.73 (DigiKey), SHT40 $1.33, 24→5 V supply ~$20; current clamps are the big unknownFrom Velocity · see section 01
Install per cabinet2.5 h × $100 = $250 ($120–520)Velocity research; loaded electrician rates (PILARS 2026); done in a planned stopFrom Velocity · see section 01
Data + cloud$30 / device / yr ($10–90)Velocity research; 1NCE $14 for 10 yrs / 500 MB, Hologram $1/SIM/month, AWS IoT CoreFrom Velocity · see section 01
Certification, one time$55k ($25–100k)Velocity research; safety listing + FCC (pre-certified module, $4.9–10k quotes) + cellular; spread over the rolloutFrom Velocity · see section 01
Line-stopper cabinets per plant60 (20–150)Velocity research estimate; no published cabinets-per-plant benchmark, so a planning assumptionFrom Velocity · see section 01
Comparable monitoring price~$900 / machine / yr ($300–2,400)Velocity research; e.g. Erbessd $22/device/month + $400 hardware; Augury doesn't publish pricesFrom Velocity · see section 01
Failure odds used in the dollars1 − health/100 per yearthe part's own health score (age, heat, anomalies, faults); the age table (2–10%/yr, Velocity #4) only for parts with no health evidenceFrom Velocity · see section 01
Replace ASAP thresholdhealth ≤ 10under ~10% chance of surviving the year, or a replacement takes longer than the life left
Health floor1 (never 0)the model can say 'almost certain to fail', not 'certain'
Registry subscription$4–10k / plant / yrfixed fee tiered by the number of critical parts; amounts from Brandon's money model; never a share of savings
Onboarding$1–2k per plant, oncefirst scan: registry, line stoppers, spending by year
Sensor price$50 / point / month (illustrative)price to set; used only for the $1–4M portfolio example; comparable monitoring ~$900 / machine / yr (Velocity)From Velocity · see section 01
Typical PE portfolio10–20 companies, 30–100 plantsplanning assumption for a mid-market industrial fund
Downtime horizonone failure per spare, 3 years, 10% discountconservative; outage capped at 10–25 operating days, 40–80% of lost output never made up
Sensor data in the demosimulatedno hardware built; data is in the exact format the device would send