Historycznie ocena programów lojalnościowych opierała się na prostym porównaniu średnich wartości transakcji uczestników i nieuczestników, co prowadziło do przeszacowania efektu z powodu selection bias. Współczesna analiza produktów wymaga izolacji prawdziwego efektu przyczynowego w warunkach, w których użytkownicy samo-selekcjonują się do programu na podstawie cech, które nie są obserwowane (na przykład planowana wartość zakupów). Kluczowym problemem jest oddzielenie efektu programu od istniejących różnic między grupami, a także skuteczne radzenie sobie z opóźnieniami czasowymi pomiędzy naliczaniem a aktywacją bonusów.
Aby rozwiązać ten problem, należy zastosować kombinację Propensity Score Matching (PSM) oraz Difference-in-Differences (DiD) z rozszerzoną specyfikacją czasowych efektów. Na pierwszym etapie budowana jest model prawdopodobieństwa przystąpienia do programu na podstawie kowariancji przed uruchomieniem (historia zakupów, demografia, zaangażowanie). Użytkownicy są dopasowywani na podstawie najbliższego sąsiada lub wag (IPW), aby zrównoważyć rozkład obserwowanych cech. Na drugim etapie stosuje się DiD z efektami stałymi dla użytkowników i czasu, gdzie okresy są podzielone na bazy względem momentu aktywacji cashbacku (projekt badawczy zdarzeń). Pozwala to śledzić dynamikę efektu, mając na uwadze, że część użytkowników aktywuje bonusy po tygodniu, a część po miesiącu. Aby kontrolować kanibalizację (przeniesienie zakupów w czasie), włączane są opóźnienia zmiennej zależnej i analizowane są kohorty z różnymi horyzontami obserwacyjnymi za pomocą Analizy Przeżycia.
Uruchomiliśmy program cashback 5% na rynku elektroniki, gdzie użytkownicy musieli aktywować opcję w swoim profilu. Po miesiącu metryki pokazywały wzrost częstości zakupów o 40% wśród uczestników, ale biznes wątpił w przyczynowość, ponieważ zakładano, że do programu dołączają pierwotni lojalni klienci. Problem złożoności wynikał z tego, że bonusy można było wykorzystać dopiero po 14 dniach od naliczenia, co tworzyło sztuczny wzrost aktywności w trzecim tygodniu.
Pierwsza rozważana opcja — klasyczny test A/B z przymusową randomizacją dostępu do cashbacku. Plusy: czysta ocena efektu przyczynowego. Minusy: ograniczenia prawne (nie można narzucać programu finansowego bez zgody) oraz zniekształcenie zachowań (użytkownicy, którzy dowiedzieli się o niedostępności cashbacku, uciekali do konkurencji). Ta opcja została odrzucona z powodów etycznych i biznesowych.
Druga opcja — proste porównanie „uczestnicy vs nieuczestnicy” za pomocą testu t z poprawką na wielkość próbki. Plusy: szybkość realizacji i prostota raportowania. Minusy: katastrofalne zniekształcenie przeżycia (survivorship bias) i ignorowanie endogenności; analiza wykazała, że uczestnicy przed aktywacją mieli 2,3 razy wyższą podstawową częstość zakupów, co czyniło porównanie nieprawidłowym.
Trzecia opcja — Regression Discontinuity Design (RDD) na progu wartości pierwszego zakupu, automatycznie dającym prawo do cashbacku. Plusy: lokalna losowość w pobliżu progu zapewnia nieobciążoną ocenę dla marginalnych użytkowników. Minusy: ocena jest ważna tylko dla wąskiej grupy przy progu (lokalny średni efekt leczenia), a nie dla całej publiczności; ponadto w naszym przypadku nie było sztywnego progu — program był dostępny dla wszystkich natychmiast po opt-in.
Wybrane rozwiązanie — kombinacja Propensity Score Matching do stworzenia kontrolowanego syntetycznego i Cohort-based Difference-in-Differences z uwzględnieniem opóźnień czasowych. Dopasowaliśmy uczestników do nieuczestników według 15 zmiennych (segmencje RFM, sezonowość, urządzenie), a następnie zastosowaliśmy DiD z efektami stałymi tygodnia i użytkownika. Aby uwzględnić opóźnienie wynoszące 14 dni, przeprowadziliśmy Event Study z binami względem momentu aktywacji, co pozwoliło oddzielić prawdziwy wzrost od przeniesienia zakupów. Wynik: czysty efekt inkrementalny wyniósł +12% dla częstości zakupów i +8% dla średniej wartości transakcji po odliczeniu kanibalizacji, podczas gdy surowe dane pokazywały +40%. Program został uznany za udany, ale z znacząco bardziej skromnymi oczekiwaniami ROI.
Jak poprawnie rozróżniać efekt programu od czasowego przeniesienia zakupów (intertemporal substitution) w przypadku opóźnień pomiędzy naliczaniem a wydawaniem bonusów?
Odpowiedź wymaga zrozumienia Dynamic Treatment Effects. Należy modelować nie tylko średni efekt, ale także jego dynamikę przez specyfikację badania zdarzeń: Y_it = α_i + γ_t + Σ_k β_k · D_i,t-k + ε_it, gdzie D_i,t-k — zmienne dummy w stosunku do momentu aktywacji. Jeśli współczynniki β_k przed aktywacją znacznie nie różnią się od zera (test równoległych trendów), a po aktywacji wykazują wyskok z późniejszym spadkiem poniżej poziomu bazowego — to jest to oznaka kanibalizacji (borrowed demand). Aby oszacować czysty efekt LTV, należy zintegrować efekt w czasie i porównać z kontrfaktem za pomocą Synthetic Control Method, zbudowanego na jednostkach darczyńców o podobnej wcześniejszej trajektorii.
Dlaczego standardowy test A/B z indywidualną randomizacją może naruszać założenie SUTVA w systemach cashback?
SUTVA (Stable Unit Treatment Value Assumption) jest naruszane, gdy bonusy jednego użytkownika wpływają na zachowanie innych poprzez sieć (na przykład konta rodzinne lub zakupy firmowe). Jeśli mąż aktywuje cashback i dokonuje zakupu dla rodziny, podczas gdy żona przestaje robić swoje zakupy, indywidualna randomizacja da zniekształconą ocenę. Należy stosować Cluster Randomization na poziomie gospodarstw domowych lub używać metod analizy dyfuzji (Spillover Effects), takich jak Two-Stage Least Squares (2SLS) z zmiennymi instrumentalnymi (na przykład wartości progowe dla aktywacji, różniące się między klastrami).
Jak uwzględnić heterogeniczność efektu w czasie życia użytkownika (etap życia klienta) przy sezonowości?
Kandydaci często ignorują, że efekt cashbacku jest różny dla nowych użytkowników (efekt pierwotnej motywacji) i dojrzałych (efekt utrzymania). Należy zastosować Triple Difference (DDD): efekt programu = (Y_post - Y_pre) dla treatment - (Y_post - Y_pre) dla control, różnicowany według segmentów tenure (nowi/doświadczeni). W tym przypadku sezonowość kontroluje się za pomocą stałych efektów miesiąca interakcji z segmentem. Alternatywnie — Heterogeneous Treatment Effects poprzez Causal Forests lub Meta-learners (S-learner, T-learner), co pozwalaidentyfikować segmenty z pozytywnym CATE (Conditional Average Treatment Effect) i optymalizować targetowanie programu na nie, unikając wydatków na użytkowników z zerowym lub negatywnym efektem.