← Back to all posts Manufacturing & shop floor

MES vs MRP vs ERP: the three layers of manufacturing software (and how Odoo unites them)

MRP plans, MES executes, ERP processes the consequences. They are not competitors but three layers, each with its own question and its own clock. This page puts them side by side, shows when you need which layer, and why it matters in Odoo that they sit on the same database. Including a diagnostic that tells you in five questions which layer your situation calls for.

Also in: Deutsch Nederlands

Short answer: they are not alternatives but three layers stacked on top of each other. MRP plans (what are we making, when, is the material there?), MES executes and records (what is happening on the shop floor right now?), and ERP processes the consequences into inventory, cost price and invoicing. The sharpest distinction is the clock: ERP thinks in days to months, MRP in weeks to days, an MES in minutes to seconds. So the real-world question is rarely “MES or MRP”, but: which layer is my bottleneck?

The three layers side by side

ERPMRPMES
AnswersHow is the business doing?What are we making, when, with which material?What is happening on the shop floor right now?
Time horizonDays to monthsWeeks to daysMinutes to seconds
Core objectsOrders, invoices, inventory, general ledgerBills of materials, manufacturing orders, material requirementsWork orders, operations, scrap, quality
UsersManagement, administration, purchasing, salesPlanners, work preparationOperators, production management
Typical questionAre we making money on this customer?Will we hit the delivery date?Why is line 2 down?
In OdooSales, Purchase, Inventory, AccountingManufacturing (MRP)Shop Floor

Read the table from right to left and you see the chain: the MES delivers reality, MRP compares it with the plan, ERP translates it into money.

Where it goes wrong in practice

Three patterns we keep seeing at manufacturing companies.

1. Buying an MES while the foundation is missing. If sales, purchasing and inventory still sit in disconnected systems and spreadsheets, an MES mostly amplifies the chaos: you measure the shop floor very precisely, but the numbers do not tie back to anything. First a system, then measuring.

2. Thinking MRP will solve the shop floor problem. MRP produces a beautiful plan, but if nobody reports what actually happened, the plan stays fiction. Overruns, scrap and downtime only become visible once you record them.

3. Buying an MES for what is really a process problem. If operations are not defined or bills of materials are wrong, no system is going to repair that. Software makes a good process faster and a bad process visibly more expensive.

The order that works in practice: ERP foundation → MRP planning → MES execution. Every step makes the next one more valuable.

Which layer do you need?

Instead of a generic recommendation: five questions about your situation, with an honest verdict. Including the outcome “Odoo is not the right tool here”.

Five questions. No email required, the verdict appears instantly.

  1. 1What is your biggest pain right now?
  2. 2How do operators record their work today?
  3. 3How fresh does production information need to be?
  4. 4Do you need to read machines (IoT, PLC, counters)?
  5. 5How many work centres or operations do you run?

Why one database makes the difference

Classically, ERP, MRP and MES are three packages from three vendors, with integrations between them. That works, but you pay for it with:

  • Delay. Data travels via nightly or periodic synchronisation; the shop floor is real time, your numbers are not.
  • Duplicate master data. Products, bills of materials and work centers exist in two systems and drift apart.
  • Arguments about the truth. When planning and the shop floor show different numbers, the meeting is about which system is right instead of about the problem.

In Odoo they are layers on the same database: Manufacturing for the MRP role, Shop Floor for the MES role. An operator who reports an operation as done immediately reduces inventory, books hours, updates the planning and influences the cost price and the job costing. No integration, no waiting time, no second truth.

That is not “Odoo has the richest MES features”, because it does not. It is: the layer you are missing, you do not have to build alongside it.

Our opinion: almost everyone buys one layer too high

Our position, stated explicitly, because you are entitled to know where we stand.

When a manufacturing company comes to us with “we want an MES”, in the vast majority of conversations the pain turns out to sit one layer lower. Not because those people do not get it, but because MES is the word going around at conferences and in LinkedIn posts, and “our bills of materials are wrong” simply does not make for an inspiring project proposal.

So we will say it out loud: the most underrated layer is MRP, and the most overrated is MES. A correct bill of materials, a realistic operation time and a planning that holds up usually deliver more than real-time insight into a process you do not yet control. Seeing in real time that things are going wrong is not the same as preventing them from going wrong.

Two propositions that follow from this:

  • Measuring only tells you something if there is something to know. An MES on top of shaky planning gives you a very precise measurement of chaos. Impressive, and rarely usable.
  • The layer order is not dogma, but it is almost always true. ERP foundation, then MRP, then MES. We have helped companies that reversed this order. It was possible, but it cost more and it took longer.

Where we argue against ourselves: there is an exception, and it is real. If your pain demonstrably sits in downtime and scrap and you have planning that largely works, then the shop floor layer really is your first step. Then you are measuring something you can actually influence. That is exactly what the diagnostic above filters for.

And one more unpopular point: the vendor who immediately offers you an MES without asking about your planning is selling their product, not your solution. We sell Odoo, so read this page with that in mind; but that is precisely why the section below sets out when you should not come to us.

Honestly: when you do want a separate MES

There are situations where a specialised MES alongside Odoo is the wiser choice:

  • You need to read out and control machines (PLC, process control) instead of having people report.
  • You capture data at second-level resolution across many machines at once.
  • You are in heavily regulated production where a validated MES with its own audit trails is required.

Then the clean architecture is: Odoo as the ERP and planning backbone, the MES as a specialised shop floor layer next to it, with a clear integration. That is more honest than forcing a platform into something it was not built for.

Frequently asked questions

What is the difference between MES and MRP? MRP plans (what are we making, when, which material), an MES executes and records in real time on the shop floor. MRP thinks in weeks and days, an MES in minutes and seconds.

What is the difference between MRP and ERP? ERP is the broad platform for the whole company; MRP is the production planning part within it. In modern packages MRP is a module of the ERP, not a separate system.

Do I need ERP, MRP or MES? That depends on your biggest pain: disconnected systems (ERP), material and planning (MRP), or no view of the shop floor (MES). The diagnostic above gives a concrete answer.

Can an ERP system replace an MES? For people-driven production, often yes, via a shop floor app. Not with deep machine integration, second-level data or validated production.

How do MES and MRP work together in Odoo? Odoo Manufacturing fills the MRP role, Odoo Shop Floor the MES role, on the same database. A reported operation flows straight through into planning, inventory and cost price.


Want to know which layer delivers the most for you? Book a free Odoo scan - we will walk through your planning, your shop floor and your recording, and tell you honestly which layer you need now and which one can wait.


Further reading: What is an MES? · Can Odoo run your production floor? · Odoo for manufacturing companies · Odoo as WMS · Manufacturing accounting in Odoo · The TARGET method

Frequently asked questions

What is the difference between MES and MRP?

MRP (Material Requirements Planning) is the planning layer: it calculates what you need to make, when, and which materials that requires. MES (Manufacturing Execution System) is the execution layer: it drives and records what is happening on the shop floor right now, down to the individual operation. MRP thinks ahead in weeks and days, an MES works in minutes and seconds. MRP makes the plan, the MES executes it and reports back.

What is the difference between MRP and ERP?

ERP is the broad administrative platform for the whole company: sales, purchasing, inventory, accounting, HR and more. MRP is one specific part of that, aimed at production planning and material requirements. In modern packages MRP is therefore usually a module within the ERP, not a separate system. A standalone MRP package without an ERP around it means you have to arrange the administration somewhere else.

Do I need ERP, MRP or MES?

That depends on where your biggest pain sits. If it sits in disconnected systems and duplicate administration, start with the ERP foundation. If it sits in material arriving late and planning grinding to a halt, you need the MRP layer. If it sits in the missing view of what is happening on the shop floor right now, the MES layer is up next. In practice you build them in that order: first a system, then planning, then execution.

Can an ERP system replace an MES?

For people-driven production, often yes. A modern ERP with a shop floor app covers digital work instructions, time registration per operation, scrap, quality checks and barcode scanning. Where it falls short is deep machine integration (PLC, process control), capturing data at second-level resolution across many machines, or heavily regulated production with validation requirements. That is when you put a specialised MES next to your ERP.

How do MES and MRP work together in Odoo?

In Odoo they are two layers on the same database. Odoo Manufacturing fills the MRP role: bills of materials, manufacturing orders, work centers and material requirements. Odoo Shop Floor fills the MES role: operators start and stop operations on a tablet, report quantities and scrap, and perform quality checks. Because there is no integration between the two, a reported operation flows straight through into planning, inventory and cost price.

Recognize this from your own setup?

A 30-min scan turns hunches into a concrete view, what stays standard Odoo, what becomes custom, what doesn’t need code at all.

Get in touch ← Back to blog