Skip to Content

Finite capacity production planning: moving beyond infinite-capacity MRP

MRP assumes unlimited resources. Here is how to compare load with the real capacity of your work centres and build an achievable plan, step by step.
February 18, 2025 by
Finite capacity production planning: moving beyond infinite-capacity MRP
Planitools

Every night, the MRP run executes in the ERP. Every morning, the planner finds planned manufacturing orders that the shop floor cannot meet: 80 hours of packing in a week that has 63, almost nothing the following week. This is not a configuration fault. It is the very nature of MRP: it plans at infinite capacity.

Building a finite capacity production plan does not necessarily take a solver or an eighteen-month project. It takes comparing, work centre by work centre and week by week, the load generated by MRP with the real capacity of the shop floor, then levelling it. Here is why MRP works this way, what it causes on the shop floor, and how to move to finite capacity step by step, with a worked example.

Why classic MRP plans at infinite capacity

MRP (net requirements calculation) answers two questions: what to make or buy, and by when. It starts from the master production schedule (MPS), explodes the bills of materials level by level, deducts stock and work in progress, then offsets each net requirement by the manufacturing or purchasing lead time to date the planned manufacturing and purchase orders.

At no point does this calculation ask whether the work centre has the hours needed. Suppliers, lines, warehouses and transport are assumed to be unlimited. This is a working assumption, not an oversight: it makes the calculation fast and deterministic. MRP II added a load calculation (CRP), but in most SME ERPs it is not switched on, or it produces a histogram after the fact. MRP therefore delivers a plan that is "ideal" on paper, and it is up to the planner to make it achievable.

What infinite capacity causes on the shop floor

The symptoms are the same from one plant to another; only their intensity changes.

  • Peaks and troughs in load. Some weeks are underloaded, others unmanageable; teams swing between waiting and rushing, with the stress and errors that come with it.
  • Batches and replenishments disconnected from logistics. Quantities that ignore full truckloads, huge orders at month end with no regard for the supplier's capacity: delays, stock-outs, sometimes penalties.
  • Raw material that does not keep up. In poultry, the day's cutting determines what is available, and not all planned manufacturing orders can be released; with short use-by dates, producing too early ends in waste.
  • Reserved stock counted as available, when some customers require it for future deliveries.

So every morning the planner goes back over the planned orders one by one, most often in Excel: we have described this mechanism in the limits of ERPs for planning.

Finite capacity production plan: what are we talking about?

It is a plan in which, on each constrained work centre and in each period, load does not exceed capacity. Three quantities are enough.

  • Load on a work centre over a period, in hours: the sum, for each manufacturing order, of the quantity multiplied by the unit standard time in the routing, plus set-up times.
  • Capacity of the work centre over the same period: the number of resources, multiplied by the opening hours, multiplied by an efficiency rate that absorbs breaks, minor stoppages and unplanned adjustments.
  • Load rate: load divided by capacity. Above 100%, the plan cannot be met.

To get back under the line, there are two ways: level the load, that is, bring manufacturing orders forward or push them back to fill the troughs with the peaks, or hand placement over to a finite capacity solver. Either way, you only model the two or three bottlenecks that set the pace of the shop floor.

Worked example: load against capacity on one work centre

A packing work centre: one line, two 7-hour shifts, 5 days a week, giving 70 opening hours. With an efficiency rate of 90%, the capacity used is 63 hours per week. The load of the manufacturing orders planned by MRP is spread over four weeks as follows.

WeekLoad from MRP (h)Capacity (h)Load rateLoad after levelling (h)
W18063127 %63
W2456371 %62
W37063111 %63
W4506379 %57
Total24525297 %245

Over four weeks, the total load (245 h) fits within capacity (252 h). The problem is not a lack of capacity but a poor distribution. Levelling means bringing 17 hours of manufacturing orders forward from W1 to W2, which rises to 62 hours, and pushing 7 hours back from W3 to W4. Every week is back under 63 hours.

These two moves do not cost the same. Bringing forward means consuming raw material earlier and carrying stock for one more week: acceptable for a dry product, risky with a short use-by date. Pushing back means checking the delivery dates of the orders concerned. And if total load had exceeded 252 hours, levelling would not have been enough: overtime, a third shift or subcontracting.

Moving to finite capacity step by step

  1. Choose the work centres to model: those whose saturation really delays deliveries, not the whole routing.
  2. Make standard times and calendars reliable: compare the actual times reported on the shop floor with routing times, and enter holidays, maintenance and real working hours.
  3. Calculate load per work centre and per week from released manufacturing orders and MRP planned orders.
  4. Show load and capacity next to the planned orders, before confirming them: every change of quantity or date must immediately show its effect on the load rate.
  5. Level with written rules: bring forward rather than push back for stable products, the reverse for short use-by dates; respect batch sizes and truckloads.
  6. Freeze a horizon, for example the current week and the next, to put an end to the constant replanning that wears teams out.
  7. Close the loop every week: compare actuals with the plan, update standard times, adjust the efficiency rate.

What we see in the field on capacity

In poultry, we have seen that mechanically applying cover rates always produces an unworkable plan, because the day's raw material does not keep up. The answer that held for more than two years was not a solver, but a panel above the planning table, recalculated continuously, which showed the remaining raw material with each quantity entered: see this medium-term planning case as well as this marinated poultry plant.

We also see that solvers and AI are not the first step: slow to deploy, tricky to configure, hard to correct by hand. It is better to keep MRP for requirements and dates, and add a tool that shows the constraints and simulates adjustments live. The levelling rules already exist in the planner's head and in their workbooks: the challenge is to make them visible and shared.

Conclusion: infinite-capacity MRP plus a capacity view

Infinite-capacity MRP remains essential: it calculates quickly and accurately what needs to be made and bought. But it does not know whether the shop floor can keep up. Putting load against capacity on the work centres that matter, levelling with explicit rules and freezing a horizon: that is how a finite capacity production plan really holds on the shop floor.

This is exactly what Planiprod does: it reads your ERP every morning, shows load and capacity per work centre next to the MRP planned orders, and every column can be programmed with your levelling rules. The ERP remains the master of manufacturing and purchase orders. To see the load on your work centres against your MPS, book a demo or browse our approach to planning for SMEs.