Manufacturing Execution Systems: What an MES System Does That SCADA and ERP Do Not

Quick Answer
An MES system sits at ISA-95 Level 3, between SCADA and ERP: it owns order execution, genealogy and OEE. It only works if the control layer below it supplies standardised tags, unique lot identity, restart-proof counters and one synchronised clock.
Most MES system projects that go wrong do not go wrong in the MES. They fail two levels below it: a PLC tag never named consistently across three machine builders, a counter that zeroes whenever the panel is power-cycled, a reason code list where thirty-eight of forty entries resolve to "Other". The software goes live, the dashboards populate, and everyone is impressed. Then somebody compares the shift output the MES reported against the warehouse receipt and finds a four percent gap.
That gap is the problem in miniature. An MES system does real work neither SCADA nor ERP does, but it works entirely on data handed up from the control layer and cannot tell whether that data is true. Build it on a shaky Level 2 and you have not bought visibility. You have bought confident wrong numbers, delivered daily, with a chart.
An MES cannot measure a plant. It can only report what the control layer told it. If the control layer is unreliable, the MES makes that unreliability look authoritative.
What Is an MES System?
An MES system, or manufacturing execution system, is the software layer managing production between the released order and the finished pallet. It dispatches work orders to equipment and people, tracks material and labour, enforces the recipe and in-process quality checks, records genealogy so any unit traces to its inputs, and reports what was made rather than planned.
ANSI/ISA-95, published internationally as IEC 62264, puts it at Level 3 of a five-level model: Level 0 the physical process, Level 1 sensing and actuation, Level 2 supervisory control (PLC, DCS, SCADA), Level 3 manufacturing operations management, Level 4 business planning, meaning ERP. Second editions of the core parts landed between 2013 and 2016; Russian plants know the same content as GOST R IEC 62264-1-2014.
The direct answer to what is an MES system: it is the system of record for how a product was made. SCADA is the system of control for what is happening right now. ERP is the system of record for what was committed, costed and shipped.
The ISA-95 Levels, and Which One You Actually Own
Levels 0 to 2: The Part That Has to Be True First
Level 0 to 2 is the plant and its control: transmitters, flow elements, weigh cells, encoders, drives, PLC or DCS logic, and the SCADA layer above. This is our work as an industrial automation contractor, and where every number an MES publishes originates. A shift output figure is a counter in a PLC. A batch yield is a mass balance across two weigh cells. None of it is MES data.
Level 3 and Level 4
Level 3 is the MES. Level 4 is ERP, working at plant-and-warehouse granularity rather than machine-and-minute. Their interface is specified in IEC 62264 Parts 4 and 5, with a free reference implementation in MESA International's B2MML schema set, JSON-capable since Version 7 in 2020. A vendor who cannot map onto B2MML is telling you how much integration work you will inherit.
What Is the Difference Between MES and ERP?
The difference between MES and ERP is time resolution and unit of account. ERP thinks in orders, days, cost centres and inventory locations. MES thinks in operations, seconds, machines, lots and operators.
ERP knows it released a works order for 12,000 units and that the order closed with 11,640 good ones. It does not know the line ran at 82 percent of rated speed for four hours because a filler valve was weeping, that 180 rejects came from one capper head, or that the operator swapped preform lots at 14:20. The MES knows all of it.
So ERP cannot answer a root-cause question and should not be asked to. The reverse holds: an MES accumulating costing logic means the ERP integration was never finished.
What Is the Difference Between MES and SCADA?
The difference between MES and SCADA is that SCADA is stateless about product and MES is not. SCADA knows tank 3 is at 4.2 bar and the agitator is running. It does not know the material in tank 3 belongs to batch 20260914-B, that the batch is against order 4471, or that a QC sample is due at the 40-minute mark. That product context is what an MES adds.
Second-order differences matter more than they sound. SCADA data is a time series; MES data is transactional and must survive audit. A historian rolling up to 15-second averages after 30 days is normal. An MES doing that to a batch record is a compliance failure. In regulated production the electronic batch record must satisfy 21 CFR Part 11 or EU GMP Annex 11, revised for PIC/S consultation in July 2025 with tightened audit-trail and data-integrity requirements. GAMP 5 Second Edition (2022) is the guide most such projects validate against.
The shape of failure differs too. When SCADA drops you lose visibility and possibly supervisory authority, the design question in when SCADA goes offline. When the MES drops, production continues on local control and you lose the record. Paying for MES server redundancy while running a non-redundant SCADA server is a common, backwards allocation.
| SCADA (Level 2) | MES (Level 3) | ERP (Level 4) | |
|---|---|---|---|
| Question it answers | What is happening now? | How was this made? | What did we commit, cost and ship? |
| Time resolution | Milliseconds to seconds | Seconds to shifts | Hours to days |
| Unit of account | Tag, signal, loop | Order, lot, operation, equipment | Order, SKU, cost centre |
| Governing references | IEC 62541 (OPC UA), IEC 61131 | IEC 62264 Parts 1-5, ISO 22400-2, IEC 61512 | Vendor-defined; IEC 62264 Parts 4-5 at the interface |
| Outage impact | Loss of control and visibility | Loss of record and traceability | Loss of planning and posting |
What Modules Does an MES Have?
The reference model is still MESA International's 1997 MESA-11, White Paper #6: operations and detailed scheduling, resource allocation and status, dispatching production units, document control, data collection and acquisition, labour management, quality management, process management, maintenance management, product tracking and genealogy, and performance analysis.
The useful observation is that manufacturing execution system modules have wildly different dependencies on the control layer, which should drive phasing.
Four are paperwork replacement and go live with almost no instrumentation maturity: document control, labour management, detailed scheduling, dispatching. Getting the current SOP onto the operator station instead of a binder pays back in months; that is where phase one belongs.
Four are only as good as the state data feeding them: quality management, process management, data collection, and resource allocation and status. If pH probes drift and nobody owns a calibration interval, the MES signs out-of-spec readings as in-spec; a mislabeled PLC fault bit does the same, reporting a machine available when it is actually down. Genealogy and performance analysis are harder still, and both fail quietly. MES readiness is therefore partly an instrumentation and control exercise; the discipline in our notes on what actually drifts in a pressure transmitter is what the quality module rests on.
Maintenance management is the odd one out among the manufacturing execution system modules: most implement a thin version and hand off to a CMMS, which is correct. What the MES adds is run-hours and cycle counts from actual production, so a trigger fires at 480 operating hours instead of a calendar month that ignores whether the machine ran. Build that into an electrical maintenance and reliability programme, not a nightly export nobody checks.
What the MES Needs From the Control Layer Before Day One
This part rarely appears in a vendor proposal, because it is not the vendor's scope.
Tag Standardisation Across Every Machine Builder
A plant with eight machines from five OEMs will have eight names for "good count", four units for line speed, and one machine where the running bit is actually a drive-enabled bit. An MES cannot normalise what it cannot distinguish. Before Level 3 work starts, agree a tag naming and engineering-unit convention and republish every machine through it. An OPC UA server (IEC 62541) with a real information model is the cleanest place to enforce that; adopt a companion specification where one covers your equipment type rather than inventing one. Where a machine is too old to expose anything modern, use protocol conversion, as in our guide to reaching legacy serial equipment over Ethernet. Do this first and every later integration becomes configuration.
Unique Batch and Lot Identity That Exists in the Plant
Genealogy needs an identifier created at the point of physical transformation that travels with the material: a printed label, an RFID carrier, a vessel assignment. If the only place batch 20260914-B exists is a row in the MES database, any divergence between plant and database is undetectable and your recall boundary is guesswork.
For batch plants the ISA-88 / IEC 61512 procedural model (procedure, unit procedure, operation, phase) is the structure the MES expects the control system to speak. If the PLC batch logic is bespoke sequential code with no S88 structure, integration cost roughly doubles, and it lands on the automation scope, not the licence.
Counters That Do Not Reset on a PLC Restart
This causes more bad MES numbers than anything else, and it is trivially preventable.
Counters should be monotonically increasing, held in retentive memory, with a documented rollover point, and the MES should compute output as the delta between two reads with explicit rollover handling. A 16-bit INT rolls at 32,767, which on a filler running 600 cans a minute is under an hour. A DINT rolls at 2,147,483,647: safe in practice, but still handled rather than assumed.
The failure mode to design against is the restart. If counters sit in non-retentive memory, or the retentive area is not battery-backed, or a programme download clears it, every power event silently deletes production. On sites running through generator changeover or unstable supply (many plants across the Gulf, South Africa under load-shedding, and Russian process sites) that is weekly rather than exceptional. Publish a timestamped per-unit event alongside the running total: an event stream is reconcilable after an outage, a count is not.
Time Synchronisation Nobody Specified
Every Level 3 calculation is arithmetic on timestamps. If the PLC, SCADA server, MES server and historian disagree, downtime durations and batch boundaries are wrong and sequence-of-events reconstruction is impossible.
NTP at millisecond accuracy is sufficient for MES purposes, provided every device takes time from one source and the timezone and daylight-saving policy is identical everywhere. The classic failure is a control network free-running on PLC clocks while the MES server takes domain time, drifting tens of seconds apart over months. Where you need real sequence-of-events resolution, IEEE 1588-2019 Precision Time Protocol with hardware timestamping in the switches reaches sub-microsecond against milliseconds for NTP. Decide per segment before the switch order goes out: switches without PTP transparent-clock support defeat it quietly.
Downtime Reason Codes an Operator Will Actually Enter
A reason code list that is too long, too abstract or too slow to enter produces garbage that makes performance analysis misleading rather than useless.
Cap the list at ten to fifteen codes per machine, phrased the way operators talk, shown on the HMI within seconds of the stop, most likely cause pre-selected. Auto-classify everything the control system can classify unaided (blocked, starved, e-stop, guard open, drive fault, changeover) so operators are prompted only on ambiguous stops. Then set a threshold: micro-stops under a defined duration get aggregated, or the operator spends the shift clearing pop-ups.
Anchor definitions to ISO 22400-2, which defines 34 manufacturing operations KPIs with explicit time states (planned busy time, actual unit busy time, actual unit downtime) and gives OEE as availability multiplied by effectiveness multiplied by quality ratio. Note its caveat: it describes more than one OEE calculation, and the Nakajima-style annex variant does not always agree with the primary one. Pick one, or benchmarking measures accounting conventions.
A Real-World Scenario: The Bottling Line That Reported Phantom Cases
The Setup
A carbonated soft drink plant running three PET lines commissioned an MES across all of them. Line 2 was newest: rotary filler and capper from one European OEM, shrink-wrapper from another, palletiser retrofitted from a decommissioned line. Packaging hall ambient peaked near 44 °C and the site took several utility dips a month. The MES read good-case count from a photo-eye counter in the palletiser infeed PLC and machine state from a "line running" bit off the conveyor drive's run feedback.
What Went Wrong
Two faults pointing in opposite directions, which is why it took eleven weeks to find them.
The palletiser counter was a 16-bit INT. At roughly 42,000 cases a shift it rolled over twice, and the integration treated any decreasing value as a counter reset, restarting its delta from zero. Separately, the retentive block holding it cleared on every programme download, and the OEM's service engineer had downloaded four times during warranty support, taking production history with it each time.
Meanwhile the "line running" bit stayed true through blocked and starved conditions, because the conveyor keeps turning while the filler waits. The MES logged availability near 97 percent on a line operators knew was stopping constantly. Reported OEE was 91 percent; measured properly, 68 percent. Management had already approved capital for a second shrink-wrapper on the strength of that number.
The Fix
The counter moved to a DINT in retentive, battery-backed memory, rollover documented and handled in the tag mapping rather than inferred at runtime, with every case also raising a timestamped event on the OPC UA server.
Line state was rebuilt as an explicit PLC state machine (running, blocked, starved, faulted, changeover, idle) published as one enumerated tag, ISO 22400-2 time states mapped one to one. Reason codes dropped from 31 to 12 on the filler HMI, behind a five-second auto-classify window.
The capital request was withdrawn. The real constraint was capper head changeover time, invisible inside a 97 percent availability figure. Note what produced that: not better software, better Level 2 data. The MES had been correct throughout, reporting wrong inputs correctly.
A wrong number on a dashboard is worse than no number, because a wrong number gets acted on. The second shrink-wrapper was very nearly bought with real money.
Cloud Based Manufacturing Execution System: What It Changes and What It Does Not
A cloud based manufacturing execution system is a reasonable default for multi-site groups: no per-site server estate, faster rollout of a standard model, centrally governed KPI definitions, subscription instead of capital purchase. MarketsandMarkets puts the global MES market near USD 15.95 billion in 2025 and USD 25.78 billion by 2030.
The engineering caveats are real. A cloud based manufacturing execution system still needs an on-premise edge component buffering data when the WAN link drops, because production does not pause for connectivity. Specify buffer depth in hours, not minutes, and prove it by pulling the link at commissioning. Anything gating a machine in real time stays at Level 2 wherever the MES lives: cloud latency is fine for recording a batch step and unacceptable for interlocking one. For regulated production, validation scope extends to the provider's change management, which is why GAMP 5 Second Edition expanded its guidance on cloud service providers. None of it touches data quality: hosting a manufacturing execution system in a data centre does nothing about an unlabelled tag or a counter that resets.
Sequencing an MES Industry 4.0 Roadmap Without Buying Backwards
Most MES industry 4.0 business cases are written top-down: a target OEE improvement, a traceability clause from a customer audit, a corporate digitalisation mandate. Saudi Arabia's Future Factories Programme, targeting 4,000 factories and assessing them with the Smart Industry Readiness Index (three building blocks, eight pillars, sixteen dimensions, six bands each), lands on a plant as a deadline. SIRI rewards close reading: its Process block scores data quality and integration depth, not whether software has been installed. The order of work that holds up is bottom-up.
- Instrument what is not measured and calibrate what is. No MES compensates for a missing flow element.
- Standardise tags, engineering units and machine state definitions across every OEM on the floor.
- Fix identity: lot and batch IDs that exist physically, with S88 structure where batch logic applies.
- Fix counters and time: retentive, monotonic, rollover documented, one time source per device.
- Design the reason code set with the operators who will use it, before software is configured.
- Then buy the MES and phase it: document control and dispatching first, genealogy and performance analysis once steps 1 to 5 are stable.
Every MES industry 4.0 programme I have seen deliver against its business case completed steps 1 to 5 first, deliberately or by painful discovery. The ones that started at step 6 did them anyway in their first year, at higher cost, with a live system on top and a sponsor asking why the numbers keep changing.
Techno Control Corporation does not sell MES software, which is why plants bring us in ahead of one. Our work sits at Levels 0 to 2: field instrumentation and calibration, PLC and SCADA engineering, panel and MCC build, tag standardisation across mixed-OEM equipment, and the state-machine and counter design that decides whether a Level 3 system ever produces a usable number. If you have an MES selection underway, a digitalisation deadline, or figures your plant team quietly does not believe, talk to our engineering team about a control-layer readiness assessment before the software contract is signed.
Frequently Asked Questions
What is an MES system?
An MES system, or manufacturing execution system, is the software layer that manages production between a released work order and a finished pallet: dispatching work, tracking material and labour, enforcing recipes and in-process checks, and recording genealogy. Under ISA-95 it sits at Level 3, between supervisory control (Level 2) and business planning or ERP (Level 4).
What is the difference between MES and ERP?
ERP thinks in orders, days and cost centres; MES thinks in operations, seconds and individual machines. ERP knows a works order closed with a given number of good units; it doesn't know which capper head produced the rejects or which lot was running at 14:20, that operational detail lives only in the MES.
What is the difference between MES and SCADA?
SCADA is stateless about product: it knows a tank's pressure and that an agitator is running, not what batch is in the tank or when its next quality sample is due. MES adds that product and batch context, and unlike SCADA's rolling time-series data, MES records must survive an audit.
What modules does an MES have?
The reference model, MESA-11, lists eleven: scheduling, resource status, dispatching, document control, data collection, labour management, quality management, process management, maintenance management, genealogy, and performance analysis. Document control and dispatching can go live with almost no instrumentation maturity; quality and process management are only as reliable as the sensor data feeding them.

