Know what to reorder before you run out.
The forecasting engine inside IEMSuite. It learns from your own stock movements, product by product.
See how it worksIt works from records IEMSuite already keeps, with nothing extra to import.
Expected daily demand for 30 days, with a confidence label.
When to order, with safety stock for your supplier lead time.
Read from each regular customer's own ordering rhythm.
Demand is built from stock transactions that take stock out for real use. Everything else is ignored, because a receipt or a transfer says nothing about what customers or production actually needed.
Shipments
SHIP_OUT
Stock that left on a shipment to a customer.
Production use
CONSUME
Materials consumed by a production batch.
Manual use
MANUAL_CONSUMPTION
Stock used outside a batch and recorded by hand.
No single forecasting method is right for every product. A product that sells a few units every day behaves nothing like one that sells in occasional bulk orders. So the engine first works out what kind of demand a product has, then tries the methods that suit it and keeps the one that does best on that product's own history.
The 28-day mean and median are added to every pattern as baselines.
naive_seasonalmoving_averagesimple_exp_smoothingcrostonstsbprophetmean_28d / median_28dThe engine holds back recent history, fits every candidate on the days before it, and compares each forecast with what really happened. Two separate 14-day windows are used: one to pick the model and a later one to measure it. The measuring window never influences the choice, so the confidence you see is not flattered by it.
Each candidate is scored on its error across every day, including days with no demand (WMAPE), plus an equal penalty for leaning consistently high or low. Leaning low is what causes stockouts, so a model that is always a little short loses to one that is right on total.
A model that would forecast nothing for a product that clearly sells is never chosen. A more complex model must beat the plain 28-day baseline by at least 2% to replace it, so the forecast does not jump between methods on noise. On a trending product, a flat model cannot win while a trend-aware model is available.
After the choice, the winning model is refitted on the full history to make the 30-day forecast. The whole selection runs again each time a forecast is requested, so when a product's demand changes shape, the model changes with it.
Every forecast says how much to trust it, using the error the chosen model actually made on the held-back days. There is no general accuracy figure, because accuracy depends on the product.
The shaded range on the chart is sized by that same measured error, so a product the engine forecasts badly gets a visibly wider range. The lower edge never goes below zero.
You enter your supplier lead time in days, and optionally how much it varies. The engine suggests the stock level at which to reorder so that demand during the lead time is covered in about 95% of replenishment cycles.
It looks at the last 90 days of the product's demand, adds up demand over every stretch as long as your lead time, and takes the level that covered 95% of them. This uses your product's real ups and downs instead of assuming demand follows a bell curve, which tends to understate the occasional large order that causes a stockout.
When there are fewer than 20 such stretches, or when you enter a lead time variation, it uses the standard safety stock formula instead, which accounts for both demand variation and lead time variation.
Alongside the reorder level you see average daily demand, how variable it is, the safety stock included, and your current minimum stock level, flagged when it is below the suggestion. Nothing is changed automatically. You decide whether to update your minimum.
For B2B customers who buy on a rhythm, the engine notices when the next order is due and lists the ones expected within 7 days, so you can prepare stock or get in touch.
This is based on order timing only. IEMSuite cannot see your customers' own stock, so treat the list as a prompt to get in touch, not a promise.
Forecasting runs on IEMSuite's own forecasting service. Your records are not sent to an outside AI provider.
Read-only access
The forecasting service can read records but cannot change them.
Workspace scoped
Each request is limited to the signed-in user’s own workspace.
Permission checked
Only users whose role can view inventory can open forecasts.
Internal only
The service accepts requests only from the IEMSuite app itself.
A forecast learns from the past. Knowing where that stops is part of using it well.
Full details for users are in the IEQ Engine documentation.
Straight answers about how IEQ Engine works.
IEQ stands for Inventory EQuilibrium: keeping each product's stock in balance, with enough on hand for the demand ahead and not much more. The engine works toward that by forecasting demand and suggesting when to reorder.
IEQ Engine is the demand forecasting engine inside IEMSuite. It reads each product's outbound stock movements and produces a 30-day daily demand forecast with a confidence label, a suggested reorder point for your supplier lead time, and a list of regular customers who are due to reorder within the next 7 days.
Not for every workspace yet. IEQ Engine is in beta and is switched on per workspace as it rolls out. When it is not enabled for your workspace, it does not appear in the app.
Only stock transactions that take stock out for real use: shipments (SHIP_OUT), production consumption (CONSUME) and manual consumption (MANUAL_CONSUMPTION), from up to the last 365 days. Inbound receipts, transfers, adjustments, wastage and returns are not treated as demand. Days with no movement count as zero, and the current day is left out until it is complete.
At least 14 days from its first recorded demand before any forecast is produced. A measured confidence label needs about 49 days, because the engine has to hold back two separate 14-day windows to choose a model and then test it honestly. Until then the confidence shows as unknown.
It uses statistical forecasting models, not a large language model. For each product it tries several established methods, scores them on recent history they were not fitted on, and keeps the best one. That choice is repeated every time a forecast is requested, so it follows a product as its demand changes.
It depends on the product, which is why every forecast shows its own measured error instead of a headline number. The confidence label is high when the error on held-back days is below 30% WMAPE, medium below 70%, and low above that. We do not quote a general accuracy figure.
From the last 90 days of the product's own demand. The engine sums demand over every window as long as your lead time and takes the level that covered 95% of them. With too little history, or when you enter lead time variation, it uses the standard safety stock formula instead. It does not change your minimum stock level; you decide whether to adopt it.
No. Forecasts run on IEMSuite's own forecasting service, which reads your workspace's records with read-only database access. Requests are made by the IEMSuite app on behalf of a signed-in user, scoped to that user's workspace.
Start with IEMSuite today. IEQ Engine switches on for workspaces as it rolls out.
No credit card required to get started