A three-week sprint for a multi-vendor distributor. €6,500, fixed scope. One week of deep analysis and solution architecture, two weeks of focused delivery. Twenty hours a week of manual forecasting replaced. The system was handed over to the client's own support team — no vendor lock-in. Three new commercial insights the old method had been hiding.
The problem
A commercial team tracked sales across product categories. Every week, they projected where each category would land at the end of the six-month cycle. They calculated the gap against target. They brought those numbers to vendor meetings, where the gap was the whole conversation.
Two things didn't work.
First, time. Twenty hours a week — half a full-time role — went into the exercise. Pulling numbers. Extrapolating forward. Reconciling against target. Preparing vendor-level breakdowns. Senior-analyst work, on a loop that never let up.
Second, accuracy. The method was straight-line projection. Seasonality got smoothed away. Category rhythms got averaged out. The forecast was often meaningfully wrong. Which meant pressure in vendor meetings was going to the wrong vendors.
This was the client's first engagement with us. They wanted a small, concrete test. Three weeks. €6,500. Fixed scope.
What we did
We split the sprint into two phases.
Week one: analysis and architecture. We mapped the data sources. We understood the commercial logic. We designed the pipeline. No code yet.
Weeks two and three: focused delivery. We built it, tested it, and shipped it.
The stack was deliberately open:
- Python for data ingestion — open-source, universal.
- Meta Prophet for the forecasting — open-source, industry-standard. Handles seasonality and trend changes natively, instead of as heuristics bolted onto an average.
- Power BI for the analytics layer and for the vendor-facing reports.
No proprietary frameworks. No vendor lock-in. Everything running on tooling the client's support team already had people for.
The result
Three outcomes.
The handover. We delivered the full system — fully documented, end-to-end — to the client's existing support team. They can extend it. They can adapt it. They don't need us to keep it running.
The capacity. Half a role came back. The 20 weekly hours are gone. The team uses that time for the commercial judgment the forecast exists to support.
The revelations. Running real forecasts on real data surfaced three things the old method had been hiding:
- Several categories had strong seasonality the linear method had been averaging away. The "gap" under the old process was systematically wrong, cycle after cycle.
- Two or three categories carried most of the forecast risk. Meetings had been spread evenly across all vendors when they didn't need to be.
- Two categories were already tracking ahead of target. The old method had been reporting a gap where there wasn't one. Those vendors were being pressured when they should have been reinforced.
None of these were in the brief. They came out of the new tooling. And they sparked the next round of work — a set of ideas for a follow-up sprint, each one building directly on what sprint one delivered.
The sprint that was supposed to prove we could replace a spreadsheet ended up showing what the spreadsheet had been hiding.