Case study: Jak 49 linijek kodu zamieniło zwykły formularz w automatyczną maszynę do powrotów klientów
O tym, jak połączenie marketingu, analityki i prostego skryptu pozwala przypominać klientom o zakupie dokładnie wtedy, kiedy tego potrzebują.
Cześć, z tej strony Kuba.
Dzisiaj bez marketingowego lania wody, bez słów typu „synergia omnichannel” i bez pokazywania 500 linijek kodu. Będzie za to historia o 49 linijkach prostego skryptu, warstwie danych (Data Layer) i jednym kluczowym pytaniu:
Czy Twój klient, który kupił coś rok temu, dostaje od Ciebie jakikolwiek powód, żeby wrócić?
Bo bardzo często odpowiedź brzmi: nie. I właśnie w tym miejscu zaczyna się cała zabawa.
Na początku był problem
W Hit2Fit pojawiło się wyzwanie, które zna chyba każdy biznes usługowy. Centra rozrywki – takie jak nasze – żyją z powrotów klientów. Ktoś wyprawił u nas urodziny dziecka, ktoś wpadł z ekipą na kręgle, ktoś inny odwiedził trampoliny albo strefę VR.
I teraz najważniejsze pytanie: Czy za rok ta osoba znowu pomyśli o Hit2Fit?
Może tak. Ale równie dobrze może już dawno o nas zapomnieć.
A przecież mamy coś, za co większość firm dałaby się pokroić — prawdziwy, naturalny powód do kontaktu. Urodziny.
Dziecko, które rok temu miało u nas imprezę, za rok nadal będzie miało urodziny. Tylko będzie o rok starsze, z innymi zainteresowaniami i częściej z jeszcze większą paczką znajomych.
Logika biznesowa była więc prosta: nie chcieliśmy ręcznie spędzać godzin na pamiętaniu o każdym kalendarzu. Chcieliśmy, żeby inteligentny system robił to całkowicie za nas.
Większość formularzy w sieci kończy życie po kliknięciu „wyślij”
Spójrzmy prawdzie w oczy. Większość formularzy na stronach internetowych działa według dramatycznie nudnego schematu:
- Imię
- Klik
- Koniec.
Kontakt wpada do bazy i tam powoli umiera. Raz na miesiąc ktoś bezmyślnie wyśle newsletter o niczym, którego większość osób nawet nie otworzy. Firma dumna głosi: „Mamy bazę klientów!”.
Tylko pytanie brzmi: czy ta baza faktycznie na siebie pracuje?
Sama lista maili w Excelu to nie jest żaden marketing. Marketing zaczyna się dopiero wtedy, kiedy potrafisz odpowiedzieć na pytanie: Dlaczego ta konkretna osoba ma dostać tę konkretną wiadomość właśnie TERAZ?
Dlaczego nie użyłem kolejnej ciężkiej wtyczki?
Moje założenia technologiczne były od początku bardzo precyzyjne. Formularz miał:
- Zbierać dane szybko i bez spowalniania strony,
- Przekazywać informacje do systemów analitycznych,
- Płynnie współpracować z Meta Pixel i Google Analytics (za każdym razem, gdy wchodzę w środowisko Google for Developers, jestem szczerze zszokowany, jak potężną i dobrą robotę ktoś tam już dla nas zakodował! 😊),
- Uruchamiać automatyczne kampanie w tle,
- NIE wymagać kolejnej kobyły w postaci ciężkiej wtyczki do WordPressa.
Zamiast dokładać kolejny wtyczkowy kombajn, po prostu napisałem własny skrypt.
Skonfigurowanie rozbudowanej wtyczki na WordPressie wcale nie jest takie proste ani szybkie, jak obiecują w poradnikach. Wygrało więc moje czyste, inżynieryjne lenistwo – czyli gratyfikacja natychmiastowa 😊. Napisanie 49 linijek kodu było po prostu szybsze niż przekopywanie się przez tony opcji krowiastej wtyczki.
A co najważniejsze – nie zostawiło po sobie żadnego długu technologicznego na serwerze. Czyli na koniec wpadła jeszcze gratyfikacja odłożona w czasie.
Co dzieje się pod maską?
49 linijek kodu. I właśnie tutaj zaczyna się najciekawsza część.
Kiedy użytkownik wpisuje swoje dane, skrypt przechwytuje informacje w locie i układa je w uporządkowanej strukturze. Nie mamy już tylko płaskiego wpisu w stylu:
Jan Kowalski | mail@example.com | data organizacji urodzin | Wiek
System od razu wie o wiele więcej:
- Kiedy dokładnie Jan ma urodziny,
- Ile dni zostało do wydarzenia,
- Jaki obiekt i atrakcje oglądał wcześniej na stronie,
- Czym potencjalnie będzie zainteresowany w tym roku.
I tutaj do gry wchodzi Data Layer (Warstwa Danych).
Brzmi technicznie, ale idea jest banalnie prosta: to uniwersalny, wspólny język dla wszystkich Twoich narzędzi marketingowych. Zamiast wysyłać te same informacje osobno i koślawo do Google Analytics, do reklam na Facebooku i do systemu mailingowego – wszystkie korzystają z jednego, idealnie zorganizowanego źródła.
- Mniej chaosu.
- Większa czystość danych.
- Lepsze decyzje biznesowe.
Automatyzacja, która działa wtedy, kiedy trzeba
Co w praktyce daje nam taki układ? Dwie potężne rzeczy:
- Wiadomość trafiona w punkt
Kilka tygodni przed urodzinami rodzic dostaje automatycznego maila:
„Twoje dziecko niedługo ma urodziny? Sprawdź naszą nową ofertę imprezową!”
Nie trzy miesiące wcześniej. Nie po fakcie. Dokładnie w momencie, kiedy rodzic zaczyna w panice myśleć: „Kurczę, gdzie w tym roku wyprawić urodziny?”.
I co najważniejsze — dostaje od nas coś ekstra: przypomnienie. Uwierzcie mi, że głównym problemem przy organizacji imprez dla dzieci jest to, że rodzice przypominają sobie o nich w ostatniej chwili! 😊
- Reklama, która przestaje być przypadkowym szumem
Te same dane zasilają nasz remarketing. Klient scrolluje sobie wieczorem Instagrama czy Facebooka i zamiast widzieć kolejną losową reklamę, widzi komunikat, który idealnie pasuje do jego obecnej sytuacji.
Nie serwujemy mu generycznego: „Hej, przyjdź do Hit2Fit”. Dostaje twardy konkret: „Urodziny coraz bliżej? Zorganizuj imprezę w Hit2Fit!”.
Różnica w konwersji? Gigantyczna. Reklama nie trafia do przypadkowego przechodnia, tylko do człowieka, który ma w tej chwili realną potrzebę i portfel w dłoni.
Dlaczego to naprawdę działa?
Bo nowoczesny marketing to w 90% TIMING.
Możesz mieć najlepszą i najtańszą ofertę na świecie. Ale jeśli pokażesz ją złej osobie albo w złym momencie — nie wyciągniesz z tego ani złotówki.
Prosta automatyzacja pozwala zrobić to, co wcześniej wymagało etatowej pracy i pamiętania o milionie szczegółów. Nie musisz pamiętać o każdym kliencie z osobna. Nie spamujesz całej bazy tym samym mailem. System po prostu cicho pracuje w tle za Ciebie.
I właśnie takie podejście jest prawdziwym fundamentem nowoczesnego MarTechu.
Marketing nie kończy się na wrzuceniu ładnej grafiki z Canvy na Facebooka. Czasami najlepszą, najbardziej dochodową kampanią marketingową jest kilkadziesiąt linijek czystego kodu, które sprawiają, że właściwy człowiek dostaje właściwy komunikat w idealnym momencie.
A teraz pytanie do Ciebie:
Jeżeli Twoja firma zbiera kontakty do klientów, ale później nic z nimi nie robi… to prawdopodobnie wcale nie masz problemu z brakiem chętnych na swoje usługi.
Masz po prostu problem z niewykorzystanymi możliwościami, które już leżą na Twoim stole.
Chcesz sprawdzić, jak zautomatyzować Twoje formularze i dać im drugie życie? Napisz lub zadzwoń — chętnie usiądziemy i rozpiszemy to na czysty kod!
I jeszcze ogłoszenie parafialne:
Dlaczego skrypt powstał akurat w JavaScript? (Mimo że serce bije dla PHP)
No i tutaj muszę do czegoś się przyznać. Ten 49-linijkowy skrypt napisałem w JavaScripcie.
I powiem Wam szczerze: nie przepadam za JS-em. Prywatnie absolutnie kocham PHP – z wzajemnością, chociaż jak w każdym długoletnim związku, zdarzają się dni, kiedy PHP bez ostrzeżenia się na mnie obrazi i rzuci jakimś błędem.
Dlaczego więc JavaScript? Bo w przeglądarce klienta to on jest królem. Żeby złapać dane z formularza w locie, w ułamku sekundy, zaktualizować dataLayer i przestać obciążać serwer zapytaniami zanim użytkownik w ogóle pomyśli o odświeżeniu strony, musieliśmy działać bezpośrednio w przeglądarce (client-side). JS robi to bezszelestnie, na żywym organizmie.