Demand planning, on your own machine
A forecast you can stand behind.
Stratos turns the sales exports your team already produces into a reviewed, auditable twelve-month plan. The models compete, the planner decides, and every number can explain itself.
I — The problem
Every month, one planner faces two hundred products and a spreadsheet that answers to no one. The busiest weeks of the year arrive on a calendar the spreadsheet has never heard of; the formula that sets next quarter’s stock was written by someone who left; and when a number is challenged in the room, there is nothing behind it to show.
So the plan is negotiated instead of read. Sales pads it, production discounts it, finance re-does it — and the company quietly runs on three private versions of the truth.
Two hundred products. Twelve months. One person to answer for every number.
II — Who this is for
The quantity is decided long before the order is.
Stratos is built for businesses that decide how much to make or buy before anyone asks for it — where the same products are produced month after month, and getting the quantity wrong costs money in both directions.
That is most of fast-moving consumer goods, and it is just as true of the people who supply them — the packaging, the ingredients, the co-manufacturers whose own volumes are set by someone else’s plan. It fits retailers too, wherever a line is predictable enough to be made rather than ordered.
What these businesses share is not an industry. It is a monthly decision, made under pressure, with consequences that arrive weeks later and land on somebody else’s desk.
Everyone downstream builds on your number.
III — What forecasting is
What the past already says about next month.
Every plan assumes something about next month. A forecast is that assumption written down, where it can be checked — and honest about how sure it is.
Take one product and lay out what it actually sold, month by month, for the last few years. You will see a shape — a level it tends to sit at, a drift up or down, a season that returns, and the odd month that broke the pattern for a reason someone remembers.
A forecast reads that shape and extends it. What matters is the second part: it also says how far out it could be. Near months are tighter, because less can happen. Far months are wider, because more can. A single number with no band around it is not a forecast — it is a wish with a decimal point.
The season does not sit on the same month each year.
Ramadan opens about eleven days earlier every civil year. In 2026 it ran from 18 February to 19 March, so the demand it drives landed in March. In 2027 it runs from 8 February to 9 March, so most of it lands in February instead. The peak has moved a month, and nothing about the product has changed.
A model that only understands civil months cannot see this. It learns that March is the big month, and repeats March. That is wrong twice in the same year: short of stock in February, when the demand actually arrives, and then holding stock through a March peak that never comes.
Stratos does not treat the season as a property of the month. It scans for the market factors that move each product — Ramadan and the two Eids, the school year and the breaks in it — keeps the ones that measurably matter for that product, places them on the civil calendar for every year ahead, and re-fits them every cycle. The peak moves because the driver moved, which is the only reason a peak ever moves.
The engine is fitted to your data, not the other way round.
There is no single forecasting method that suits every business, or even every product inside one. So Stratos is engineered around what you actually sell and what your history can actually support.
Before anything is forecast, every product is sorted by what its own data can carry. A product with a long, clean history gets the full competition. One with a shorter or patchier record is held to looser expectations and given a simpler method that suits it. One that sells in occasional bursts rather than steadily is recognised as such and treated differently. And a product with too little history to say anything honest about is not modelled at all — it is left out rather than handed a number that looks confident and is not.
The same applies at the level of the business. What counts as a season, which calendar drives your demand, how far ahead you plan, how much cover you are willing to hold — all of it is configuration, set for your operation when the system is installed, and changed without anyone writing code.
What this is not
Nothing here forecasts your demand with a neural network. These are established statistical methods, chosen because their workings can be opened and argued with. Stratos does have an AI tool, further down this page — but it is a diagnostician, not a forecaster, and it is not permitted to produce a figure of its own.
Every figure on every screen decodes into the steps that produced it. That is the point: a number you cannot defend in a meeting is not worth having, however it was produced.
IV — How it works
One cycle, every month.
Stratos does not replace the planner’s judgement. It gives that judgement a place to stand, a record, and a way to be checked next month.
Ingest
The same export your team already emails. Stratos maps it to a clean monthly picture, proposes the cut-off, and waits for the planner to confirm.
Review
Months that broke pattern are flagged with their evidence — a collapse, an event, a spike. The planner rules on each. Nothing is corrected quietly.
Simulate
Several model families re-forecast months they never saw. The winner must beat doing nothing at all, or it does not win.
Publish
One plan is signed and becomes the record. Every publication is revisioned; nothing is overwritten, and amendments carry a reason.
Grade
Next cycle, last cycle’s promise is measured against what actually happened — in kilograms and in money, at every level of the portfolio.
Roll up
The published plan loads the production lines, sizes the buffer, and feeds the executive view of volume, revenue and gross profit.
Inside steps two and three: the pass that runs twice.
The first scan for unusual months knows nothing about the model. The second one is the model — and what it did not see coming comes back to you.
V — The instruments
Six instruments.
Each does a single job, shows its work, and leaves a record a reviewer can follow. Every one of them exists to help a planner make one decision they could not make from a spreadsheet.
Forecast Simulation.
Before a model is allowed to forecast your next twelve months, it has to prove itself on the twelve it was never shown.
A model that fits your history perfectly has proved nothing; it has only memorised. So Stratos cuts each product’s history once, twelve months back. Every candidate family is trained on everything before the cut and then asked to forecast the twelve months it has never seen — the same twelve months, for all of them, so the comparison is fair.
The families are not variations on one idea. They run from a plain repeat of last year, through moving averages and exponential smoothing, up to methods that can take account of outside factors like Ramadan. Each is fitted to the product on its own, because the rule that suits one product rarely suits the next.
Each month’s gap between forecast and reality is measured, and the families are scored on the total weighted error and on bias, which says whether a model leans high or low rather than merely missing. The winner is the one that actually forecast best, with a preference for models a planner can explain when the margin between them is thin. One competitor is always in the race: the seasonal naïve, which simply repeats last year, and anything that cannot beat that has not earned the product.
Where nothing clears the bar, the item is not quietly passed off as fine — it is flagged on the page, with the gate it failed. And the whole competition is re-run every cycle, so a model that stops working loses its product to another one without anybody having to notice it slipped.
Outlier scanning, with a Kalman innovations filter.
Not “which month looks odd” — which month actually surprised the model that is doing the forecasting.
Most tools flag a month because it is far from an average. That catches every Ramadan and misses the quiet disasters. Stratos asks a sharper question: given everything the model knew a month ago, how surprising was what actually arrived? The filter carries a running expectation for each product and a running measure of that product’s own noise, and scores each month’s surprise in units of that noise. The tolerances are deliberately lopsided — a sudden collapse is more often a stockout or a delivery that slipped than a real fall in demand, so it is questioned sooner than an equally large jump. Inside a known event the bar is raised, because a surprise during Ramadan is usually the calendar rather than the market. What breaks tolerance is flagged, with its evidence, and handed to the planner. Nothing is ever corrected on its own.
Calendar intelligence.
The biggest weeks of your year do not sit still. Stratos knows where they will be, per product, for every year ahead.
The Hijri year is about eleven days shorter than the civil one, so Ramadan and both Eids march steadily backwards through the Gregorian months. A model that only knows “March” sees a peak that arrives early, then earlier, then splits across two months — and reads all of it as noise. Stratos places the events themselves on the calendar for every year ahead, along with the weeks that lead into them, the school year and the breaks in it. It then measures, per product, how much each of those actually moves demand: the run-up to Eid matters enormously for gifting lines and hardly at all for a staple. The result is a forecast that expects a February peak to become a January peak, because it knows why.
Feature scanning, selection & grid search.
Which signals actually move this product — and what happens if the planner disagrees.
Stratos offers every product the same list of candidate signals and lets the history decide. Each candidate is measured for how much it moves demand and how confident that measurement is; the ones that cannot earn their place are dropped, and the survivors are shown with their strength, not merely their names. Then comes the part that matters in a review meeting. If a planner believes a signal is missing — or believes one that survived is nonsense — the grid search re-fits the alternatives and ranks them side by side, including the option of using no calendar factors at all. The argument stops being a matter of seniority.
How the ranking works, in plain English
The trap. Adding another factor always makes a model fit the past a little better — even a meaningless one. So you cannot choose by fit alone, or you would always choose the biggest set, and the model would be memorising your history rather than learning from it.
The fix. Each combination is scored on how well it explains the history minus a penalty for every factor it used. A factor only improves the score if it earns more than it costs. The penalty gets steeper when history is short relative to the number of factors, which matters here — four years of monthly numbers is not much to spend. Lower is better, and the table shows each set’s distance from the best rather than a raw number, because only the gap means anything.
The honest part. A gap of less than about two points is not a real difference — those sets are statistically indistinguishable from the winner. Stratos draws that band rather than hiding it, so a tie is presented as a tie. When several sets are level, the choice belongs to the planner, and the sensible rule is to take the simplest one you can explain to the room.
Capacity check.
A plan the factory cannot build is not a plan. Stratos says so before the month begins, not during it — and what happens next is built to whatever rule you want.
Once the plan is published, Stratos routes it onto the production lines that actually make the products and compares each month’s load against what that line can produce. The result is a single grid: every line, every month, shaded by how hard it is being pushed, with the months that do not fit marked plainly. Where a month overflows, the shortfall is quantified rather than described — this many tonnes, on this line, in this month — and the neighbouring months show their headroom, so the size and the shape of the problem are both visible. What Stratos will not do is decide for you. It does not schedule the factory, it does not move volume between months, and it never quietly trims the forecast to make the arithmetic work. It shows the collision early enough that the people who own the plant can deal with it while there is still time.
Safety stock from measured error.
How a buffer is actually sized — in five moves, each one visible in the application.
Stratos never sizes a buffer from a textbook constant. It collects the shipped model’s real misses over the review window, gathers them into their own distribution, and places each item’s service target on that curve — higher for the A items that carry the business, lower where a miss costs little. The buffer is then capped by the item’s shelf life, because stock that expires is not safety. And the promise is graded in public: the service level the plan committed to, printed next to the service level the shelves actually delivered.
VI — The AI advisor
The forecast is statistics. This is what explains it.
When a number looks wrong, the useful question is never “what does the model say”. It is “is this real, and why”. Stratos has a diagnostician for that, built so that it cannot make anything up.
Open an item and you can ask, in your own words, why its forecast missed. What answers is not a chatbot with an opinion about your data. It is a set of the application’s own read-only tools — the same code that produced the run — with a language model on top whose only job is to decide which tool to run next, and to explain what came back.
The sequence is fixed rather than improvised. It begins by checking whether the app itself is lying: it recomputes the accuracy figure you were shown, from the run’s own records, independently of the code that displayed it. If that does not reproduce, it stops and tells you the fault is in the software. It will not go looking for a business explanation for a number that is wrong for a technical reason. Only once the figure is proved honest does it ask what the model was doing, then why, then what to do about it.
It is not allowed to do the arithmetic.
The tools read the run’s own records and call the engine’s own fitting code — not a reimplementation of it, the same code. When the advisor tests a what-if, the application first refits the shipped model on unchanged history and checks the answer against what was actually published. If those do not agree, the what-if is not trusted and you are told so rather than shown a number.
Building a deliberately incapable assistant is an odd thing to do, and it is the whole point. A tool that can quote a figure it invented is worth nothing in a meeting where the figure is challenged. This one can only quote arithmetic you could repeat yourself.
Off until you want it, and then it is yours.
The advisor ships switched off. Turning it on is a decision made once per installation, and it then runs on your own account with your own provider. We are not in the middle of it, we do not hold the key, and we never see the conversation.
If your policy allows no external service at all, leave it off. The tools underneath are ordinary application code and keep working without it; the same diagnosis can be driven by hand, one step at a time.
What leaves your building when it is on
The item’s name, its demand history, and how the product family is made up of SKUs — because a diagnosis conducted in code names would not be defensible line by line, which is the point of having one.
What does not leave: money figures, transaction records and customer identifiers. That boundary is enforced by a test that scans what the tools are allowed to return, rather than by anyone remembering to honour it.
VII — What changes for you
What your month looks like afterwards.
Nothing here promises a better number. The measurable change is in how the month runs, what you can show when a figure is challenged, and how much of the argument disappears.
The cycle finishes
The same sequence every month, in a known amount of time, whoever is running it. Not a fortnight of chasing exports and rebuilding formulas.
Every number opens
Any figure on any screen decodes into the steps behind it. When sales challenges a number in the room, you open it rather than defend it.
Last month is graded
This cycle measures the promise the last one made, in kilograms and in money. You find out whether last month’s plan was any good before you commit to this month’s.
The factory objects early
Once the plan is published it is weighed against the real production lines, month by month. A line running over shows up in that review, not in the week it was due to be made.
Buffers are sized, not guessed
Safety stock comes from the model’s own measured misses for that product, rather than a blanket number of weeks applied to everything.
One version survives
One plan is signed and becomes the record. Sales, production and finance argue with the same document instead of maintaining three.
The forecast stops being an opinion and starts having a record.
VIII — How it is delivered
On your own machine. Under your name.
Stratos installs on a machine you control — in your building or on a server of your own. There is no tenant, no shared cluster, and no copy of your sales history anywhere you have not put it.
It runs where you are
A single install on hardware you control — a machine in your building, or a server in your own cloud account. Your sales data is read where it sits and never sent to us for processing.
Every cycle is kept
Each month’s run is archived whole — the data, the decisions, the published plan. Old cycles can be reopened and read, never rewritten.
Configured, not coded
Your product hierarchy, calendar, measures and service policy are settings. Adapting Stratos to your business does not mean a development project.
Plain language throughout
The application explains itself to a planner, not to a statistician. Every recommendation says what it is and why, in words.
Your data, however it arrives
A spreadsheet your team already emails, an export from your ERP, or a database we read directly. We fit the intake to what you have rather than asking you to change it.
The factors are yours
Whatever actually moves your demand — a religious or civil calendar, a promotion diary, a tender season, a competitor’s move — we put it in front of the models and let your history judge it.
IX — The demo
Step inside.
The demo is the real application, running over a fictional client — John S Foods, a Gulf biscuits and snacks manufacturer invented for the purpose. Every figure on every screen was computed by the same engine that would run in your building.
- A full planning cycle, from raw export to a published, signed plan.
- The Forecast Simulation with its scoreboard, item by item.
- Last cycle’s promise graded against what actually happened.
- Capacity load and safety stock built on the published plan.
One email at most, to follow up on your visit. No mailing list, no third-party trackers.
Rather talk to a person first? WhatsApp us · sales@elunia.cloud