MES vs LIMS: Lab Results, Line Data and Who Holds the Batch
In short: the LIMS owns the lab result, and the MES owns what the line did while it waited. A dairy or food plant with a QC lab needs both jobs done, linked by one batch ID and one clock.
- The LIMS manages samples, tests, specs and results. A failed result there can put a batch on hold.
- The MES or OEE layer records stops, counts and line rejects, minute by minute.
- Line rejects feed the OEE Quality factor. Late lab fails need a written rule.
- Time spent waiting for a release is a line loss. Give it its own stop reason.
A yogurt line finishes its first hour after CIP. The lab has the sample. The line waits for the release, or runs into a hold area. Two days later a micro result comes back. Which system knew what, and when? That is the real MES vs LIMS question. Answer it before buying either.
Fabrico, which wrote this guide, sells an OEE and light MES platform for the line side. Hold our claims to the same proof you would ask of a LIMS vendor. For the wider quality picture, read MES vs QMS; for food safety records, HACCP records vs OEE data.
MES vs LIMS: two clocks, two records
A LIMS works on samples. Someone takes a sample, logs it, runs tests, compares results to a spec and records a pass or a fail. Results arrive in hours, or days for micro plates.
An MES works on the line. It records when the line ran, when it stopped, how much it made and how much was rejected. Data arrives in seconds. For what the category covers in general, see our guide to MES software.
| Question | LIMS | MES or OEE layer |
|---|---|---|
| Main record | Sample, test, result | Stop, count, reject |
| Unit of work | Sample and batch | Shift, order, minute |
| Speed | Hours to days | Seconds to minutes |
| Who uses it | Lab and QA | Operators, leads, CI |
| Typical question | Is this batch in spec? | Why did the line stop? |
| Can block a batch | Yes, via a hold | Only if built to gate |
The two meet at the batch. The lab says whether a batch is good. The line says how the batch was made, and how long the line stood still while the lab decided.
If your IT team maps systems on ISA-95, the ISA standards page describes it as an international set of standards, also known as IEC 62264, that defines the interface between business and control functions. Put both systems on that map before you pick tools.
Who blocks a batch
Food rules can require testing and a reaction to bad results. In the US, the FDA preventive controls rule lists verification activities in 21 CFR 117.165, including "Product testing, for a pathogen (or appropriate indicator organism) or other hazard", as appropriate to the preventive control, and environmental monitoring. In Europe, the microbiological criteria regulation, Regulation (EC) No 2073/2005, Article 7, says in the UK revised version on legislation.gov.uk that when testing against the food safety criteria in Chapter 1 of Annex I gives unsatisfactory results, "the product or batch of foodstuffs shall be withdrawn or recalled".
So a lab result can stop a batch from shipping. That decision belongs to QA, in the system your procedure names. Ask whether that is the LIMS, the ERP or a QMS in your plant. The MES or OEE layer should show the hold, not own it, unless you bought an MES built to gate production.
The trap is the gap between the two. If the line runs into a hold area while the lab works, nobody loses time, but you carry risk and stock. If the line waits for release, you lose minutes that can land in an unclassified stop. Either way, write it down.
Lab holds vs the OEE Quality factor
OEE Quality is good units against all units produced. It is fed by what the line rejects: checkweigher rejects, seal rejects, units scrapped at the filler. That count is fast and belongs to the shift. Our page on checkweigher rejects and OEE quality covers how to count them.
A lab hold is different. The units passed the line. They sit in a hold area until a result comes back. If the result fails, they become scrap days later, after the shift report has gone out.
There are two honest ways to handle that. Restate the shift: move the failed units from good to rejected and recompute OEE. Or keep shift OEE as the line saw it, and report lab fails as their own figure, by batch and by cause. Both work. Mixing them does not, because your trend lines then compare different things. For the OEE arithmetic itself, see OEE calculation.
Worked example: one cup filler shift
Sample figures for illustration only. A yogurt cup filler runs one 480-minute shift. Ideal rate: 125 cups a minute.
- Stops: 72 minutes, of which 25 minutes waiting for the lab to release the start-up sample. Run time: 480 minus 72 = 408 minutes.
- Availability: 408 / 480 = 85.0%.
- Performance: 45,900 cups made, against 408 x 125 = 51,000 possible. 45,900 / 51,000 = 90.0%.
- Quality: 918 checkweigher and seal rejects. Good cups: 45,900 minus 918 = 44,982. 44,982 / 45,900 = 98.0%.
- Shift OEE: 0.85 x 0.90 x 0.98 = 0.7497, so 75.0%.
Two days later, a micro result fails for one batch from this shift: 4,590 cups, already held, now scrapped. None of them were among the 918 line rejects, so nothing is counted twice.
- Rule A, restate: good cups 44,982 minus 4,590 = 40,392. Quality 40,392 / 45,900 = 88.0%. OEE 0.85 x 0.90 x 0.88 = 0.6732, so 67.3%.
- Rule B, report apart: shift OEE stays at 75.0%. The lab fail is reported as 4,590 cups, 10.0% of the shift's output (4,590 / 45,900).
Look at the waiting time too. 25 of the 72 stop minutes, or 34.7%, were spent waiting for the lab. If that time sits under a vague reason, the case for faster sampling never gets made. A stop reason such as "waiting for lab release" makes it visible per line and per shift.
Pick a LIMS, an MES, or link both
Pick a LIMS first if results live in paper books and spreadsheets, specs change often, and audits ask how a result was produced. The line data can wait a few months; release decisions cannot.
Pick an MES or OEE layer first if the lab runs well but nobody knows why the lines stop, how long they wait, or what the rejects cost. Start where the blind spot is.
Link both if lines wait for releases, holds pile up, or QA and production argue about whose numbers are right. Then the batch ID and the clock matter more than any feature list.
| Situation | Lean toward | Why |
|---|---|---|
| Results live in paper books and spreadsheets | LIMS first | Release decisions need clean results |
| Lab is fine, stops and losses are a guess | MES or OEE first | The line is the blind spot |
| Lines wait for releases after start-up | Both, linked by batch ID | The wait is a lab and a line cost |
| Customers ask for full genealogy | Full MES or ERP batch records | They hold genealogy and batch records |
| Packing lines have no data | Light MES on those lines | Coverage is the gap, not the lab |
A light MES covers machine data, production monitoring, OEE and downtime. If regulators or customers require full genealogy or electronic batch records, those belong in ERP batch records or a full MES. See what a light MES covers and light MES vs full MES.
Want to see line data next to a lab process? Book a demo and show us one week of hold logs with the lab release times.
Eight handoff checks for any vendor and your own team
Put these to the LIMS vendor, the MES vendor and your own QA and OT leads. The answers tell you where the gaps are.
- Batch ID. Does the lab sample carry the same batch or lot ID the line uses? If the lab writes 2611-A and the line writes Batch 4417, nobody can join a result to a shift without a spreadsheet.
- Hold status. Which system holds the batch, and who may release it? One system, one named role. Production should see the hold, not clear it.
- In-process checks. Which checks are lab tests, and which stay at the line? A pH check by the operator at the filler is a line record. A micro plate read two days later is a lab result.
- Waiting time. Is time spent waiting for a result logged as its own stop reason? If it is hidden in a general reason, the cost of slow results never shows.
- Line rejects. Do checkweigher and seal rejects feed OEE quality, once? Count a pack in one place only, even when the lab tests a sample from the same batch.
- Late lab fails. Restate shift OEE, or report lab fails apart? Write one rule. The worked example above shows both. Mixing the two makes trends useless.
- Data route. How do results and counts move: API, webhooks or file export? Write down who sends what, how often, and what happens when a message fails.
- Owner. Who fixes the link and the spec list when they break? Name a person in QA and a person in OT. A link without an owner breaks quietly.

Text version of this infographic:
- Checklist card titled MES vs LIMS:
- 8 handoff checks, with Iris the mascot.
- Checks:
- batch ID, hold status, in-process checks, waiting time, line rejects, late lab fails, data route and owner.
- Footer:
- LIMS owns the result, MES owns what the line did meanwhile.
Where Fabrico fits
Fabrico is an OEE and light MES platform. In a plant with a QC lab, it covers the line side of a lab hold: the stops, counts and rejects around a batch while the lab does its work.
- Lab wait as its own stop: Fabrico reads stops from the line's PLC, or from a Fabrico IoT device with external sensors on older machines. Operators tag the cause of a stop on a tablet or phone, so "waiting for lab release" stays apart from changeovers and jams.
- Line rejects, not lab fails: good and scrap counts feed the OEE quality factor, with good units and scrap entered on a tablet where no sensor counts them. Losses are shown in money. See the solution overview and our guide to OEE software.
- Alerts: push, in-app and email notifications, with rules for who is told about what.
- Shift results for QA: output, stops and OEE per shift, with a REST API, webhooks, and Excel or CSV export of any list. Matching a batch ID from your LIMS to these records is one to test with your own hold log.
At manual stations or machines with no usable signal, the camera add-on counts output, and the camera add-on video for a stop can be opened during a stop review. In the standard setup, camera add-on video is streamed when someone opens it, not stored in Fabrico. Stop-reason suggestions from the camera add-on are roadmap. See computer vision for OEE and computer vision for dairy processing.
Fabrico does not sell quality inspection. Inspection systems and the lab do that work. How reject counts from an inspection system reach the OEE quality factor is a question to raise with us.
For sector detail, see MES for dairy processing, MES for food manufacturing and computer vision for FMCG manufacturing.
What people ask next
Do we need both an MES and a LIMS?
A food plant with a QC lab needs both jobs done. The LIMS manages samples, tests and results. The MES or OEE layer records what the line did: stops, counts and rejects. Whether that means two products depends on what each one covers in your plant.
Can an MES replace a LIMS?
Only if it really manages samples, test methods, specifications and lab results. Ask any vendor to show that with a lab sample, not a slide. A light MES is built on the machine signal, so treat lab work as a separate job.
Should a failed lab result change OEE?
It depends on the rule you write. Some plants restate the shift's quality figure when a lab fail arrives. Others keep shift OEE as the line saw it and report lab fails as a separate figure. Pick one rule and apply it the same way on every line.
Who should release a batch, the lab or production?
The person your quality procedure names, usually QA. The release lives in the system the procedure names. Production should see the hold status, but should not be able to clear it.
How do MES and LIMS share data?
Through a shared batch or lot ID and a common clock. The route can be an API, webhooks or a file export. Agree which system sends what, how often, and who fixes the link when it breaks.
Where does a light MES stop in a lab-heavy plant?
A light MES covers machine data, production monitoring, OEE and downtime. Full genealogy and electronic batch records belong in ERP batch records or a full MES, and lab results belong in the LIMS.
Book a demo with one batch's release record and the stop sheet from the shift that made it, and we will show which minutes were lab waits.
Related articles

Real Fabrico tiles, sample data.











