Wszystkie artykuły

Średnia z ostatnich 30 dni to nie prognoza. Dlaczego rolling average cicho rujnuje Twój magazyn

Zespół Planislav··5 min czytania
Wykres liniowy: sprzedaż rośnie z 15 do 35 szt./dzień, a 90-dniowa średnia 25/dzień każe zamówić 750 szt. wobec realnego popytu ~1 150 szt. — o 35% za mało.

Najczęstszy sposób planowania zakupów w e-commerce wygląda tak: bierzesz sprzedaż z ostatnich 30, 60 albo 90 dni, liczysz średnią i mnożysz przez liczbę dni do następnej dostawy. Proste, szybkie, wbudowane w Excel i w większość ERP-ów. Problem w tym, że ta metoda myli się nie od czasu do czasu i po trochu — myli się systematycznie, i to najbardziej wtedy, gdy stawka jest najwyższa.

Żeby zrozumieć dlaczego, trzeba najpierw zobaczyć, czym w ogóle jest prognoza.

Popyt to nie jedna liczba, tylko kilka nałożonych na siebie wzorców

Sprzedaż każdego produktu da się rozłożyć na składowe. W literaturze prognozowania (m.in. materiały MIT z programu SCM) mówi się o czterech:

  • Poziom (level) — bazowa wielkość sprzedaży, „ile schodzi normalnie".
  • Trend — czy poziom rośnie, czy spada w czasie.
  • Sezonowość — powtarzalny wzorzec związany z kalendarzem (grudzień, Walentynki, początek roku szkolnego).
  • Szum (noise) — losowe wahania, których nie da się przewidzieć i nie należy próbować.

Dobra prognoza oddziela sygnał od szumu: łapie poziom, trend i sezonowość, a szum ignoruje. Zwykła średnia robi coś przeciwnego — miesza wszystkie cztery składowe w jedną, opóźnioną liczbę. Dlatego przegrywa w trzech typowych sytuacjach. Pokażę każdą na liczbach.

1. Trend: średnia zawsze patrzy wstecz

Załóżmy produkt, który równo rośnie: 90 dni temu schodziło ~15 szt./dzień, dziś schodzi ~35 szt./dzień.

Średnia z 90 dni = 25 szt./dzień. Wygląda rozsądnie. Ale to jest środek okresu, który już minął. Jeśli trend się utrzyma, przez najbliższe 30 dni sprzedaż wyniesie średnio ~38 szt./dzień.

  • Zamawiasz według średniej: 25 × 30 = 750 szt.
  • Realny popyt: 38 × 30 ≈ 1 150 szt.
  • Brakuje ~400 szt. — prawie 35% popytu.

Średnia zawsze cofa Cię do niższego, przeszłego poziomu. Na produktach rosnących chronicznie niedozamawiasz (i gasisz pożary brakami), na spadających — chronicznie przezapasowujesz (i topisz gotówkę). Im dłuższe okno (90 zamiast 30 dni), tym gorzej, bo średnia sięga jeszcze głębiej w przeszłość.

2. Sezonowość: średnia jest ślepa na szczyt

Tu robi się drogo. Weźmy sklep, który przez większość roku sprzedaje ~2 000 szt./mies., a w grudniu ~6 000 szt. — trzy razy więcej. (To nie jest wymyślony przykład; w danych, na których testujemy silnik, grudniowy szczyt realnie przekracza trzykrotność zwykłego miesiąca.)

Liczysz w listopadzie średnią z ostatnich 90 dni. Obejmuje ona sierpień–październik — miesiące poza sezonem, ~2 000 szt. Zamawiasz na grudzień jak na zwykły miesiąc:

  • Zamawiasz: ~2 000 szt.
  • Realny popyt grudnia: ~6 000 szt.
  • Nie sprzedajesz ~4 000 szt. — 67% grudniowego popytu — dokładnie wtedy, gdy zarabia się cały rok.
Wykres słupkowy sprzedaży po miesiącach: równe ~2 000 szt. od stycznia do listopada i grudzień ~6 000; średnia „poza sezonem" nie widzi ~4 000 szt. grudniowego popytu.
Średnia liczona jesienią widzi ~2 000 szt./mies. — grudniowy szczyt jest poza jej zasięgiem.

Odwrotny problem pojawia się w styczniu. Teraz Twoja 90-dniowa średnia obejmuje grudniowy szczyt i podskakuje do ~3 300 szt./mies. Przenosisz ten zawyżony poziom na martwe styczeń i luty i przezapasowujesz o ~1 300 szt. miesięcznie.

Sedno: rolling average zmusza Cię do wyboru — albo reagujesz na bieżące zmiany, albo widzisz sezonowość. Nie da się mieć obu naraz. Krótkie okno (30 dni) jest reakcyjne, ale nie ma pojęcia, że nadchodzi grudzień. Długie okno (90 dni) wygładza, ale rozmazuje szczyt na miesiące, które go nie potrzebują. Wykrywanie sezonowości rozwiązuje to inaczej: przypisuje grudniowi współczynnik sezonowy (np. ×3) i planuje szczyt, zanim on nadejdzie — zachowując jednocześnie reakcyjność na bieżący poziom.

3. Popyt sporadyczny: średnia opisuje dzień, który nigdy się nie zdarza

Większość katalogu w e-commerce to długi ogon — SKU, które sprzedają się rzadko i nierówno. To nie wyjątek, to norma. I tu średnia jest nie tyle nieprecyzyjna, co myląca.

Produkt sprzedał się w ciągu 90 dni tylko w 6 dni, po ~50 szt. za każdym razem. Razem 300 szt. Średnia = 300 / 90 = 3,33 szt./dzień.

Tyle że żaden dzień nie wygląda jak 3,33 szt. Przez 84 dni sprzedaż to zero, a w 6 dni to ~50. Jeśli ustawisz zapas „na średnią" (~3/dzień), pierwsza realna paczka 50 szt. czyści Cię do zera; przez resztę czasu trzymasz towar, który nie rotuje. Wygładzanie takiego popytu klasyczną średnią, jak ujmuje to MIT, „dodaje tylko szum".

Wykres popytu sporadycznego: sześć pojedynczych słupków po ~50 szt. rozrzuconych na 90 dni i linia średniej 3,3 szt./dzień tuż nad osią — żaden dzień nie wygląda jak średnia.
Średnia 3,3 szt./dzień opisuje dzień, który nigdy się nie zdarza — realny dzień to 0 albo ~50 szt.

Właściwe podejście (metoda Crostona) rozdziela dwa osobne pytania: jak duże jest typowe zamówienie (rozmiar ≈ 50) i jak często przychodzi (co ~15 dni). Tempo popytu to 50/15 ≈ 3,33/dzień — ta sama średnia! — ale teraz wiesz, że musisz zabezpieczyć pojedyncze uderzenie 50 szt., a nie 3 szt. dziennie. Ta sama liczba, zupełnie inna decyzja zakupowa.

Kilka pojęć, które warto znać

  • Poziom, trend, sezonowość, szum — cztery składowe każdego szeregu sprzedaży (wyżej).
  • Współczynnik sezonowy — o ile dany miesiąc/tydzień odbiega od normy (grudzień ×3 = trzy razy więcej niż przeciętnie).
  • Popyt sporadyczny (intermittent / lumpy) — sprzedaż w rzadkich, nierównych paczkach; dominuje w długim ogonie e-commerce.
  • Cold start — nowy SKU bez historii. Średnia tu upada z definicji: nie ma czego uśredniać. To w e-commerce problem stały (nowości co tydzień), nie incydent.
  • Reakcyjność vs sezonowość — kompromis, do którego zmusza zwykła średnia, a którego nie musisz akceptować.

Dlaczego akurat sezonowość jest trudna (i najważniejsza)

Wykryć sezonowość to nie to samo co „narysować słupki po miesiącach". Trzeba odpowiedzieć na trzy pytania: czy wzorzec faktycznie powtarza się rok do roku (a nie był jednorazowym zbiegiem okoliczności), jak silny jest, i które SKU jadą z rytmem całego biznesu, a które mają własny mikrosezon. W realnych danych widać, że obok głównego szczytu grudniowego wyłaniają się osobne grupy: produkty z pikiem na Walentynki, na Dzień Kobiet, na Dzień Matki. Zwykła średnia nie zobaczy żadnego z nich. Narzędzie, które je rozpoznaje, planuje zakupy pod każdy z tych szczytów z wyprzedzeniem — zamiast gonić je po fakcie.

Podsumowanie

Średnia z ostatnich 30/60/90 dni nie jest „trochę gorszą prognozą". To metoda, która z założenia opóźnia się za trendem, jest ślepa na sezon i myli się co do popytu sporadycznego — czyli zawodzi dokładnie w tych trzech miejscach, gdzie zapasy najbardziej bolą. Prognozowanie polega na tym, żeby rozłożyć sprzedaż na składowe i policzyć każdą osobno: poziom, trend i sezonowość osobno, szum do kosza.

Gdzie w to wchodzi Planislav

Planislav robi to za Ciebie — bez ustawiania czegokolwiek. Analizuje Twoją historię sprzedaży, sam wykrywa sezonowość (globalną i mikrosezony poszczególnych produktów) i łączy ją z reakcyjnością na bieżący poziom — czyli daje to, czego zwykła średnia dać nie potrafi, jedno i drugie naraz. Na wyjściu nie dostajesz wykresów do interpretacji ani suwaków do kręcenia, tylko listę zakupową: kup X szt. do dnia Y od dostawcy Z.

Przestań zgadywać, ile zamówić.planislav.com

Na czym się opieram: materiały MIT z programu SCM (MicroMasters in Supply Chain Management), prace Nicolasa Vandeputa o prognozowaniu i popycie sporadycznym, metoda Crostona oraz badania nad prognozowaniem popytu w e-commerce (m.in. konkurs M5).