MES for Seafood Processing: Who Runs Yield, Traceability and OEE
In short: an MES for seafood processing has to answer three questions: how much fish became product, where each lot came from and went, and why the line stopped. Graders, yield software and the ERP usually answer the first two. A light MES answers the third.
- Yield and grading run on kilos and belong to the grader and its software. OEE runs on packs and minutes. Keep the two numbers apart, and report them side by side.
- Traceability rules are getting stricter: FSMA 204 in the US covers finfish, smoked finfish, crustaceans and bivalves (raw bivalves under the NSSP are exempt), and the EU is moving fishery lots to digital records.
- The packing side usually has the thinnest data: trim tables, hand packing and the packer.
- Fabrico is a light MES for the line: stops, counts, OEE and losses in money. It does not grade fish, calculate yield or keep lot genealogy.
A fish plant buys its raw material by the kilo, sells it by the pack and must prove where every lot came from. That is three systems' worth of questions, and one system rarely answers all of them.
This page is for plant managers, operations directors and CI leads at fish and seafood processors choosing MES software.
We make Fabrico, a light MES, so check our claims as hard as any other vendor's.
What a seafood MES does, job by job
| Job | On a fish line | Usually runs in |
|---|---|---|
| Intake and grading | Weight, size grade and quality class of each fish or box | The grader and its software |
| Yield by batch | Kilos in against kilos packed, by supplier, species and grade | Grader or yield software, or the ERP |
| Portioning and batching | Fixed-weight portions and packs from fish of mixed sizes | Portion cutter and batcher software |
| Lot traceability | Catch or farm data, lot codes, one step back and forward | The ERP, a traceability system or a full MES |
| Label data | Species, catch area, production method, defrosted or not | ERP master data and the label system |
| Weight control | Checkweigher rejects, giveaway, glaze | Checkweigher software |
| Stops, counts and OEE | Line state, packs, stop reasons, losses in money | A light MES |
Many seafood plants already run a grader, often with yield or batching software from the equipment maker. The gap is usually on the packing line: why packs per hour fell after a grade change, and which stops cost the most.
The parent guide, MES for food manufacturing, lists the functions food-wide, and light MES vs full MES sets the line between the two.
Yield and grading: the kilo side of the plant
The EU's STECF economic report on the fish processing industry (STECF 25-15, published in December 2025) finds that in 2023 raw materials remained the dominant cost component, at 71% of production costs. That is an EU-wide average, so check your own cost split.
So yield gets the attention first. It asks how many kilos of fish became product, and it moves with the fish: species, size, season, supplier.
The grader weighs and sorts each fish or portion, and its software knows kilos by grade. That data feeds yield. It should also set the ideal rates on the packing line, because small fish often pack slower than large ones.
Keep OEE out of the yield number, and yield out of OEE. OEE quality counts rejected packs. Heads, frames, skin and trim belong to yield. Our page on OEE for seafood processing sets out that rule, and OEE vs yield puts the two formulas side by side.
The MES question is how the two meet. Usually the grader or ERP exports the kilos, the light MES exports packs and stops, and one report joins them by shift and by time, using each lot's start and end times from the ERP or lot system.
Traceability: what the rules now ask for
Two rule changes matter for an MES decision.
FSMA 204 in the US
The FDA's Food Traceability List names finfish, smoked finfish, crustaceans and bivalve molluscan shellfish. Its finfish examples include cod, haddock, Alaska pollock, salmon, tilapia and trout; catfish and other Siluriformes are not on the list. Raw bivalve molluscan shellfish covered by the National Shellfish Sanitation Program, or by the other controls the FDA names, are exempt.
Under the Food Traceability Rule, firms that handle those foods keep Key Data Elements for Critical Tracking Events. They assign a traceability lot code at points such as the first land-based receiving of fish from a vessel, or when they transform a food. Unless exempt, they must provide an electronic sortable spreadsheet within 24 hours of a request, or a longer time the FDA agrees to, when the FDA needs it in an outbreak or a recall. The FDA proposed moving the compliance date by 30 months, to July 20, 2028, and Congress has directed it not to enforce the rule before then.
Digital traceability in the EU
The European Commission's revised fisheries control rules introduce mandatory digital traceability along the supply chain for fresh and frozen fishery and aquaculture products, gradually expanding to processed products like canned goods. The rules come from Regulation (EU) 2023/2842, and the Commission says some of them apply in 2026 and some only in 2028. Since 10 January 2026, EU importers must use the CATCH IT tool for catch certificates.
What that means for the MES
All of this is lot data: which fish, from where, into which pack, shipped to whom. It needs consumption records that link input lots to output lots. A light MES does not keep those; the ERP, a traceability system or a full MES does. Our lot traceability data model shows the tables a full trace needs.
A light MES adds the line side: which stops, repairs and shift ran while a lot was on the line. Set its stop and count export next to the lot's start and end times, and an investigation has both halves.
Where the line time goes on a fish line
On the packing side, the usual causes are waiting for fish, grade and species changes (fish to shellfish means an allergen clean), freezer defrosts, blocked glazers and short packer stops. The OEE rules for each of these are on our seafood OEE page. For where the camera add-on counts at the trim tables, see the seafood camera guide.
Weight, glaze and giveaway
Fixed-weight packs bring giveaway: portions cut heavy to stay safe on weight. Frozen fish adds glaze. Regulation (EU) No 1169/2011, Annex IX, in the text as adopted by the EU (published on the UK's legislation.gov.uk), says that where a food has been glazed, the declared net weight shall be exclusive of the glaze. So glaze is not product, and extra fish under the glaze is product given away.
The checkweigher weighs fish and glaze together, so only a deglazing check tells you how much of each carton is fish. Giveaway passes every check, so OEE never sees it. It lives in the batcher, checkweigher and QA data. See checkweigher rejects and OEE quality.
Who records what on a frozen portion line
Here is one example: frozen, glazed whitefish portions, from intake to cases.
Start the light MES on the packing side: the cartoner's signal, plus a camera add-on count at the trim tables, where nothing counts today.
Light MES or full MES for a seafood plant
Match the first purchase to the loss that hurts most.
| Problem | First system | Reason |
|---|---|---|
| Packs per hour swing and nobody knows why | A light MES on the packing line | Stops and counts from the machines, reasons from the operator |
| Yield varies by boat and supplier | Grader or yield software | It owns the kilos by batch and grade |
| A buyer or the FDA asks for a fast trace | ERP lot functions, a traceability system or a full MES | A trace needs lot codes and consumption records |
| Fixed-weight packs give away too much | Batcher and checkweigher software | The weight data lives there |
| Landings reshuffle the plan daily | Your ERP or planning tool | Fabrico does not schedule |
| Every one of these, at several sites | A staged full MES | More ERP work and a longer wait for results |
A common outcome is a split: lot and yield records where buyers and regulators ask for them, and OEE on each packing line.
Bring a station list, a shift's stop sheet and a yield report to a demo. We will mark which rows Fabrico covers and which stay with your other systems.
Worked example: yield and OEE for the same shift
Sample figures only, from no real plant. A line packs frozen, glazed whitefish portions in 500 g cartons, at an ideal rate of 30 cartons a minute set by the IQF freezer's capacity for this product, over 450 minutes of planned production time.
- Stops: 63 minutes. A freezer defrost inside the shift 30, cartoner jams 18, a blocked glazer 9, metal detector checks 6.
- Line counts: the cartoner made 10,682 cartons, and 380 were rejected as underweight or by the metal detector, leaving 10,302 good.
- Kilos: 5,900 kg of skinless fillets came in. Deglazing checks found 512 g of fish in the average carton, so the good cartons held about 5,275 kg of fish.
Run time is 387 of 450 minutes, so availability is 86.0%. At 30 a minute, 387 minutes could make 11,610 cartons. The cartoner made 10,682, so performance is 92.0%. Quality is 10,302 of 10,682, or 96.4%.
OEE is 86.0% x 92.0% x 96.4% = 76.3%. As a check, 10,302 good cartons of 13,500 possible in 450 minutes is also 76.3%. Our OEE calculation guide shows the method.
Now the kilo side. Yield is about 5,275 of 5,900 kg, or 89.4%. Each carton carried 12 g of fish over its declared 500 g, so about 124 kg went out as giveaway: some 247 cartons' worth of fish that nobody paid for.
Read either half alone and you chase the wrong thing. The stop log points at the freezer defrost, its longest stop. The OEE split shows a slightly bigger loss: 928 cartons of slow running, which no stop explains. The kilo side shows a loss OEE never sees: 124 kg of fish given away under the glaze.
Put the two halves side by side, hour by hour. The light MES timeline shows when the line ran slow and on which shift; the batcher and QA data for the same hours show which product and glaze setting were running. At an example contribution of €0.60 a carton, the 3,198 cartons lost on the line come to €1,919 in one shift. Price the giveaway at the cost of fish, in your batcher or yield system.

Eight checks for any seafood MES vendor
Ask every vendor the same eight questions, Fabrico included, using a real shift from your busiest line.
| Ask | How to test the answer |
|---|---|
| Where do kilos and packs meet? | Ask to see yield by batch next to OEE for the same shift, and how the two are joined. |
| Can it tell starved from stopped? | Log waiting for fish and check that it stays apart from machine faults in the report. |
| Are rates set per product and grade? | Ask for ideal rates per product and size grade, and who may change them. |
| Which lot data does it hold? | Ask in writing: lot codes, consumption records, the 24-hour spreadsheet. Theirs, or the ERP's? |
| How do grader and checkweigher data get in? | By interface, by file, or not at all, and who keeps that link working. |
| Can a gloved operator in a wet room use it? | Watch one pick a stop reason at the line, wearing gloves. |
| What happens at the trim tables? | No PLC counts there. Ask how output is counted: a sensor, a camera or by hand. |
| How soon does one packing line show live data? | Ask for a date, and for the list of what your network, machines and team must have ready. |
Cameras, crews and the works council
On a fish line, a light MES reads the freezer, glazer and packer from their signals. The camera add-on counts at the trim tables and hand packing, where nothing else counts. Trim tables put many people side by side, so aim the camera at the outfeed belt, not the table, and keep reports at row and shift level, with no figures for named people. Talk to the works council or employee representatives first, and brief seasonal crews in their own languages. See GDPR and production line cameras.
Where Fabrico fits
Fabrico is a light MES and OEE platform in the cloud. In a seafood plant it covers the line side, from the filleter to the cases.
- Line signals: the filleter, freezer, glazer and packer report stops and counts through their PLC, or through a Fabrico IoT device with external sensors where a machine is old.
- Reasons: operators pick them on a tablet or phone from the plant's own reason codes, waiting for fish among them.
- Results: OEE, downtime by cause and micro-stops for each line and shift, with the losses in money, on web, iOS and Android.
- Camera add-on, on request: it counts output at trim tables and hand packing, where no machine counts. From the shift timeline you can open the camera add-on's video for any moment. In the standard setup, the camera add-on streams video on request, and Fabrico does not store it.
- Links: an SAP or other ERP connection can be scoped per customer. Other systems connect through the REST API and webhooks, and any list exports to Excel or CSV.
Not live today: Production planning is on our roadmap, with no release date. Today Fabrico does not build or schedule your plan: it shows what the lines can do. Stop-reason suggestions from the camera add-on, confirmed by the operator, are on the roadmap too.
What Fabrico does not do: grading, yield by batch, portion batching, lot genealogy, label data or giveaway control. Those stay with your grader, batcher, checkweigher, ERP or traceability system. Fabrico makes no FSMA 204 or traceability compliance claim.
Devices connected in about a month; full rollout in 3 to 4 months. See the MES and OEE software page for the full scope and the computer vision add-on page for the cameras. For plants that run more than fish, see the FMCG camera guide. Hold us to the eight checks too, in a demo, with one shift's stop sheet on the table.
What people ask next
Which seafood line should get a light MES first?
Usually a packing line where people set the pace and little is counted today, such as trim tables and hand packing in front of the packer. Its losses are the least visible, so its first weeks of data tell you the most.
Does a light MES help with FSMA 204?
Not directly. FSMA 204 asks for Key Data Elements, traceability lot codes and, unless exempt, a sortable spreadsheet within 24 hours of a request. Those are lot records for your ERP or a traceability system. A light MES adds the line's stops and counts for the time a lot ran.
Can Fabrico take data from our grader?
Not as grading or yield data: Fabrico does not grade fish or calculate yield. Other systems connect to Fabrico through its REST API and webhooks, and its data leaves as Excel or CSV, so OEE can sit next to grader data in one report. Whether your grader can send data depends on its interface, so ask us in the demo.
Where do stop reasons come from on a fish line?
Operators enter them on a tablet or phone at the line. The machine signal records when the line stopped and for how long. Stop-reason suggestions from the camera add-on, confirmed by the operator, are on the roadmap.
What drives the cost of a seafood MES?
Quotes depend on how many lines and machines you connect and how, whether you add the camera add-on with wet-area housings, the ERP link and training. Send every vendor one station list so the quotes line up.
Want to put a price on a fish line's losses? Book a demo and bring last week's packing line stop sheet.
Related articles
Latest from our blog

Real Fabrico tiles, sample data.








