Still Fighting the Bullwhip?
The year is 1961. Computers run on punch cards.
Materials Requirements Planning (MRP) is being born.
Computers have tiny memory by today’s standards. Memory is measured in kilobytes.
Processing speeds are very slow. Running a full MRP explosion across thousands of parts might take hours or overnight.
Programming languages (e.g., COBOL, FORTRAN) and data storage are primitive by modern standards.
Companies process MRP in batch runs (once per day or once per week), not continuously.
Planners face a problem: demand and supply don’t match.
Because of these constraints, MRP designers needed simple, fixed rules that computers could calculate quickly and store easily.
The solution? Add a fixed level of safety stock.
Why so simple? Why use such a blunt instrument as to add an inert safety stock of inventory? From a planning perspective, it ties up a “dead layer” of working capital and cash. The inventory stock simply sits there as a fixed floor of the minimum inventory level that must be maintained at the end of each time period, never used to size or time replenishments since MRP ignores it in its planning logic when calculating gross and net requirements. Ignored completely by MRP unless the inventory level falls below it.
Why safety stock was kept simple:
Because the computers of the 1960s couldn’t handle anything else.
1. Ease of Calculation - A flat “safety stock quantity” is trivial to calculate.
Net Requirements = Gross Requirements − (On-Hand Inventory+ Scheduled Receipts) + any Safety Stock Deficit.
No probability distributions, no recalculation of statistical safety stock, no dynamic buffering.
2. Batch Processing
Systems couldn’t recalculate frequently based on real-time variability, so they needed a static “cushion” that stayed the same until manually changed.
Overnight batch runs left no room for dynamic recalculation.
3. Data Storage Limits
Storing time-phased, variable safety stock levels for thousands of items was impractical.
One field per part (“safety stock = 200 units”) was much cheaper in terms of memory.
Computer memory storage was too scarce to model variability by item, and by time period.
4. Programming Simplicity
Coding complex algorithms for statistical safety stock or dynamic adjustments would have been prohibitively expensive in the 1960s.
Fixed rules (safety stock as a constant) were far easier to implement and debug.
So, MRP got the bluntest tool possible:
A static cushion (fixed quantity per item). One field, one number. "Safety stock = 200 units."
Blind to variability (it does not adapt to demand swings, lead time shifts, or supply reliability).
User-maintained (planners must manually reset it if conditions change).
In other words, the safety stock mechanism wasn’t designed because it was ideal - it was designed because it was the most the computers could handle at the time.
The simplicity of safety stock in early MRP systems was dictated by 1960s computer constraints: low processing power, limited memory, and rudimentary programming capabilities. A fixed safety stock field was computationally cheap and easy to code, but it locked planners into a blunt tool. And that hasn’t fundamentally changed in 60+ years.
How your modern ERP / MRP system treats safety stock:
And today, in 2025 despite the fact that those 1960s computer constraints no longer hold us back, MRP schedules orders like 1960, without dynamically adjusting for variability; and safety stock just “sits there” as a cushion.
1. A fixed inventory quantity manually set for each item.
MRP can include a safety stock quantity for each item, but it treats it as a static number.
The system just ensures that inventory never drops below that fixed number.
2. Planning logic ignores variability:
MRP does not dynamically adjust planned orders based on demand variability, lead time fluctuations, or forecast error.
Safety stock is not used to size or time orders intelligently; it’s just a floor that prevents negative inventory calculations.
3. Result:
If demand spikes above forecast, MRP may still generate shortages despite safety stock, because the safety stock isn’t factored into the lot sizing or timing logic.
If demand is lower than forecast, safety stock may sit unused, tying up cash unnecessarily, increasing carrying costs and raising obsolescence risk.
The bigger problem - the amplification of variability:
Meanwhile, in the same decade of the 1960s, researchers documented the bullwhip effect: How small shifts in demand cascade upstream, amplifying into massive swings of orders, capacity, and cash. They termed it The Bullwhip Effect because of the way small changes in demand at the customer level get amplified as they move upstream in the supply chain, similar to how a tiny flick of a bullwhip handle generates a large, snapping motion at the tip. And after 60 years, the Bullwhip Effect is still cracking supply chains.
The irony?
Safety stock which was intended to be our “solution” actually amplifies the bullwhip. Forecast goes up 10% then, you add a cushion then the supplier sees +25% amplification and then their supplier sees an amplification at +40%. Each step by itself is rational. The system level behavior irrational, and often triggers nervous replans, endless expedite messages, and firefighting that still haunts planners today. Sixty years later, we’re still trying to “fix” this with better forecasts, tighter Exel spreadsheets, and more safety stock. And the whip keeps cracking.
Here’s the uncomfortable truth:
The bullwhip isn’t a bug in traditional MRP. It’s a feature.
The question that demand-driven companies are asking isn’t: How do we predict and forecast demand better? It’s: How do we contain variability instead of letting it spread?
Think firewalls in IT: they don’t stop all threats, but they prevent problems from cascading through the system. Demand Driven MRP applies the same principle to supply chains:
Inventory buffers act as firewalls at strategic decoupling points, not everywhere. They stop the bullwhip.
They adjust dynamically and resize to actual conditions.
They contain upstream volatility, keeping chaos from spreading downstream.
The result? Demand Driven MRP companies:
Operate with 30–45% less inventory
Have 80%+ fewer shortages
Achieve service levels of 97-100% OTIF
And planners are finally able to focus on flow instead of firefighting and constant crisis management
After 60 years of cracking the whip, it’s time to stop.
It’s time to firewall the supply chain against the shocks.