Own venture, in the making
Nalu AI
A decision platform for demand forecasting that is configured per customer instead of hard-wiring industry logic. Design and engine are my work. It is not an offering, and there are no numbers for it yet.
What Nalu does differently
The entry point is not a dashboard but a list of decisions that are due, sorted by expected damage. Every entry names event, probability, impact, deadline, recommendation and cross-check. Classic reports remain, but as evidence to look up, not as the home screen.
A statement about the future has four parts instead of one: expectation, range, probability and hit rate. The last one is the uncomfortable one. It says how often the announced range actually held recently. Where accuracy is lacking, Nalu refuses the firm number and says why.
Where it comes from
Nalu is the generalisation of the platform work in project A. What is hard-wired there, cutting patterns, site logic, industry terms, is configuration in Nalu. Every customer would get their own instance on their own infrastructure; no data leaves their premises.
The name is Hawaiian and means wave. Data follows the same patterns as the sea: seasonality, trend, noise. Spotting the next wave and being ready for it, that is the idea.
Status
In the making, alongside my main job. The drafts below show the interface with sample data, no real customers and no real numbers. What comes of it will appear on this page once it is measured. Before that I claim nothing.
Six views, drawn
The interface as it would look for a fictional beverage wholesaler. Every view answers a question a classic dashboard does not ask. All values are sample data.
Today
Week 37, Monday, 7 September 2026, model run 05:12
Forecast, next 4 weeks
Nalu expects 246,000 crates, +9.4% against the same period last year, range ±21%. The increase comes almost entirely from the heatwave and the end of the holidays. Three decisions are due, one of them before Wednesday.
Mineral water Classic lasts 6 days. The spring delivers in 8.
The four water items pull 14,200 crates next week, 18,900 at peak. Stock covers until 13 Sep, empties returns cover 70% of the volume. The order would have to go out today.
Week 38 exceeds picking capacity with 68% probability
Expected 61,400 crates against a capacity of 54,000. Even in a normal week, 7,400 crates are missing. Pulling forward into week 37 solves it. 9,200 crates are free there, the warehouse can take it.
Hotel Seeblick has ordered below forecast for three weeks
Expected 320 crates a week, actual 190. Well below what even a bad week explains. So not a coincidence. Churn 58% likely within 60 days, annual value €36,000.
last 30 days, off by 8.1% on average, slightly too low
From 8 weeks on, plan with the range, not with the single number.
118 of 124 items run inside the forecast corridor. Availability 100%, no open alerts.
Forecast cockpit
What is coming, as a range, not as a single number
Expected sales
61,400crates
In 8 of 10 cases 49,800 to 74,100
Probability above plan
42%
Plan 63,000 crates, forecast 2.5% below
Capacity insufficient
68%
in week 38, limit 54,000 cratesCheck pull-forward
Quantity for 95% availability
71,300crates
This much covers demand in the chosen horizon.
| Item | Lasts until | Risk |
|---|---|---|
| Mineral water Classic 0.7 l | 13 Sep | high |
| Empties crates 0.7 l | 15 Sep | high |
| Apple spritzer 0.5 l | 19 Sep | medium |
| Lager 20 × 0.5 l | 27 Sep | low |
Breakdown against baseline 55,900 crates
Weather explains more than the trend here. The outlook is accordingly sensitive to the 14-day forecast.
Picking bottleneck week 38
from recommendation 2, created today 09:41, 4 variants calculated
Recommendation
Scenario A: pull 7,400 crates forward into week 37. Costs €1,900 in warehouse space and capital, lowers the capacity risk from 68% to 11% and avoids an expected loss of €29,600. The extra shift would be safer but costs five times as much for the last 8 percentage points.
Baseline
Do nothing
68%
Capacity risk
Scenario A
Pull 7,400 crates forward
11%
Capacity risk
RecommendedScenario B
Extra shift Saturday
3%
Capacity risk
Scenario C
Price +3% in week 38
41%
Capacity risk
| Baseline | A: Pull forward | B: Extra shift | C: Price +3% | |
|---|---|---|---|---|
| Capacity risk week 38 | 68% | 11% | 3% | 41% |
| Expected shortfall | 7,400 crates | 500 crates | 0 crates | 2,900 crates |
| Direct extra cost | – | €1,900 | €9,600 | – |
| Lost contribution margin | €29,600 | €2,000 | – | €14,100 |
| Expected result | −€29,600 | −€3,900 | −€9,600 | −€14,100 |
- Contribution margin €4.00 per crate from the last 90 days.
- Warehouse holds 12,000 crates, 3,400 of them occupied.
- Price response: 1% dearer, 1.6% less sales. Based on only 4 price changes, weakly supported.
- Extra shift: €9,600 by tariff, without surcharges.
Scenario C rests on the weakest assumption. The price response is the least certain number on this page.
Forecast accuracy
What Nalu predicted and what actually happened
Self-report
Nalu made 2,140 predictions in the last 90 days. 84.2% of them came in as announced. So the ranges are honest, if anything slightly too cautious. And Nalu consistently estimates a little too low, by 1.1% on average.
Up to 4 weeks the range holds. Beyond that Nalu widens it and says so.
| Group | Hit | Trend | Consequence |
|---|---|---|---|
| Mineral water | 91% | stable | ready to order |
| Soft drinks | 86% | stable | ready to order |
| Beer | 83% | slightly worse | plannable |
| Juices | 79% | worse | range widened |
| Promotions | 64% | poor | no firm number |
Slightly too low, unchanged for 6 weeks. No reason to readjust.
- ready to order
Hit rate from 85%. The proposal can be accepted directly. - plannable
Between 75 and 85%. Plan with the range, recheck before applying. - no firm number
Below 75%. Nalu gives only the range and says why.
Purchasing
What the forecast triggers in orders: 12 proposals, 4 due today
Service level
95%
Standard for full range
Order value 4 weeks
148,000€
Expected shortfall
1.4%
Capital tied up
12days
at 98%: +€17,500 for 0.5% shortfallat 90%: −€24,000 at 4.1% shortfall
Lasts until 13 Sep, in a bad case only until 10 Sep, delivery on 15 SepTwo-day gap even in the good case. Ordering today closes it.
Lasts until 19 Sep or already 12 SepRange twice as wide as usual. On promotions Nalu is off by 19% on average.
Lasts until 27 Sep, no need of its own.Lifts the combined order above the minimum order value.
Lasts until 2 Oct, in a bad case until 25 SepOrdering earlier ties up €3,800 for no benefit.
Risks
What goes wrong with which probability, and what it costs
Total exposure
Over the next 12 weeks, €71,200 of expected damage is on the table, spread over 5 risks. Two of them together make up 86%. The rest is noise and needs no attention today.
The mineral water feels most urgent, it hits next week already. By expected damage it only ranks third. Hotel Seeblick is eight weeks away and looks harmless, but costs five times as much.
This re-sorting is the whole point. Every alert list sorts by urgency, only a forecasting system sorts by expected value.
Radler supply shortage resolved, Getränkemarkt Süd renewed
68 % · €32,400
58 % · €36,000
31 % · €11,800
22 % · €9,400
unknown