Data & ML

Demand forecasting on autopilot:
history in, a number you can buy against out

Most teams forecast demand in a spreadsheet that one person updates by feel, once a month, right before a purchasing meeting. We build a model that reads your sales history, seasonality and promo calendar, and refreshes a per-SKU forecast on a schedule. It ships with a confidence range instead of a single guessed number.

from$900
Timeline7 to 14 days
What is includedPer-SKU or per-category forecast model trained on your sales historySeasonality and promo calendar built into the model, not ignoredScheduled refresh (daily or weekly) with a confidence range, not one numberBacktest report against the last 6-12 months before go-livePush to your buying sheet, ERP or a dashboard your team already checks
6-12 moof history backtested before a forecast is trusted for buying
weeklytypical refresh cadence, daily for fast-moving SKUs
range, not a pointevery forecast ships with a confidence band a buyer can read

Why the buyer’s spreadsheet is really a guess

A buyer opens a spreadsheet, scrolls through last year’s numbers, applies a gut-feel growth rate, and submits a purchase order before a deadline. The forecast is rarely written down as a number with a range. It lives in one person’s head and in whatever they typed into a cell. When that person is on leave, the next buyer starts from scratch or just copies last month’s order.

The real cost shows up twice. Overstock ties up cash in SKUs that sell slowly, and the write-off or discount that eventually clears them erases margin that looked fine on paper. Understock does the opposite. A popular SKU runs out during its best week, and the sale is lost outright. A customer who wanted to buy often does not come back to check again later.

Nobody can tell, after the fact, whether a forecast was close or wildly off, because nobody kept the original number next to what actually happened. Each cycle restarts the same guesswork with no memory of the last one.

What the model learns, and what it ships every cycle

The model trains on your own sales history, by SKU or by category depending on your volume. It learns the seasonality your business actually has: a spike before a holiday, a slow stretch in a particular month, a weekday pattern for a local store. Promo dates and planned marketing pushes feed in as inputs too. A forecast for a discount week looks different from a normal one, instead of the model getting blindsided by a demand spike it had no way to predict.

Each refresh produces a forecast with a confidence range, not a single number presented as fact. A buyer sees whether a SKU’s demand is predictable or genuinely uncertain and sizes the order accordingly. The forecast lands in whatever your team already checks: a Google Sheet, a buying dashboard, or your ERP’s purchasing module if it has an import format.

Before go-live, the model runs a backtest against your last six to twelve months. You see how it would have performed on demand you already know happened, not a promise about the future. Once live, actual sales get compared against the forecast on every cycle. A drift outside the expected range triggers an alert, instead of quietly compounding into a bad order two months later.

Where the final order quantity still sits with the buyer

The final order quantity is a buyer’s call, especially for new product launches, one-off promotions, or a supply constraint the model has no way to see. The model surfaces a range and the reasoning behind it. It does not place an order or commit budget on its own. Any SKU the model flags as unpredictable gets a note saying so, instead of a confident-looking number that is actually a guess.

How forecast accuracy gets tracked, not assumed

Every forecast is logged alongside the actuals that eventually came in. Accuracy is measured, not assumed, and the model gets retrained on a schedule rather than drifting silently. A backtest against known history runs before any forecast is trusted for a live purchasing decision. A kill switch reverts the buying sheet to manual entry in one message if something looks off.

Price and timeline

Option Price What it covers Timeline
Single automation from $900 One category or warehouse, model, backtest, scheduled refresh 7 to 14 days
Department package from $2,800 Forecasting plus reorder prediction and SKU rationalisation across your buying team 3 to 5 weeks

Running cost is usually $30 to $120 a month in compute and model usage depending on SKU count and refresh frequency.

Pair this with stockout risk prediction, so a forecast actually triggers a reorder before a popular SKU runs out. SKU rationalisation makes the catalogue itself lighter, not just better-stocked. The full package breakdown is on the AI agents service page and the automation-everything overview. For a sense of what disciplined demand planning did for a real retailer, see the Balkans supplements store case study.

Ready to stop guessing next month’s order? Get in touch and we will look at your sales history in the first call.

Tired of doing this by hand? We can take the whole routine off your team, not only this step: Routine takeover, from $400 →

FAQ

How much does demand forecasting automation cost?

From $900 for a single category or warehouse with a model trained on your own history, live in 7 to 14 days. A department package covering forecasting, reorder and SKU rationalisation together usually starts at $2,800.

How much sales history do you need?

At least 12 months is ideal, so the model can learn seasonality. 6 months works for a first version with wider confidence ranges. New SKUs without history get a category-based estimate until they build their own data.

Does it replace our buyer's judgment?

No. The model produces a range and flags what is driving it. A buyer still sets the final order quantity, especially around promotions, new launches or supply constraints the model has no visibility into.

What happens when a forecast is wrong?

Every forecast is logged against what actually happened, so accuracy is visible over time, not assumed. Large misses trigger a review of what changed: a promo the model did not know about, a supply shock, a competitor move. That feeds back into the next refresh.

Which systems does it connect to?

Your sales data from Shopify, a marketplace, a POS system or a data warehouse, on the input side. A Google Sheet, your ERP or a buying dashboard, on the output side.

Start here

Tell us the problem.
We bring the system.

A 30-minute call, then a written plan with numbers within 48 hours. No obligation. If we are not the right fit, we will say so and point you to someone who is.

LIKE WHAT YOU SEE?

This site is our work.
Want one like it?

Ten languages, no page builder, launched in 2026 by a team working since 2015. We can build the same quality into your site.

  • 10 languages
  • Since 2015
Get a site like this →