Inventory optimisation is the job of deciding, item by item, how much stock to hold and when to replenish it so you neither break service nor leave money sitting on a shelf. Put like that it sounds like arithmetic. In practice it is a conversation between purchasing, the warehouse and finance, where each side measures success with a different number: purchasing wants to never run short, finance wants cash freed up, and the warehouse wants it to fit.
What we find when we walk into a mid-sized company is almost always the same. Technology is not missing — judgement is. There is an ERP recording movements, a spreadsheet someone has maintained for six years, and an unwritten rule — "we order two pallets of this one" — that nobody remembers setting or on what evidence. And two problems live side by side: stockouts on the best sellers and months of cover on items nobody buys.
This guide is about getting out of that without buying a new platform: what data you need, how to segment the catalogue, how to calculate a safety stock that isn't a made-up number, and at exactly which point a model gives you something a well-built spreadsheet doesn't.
What inventory optimisation is — and what it isn't
Optimising is not "holding less stock". It is putting every euro of inventory where it buys the most service. Sometimes that means raising the stock of one critical item while cutting forty others.
Three ideas that frame the problem:
- There is a target service level, and you choose it. Filling 99% of order lines costs far more than filling 95%. That is not a warehouse decision: it is a commercial decision with a price tag.
- Safety stock pays for uncertainty, not for the average. If you knew exactly what you would sell and exactly when the supplier would deliver, safety stock would be zero. What you are covering is the variability of both.
- Lead time matters as much as demand. A supplier who takes between 15 and 45 days forces far more stock than one who takes 30 on the dot. Supplier reliability is inventory you aren't seeing.
What inventory optimisation is not: a nice dashboard showing turnover by product family. That is diagnosis. Optimisation ends in a replenishment quantity that somebody executes on a Monday morning.
What data do you need before optimising anything?
Less than people fear, but it has to be clean. The minimum list:
| Data | What it's for | Typical problem | |---|---|---| | Sales history by item and date | Estimating demand and variability | Stored monthly, not daily | | Actual lead time by supplier and item | Calculating the reorder point | The contract lead time is used, not the real one | | Reliable current stock | Everything | Physical count doesn't match the ERP | | Stockouts and unfilled orders | Measuring real service | Not recorded: lost sales are invisible | | Unit cost and order cost | Deciding lot size | Scattered between purchasing and accounting | | Past promotions and events | Separating normal from exceptional demand | Nobody noted which weeks had a campaign |
Two of these usually decide whether the project lands or stalls. The first is daily history: if your sales are aggregated monthly, you cannot estimate variability and everything downstream becomes indicative at best. The second is the supplier's real lead time: almost nobody measures it, and it is the single input that moves safety stock the most. If you are only going to fix one thing before starting, fix that — pull order date and receipt date for the last two years and calculate the mean and the spread per supplier. It is an afternoon of work and it changes every number that follows.
And before any of it, a reality check on stock: if system inventory deviates more than 2-3% from the physical count, every calculation built on top inherits that error. That is a data quality problem, not an algorithm problem, and it is fixed with procedure.
How do you segment the catalogue? ABC and XYZ
Treating 4,000 items with a single policy is the number one source of badly distributed stock. The classic segmentation is still the best effort-to-result ratio available, and it runs in a spreadsheet.
ABC ranks by annual consumption value (units × cost): A is usually the 20% of items that explain 80% of the value; C is the long tail that barely registers in euros.
XYZ ranks by demand regularity: X is stable and predictable, Y is seasonal or trending, Z is erratic or intermittent.
Crossing them gives nine boxes and a clear policy for each:
| | X (stable) | Y (seasonal) | Z (erratic) | |---|---|---|---| | A (high value) | Automatic replenishment, weekly review, high service | Forecast with seasonality, review during campaigns | Handle manually, supplier agreements, low stock | | B (medium) | Fixed reorder point, monthly review | Simple forecast + manual adjustment | Keep minimal, make to order where possible | | C (low value) | Large lots, review rarely | Large lots, one adjustment a year | Candidates for delisting |
The AZ box is the painful one: expensive items with unpredictable demand. No model will rescue you there, because there is no pattern to learn. What works is commercial — customer forecasts, volume agreements — and logistical: short supplier lead times so you don't have to guess.
The CZ box is the one everyone ignores and the easiest cash release: cheap, erratic items with years of cover. You don't optimise those, you delist them.
Before asking for a forecasting model, segment. Half the money tied up sits in items no forecast will improve, because they shouldn't be in the catalogue at all.
How do you calculate a safety stock that isn't invented?
The "one month of cover for everything" rule is comfortable and expensive. The correct calculation combines three things: demand variability during the lead time, variability of the lead time itself, and the service level you have chosen. The more erratic the demand or the more unpredictable the supplier, the bigger the buffer.
In practice it is enough to understand which levers move it:
1. Service level. Going from 95% to 99% can multiply safety stock by 1.5. Set the level per segment, not for the whole catalogue: 99% on AX items, 90% on C items. 2. Lead time. Safety stock grows with the square root of lead time. Negotiating fortnightly deliveries instead of monthly cuts inventory without touching anything else. 3. Lead time variability. An irregular supplier costs more than their invoice suggests. Measure it and put it on the table in negotiations — it is a concrete argument, not a complaint. 4. Review frequency. Reviewing weekly instead of monthly reduces the buffer you need, provided somebody actually performs the review.
Once safety stock is set, the reorder point is straightforward: average demand over the lead time plus safety stock. When available stock crosses it, you order. That is the whole mechanic, and in most mid-sized companies implementing it properly already solves 70% of the problem.
When does a model beat a spreadsheet?
Here it pays to be honest, because plenty of people sell the opposite. A well-built sheet with ABC-XYZ, reorder points and per-segment safety stock is enough when the catalogue is manageable and demand doesn't depend on many external factors. Bolting machine learning on top of that improves nothing and adds maintenance.
A model starts to win when one of these holds:
- Decision volume. Thousands of items across several locations. Nobody reviews 12,000 combinations by hand every week, and the spreadsheet stops being maintainable.
- Demand with many drivers. Price, promotions, weather, calendar, cannibalisation between products. A model captures relationships a moving average never sees. We cover this in the demand forecasting guide.
- New or short-lifecycle products. With no history of their own, you have to estimate by similarity to other products, and that is hard by hand.
- Allocation across warehouses. Splitting a short delivery across five depots according to where it will be needed is an optimisation problem, not an intuition problem.
The order we recommend, and which almost always works: segmentation and policies first, measured over a quarter; then statistical forecasting on the A and Y items, which is where it shows; and only then, if volume justifies it, automated allocation. Skipping the first two steps is what turns these projects into pilots nobody uses, for the reasons we see repeatedly in why AI pilots fail.
How do you measure whether it is working?
Four indicators, reviewed at the same cadence as purchasing. None of them is valid alone: cutting stock is trivial if you accept breaking service.
- Actual service level (order lines filled complete and on time / lines ordered). It is the counterweight to everything else.
- Days of cover by ABC segment. Not the total: the total hides that A items are short while C items are overflowing.
- Non-moving stock at 6 and 12 months, in euros. It is money you have already lost but not yet recognised.
- Supplier reliability: percentage of deliveries within the committed window and average deviation in days.
A common mistake is celebrating the first quarter's inventory reduction. Cutting stock early is easy because the obvious fat is there. What proves the system works is the fourth quarter: equal or better service with less cash tied up, sustained. To put a number on the project, set the baseline before touching anything, as we explain in measuring AI ROI.
And a warning on adoption: the maths can be flawless and the purchasing manager still orders what they always ordered, because they ran out once and they remember. That is not fixed with more precision — it is fixed by showing them the system's track record and letting them override proposals with a recorded reason. If nobody is allowed to disagree with the model, the model gets switched off on its own. Same logic we apply in AI in procurement and in any project that changes a daily routine.
Frequently asked questions
How much history do I need to optimise inventory?
For reorder points and safety stock, 12 months of daily sales is workable. If your business is strongly seasonal, you need at least two full cycles — 24 months — to separate the season from the noise. New items are estimated by similarity to comparable products.
Can I optimise inventory without changing ERP?
Yes, and that is the normal case. The ERP records movements and stock; the policy calculation can live outside it and return purchase proposals. Replacing an ERP to optimise inventory is solving a judgement problem with a two-year project.
What service level should I set?
It depends on the cost of a stockout versus the cost of holding stock, and it varies by product. A common range is 97-99% for A items under contract and 85-92% for the long tail. The exact number matters less than the fact that it is decided and written down rather than implicit.
How often should safety stock be recalculated?
Quarterly for most of the catalogue, and whenever something structural changes: new supplier, new lead time, entry into a new channel. Freezing it for a year is the most common reason a well-built system stops adjusting.
If it feels like there is money stuck in the warehouse while you keep running out of your best sellers, the problem is rarely the ERP: it is that every item is treated the same way. Looking at the history, the real supplier lead times and the catalogue segmentation usually produces answers within a few weeks. It is part of what we review in the audit, and if you would rather test the idea in a short call first, let's talk.
Shall we apply it to your case?
The 360° AI Audit turns these ideas into a concrete plan for your company: three weeks, fixed price and the full picture of your AI before spending a euro.
See the 360° Audit→ Let's talk↗