Przemysław Zalewski

Wdrażam z PostHogiem od 2024

Programista PostHog: dane, którym ufasz, i dashboardy, które czyta zarząd

Blokery zjadają zdarzenia, a dashboardowi nikt nie ufa. Plan zdarzeń piszę przed funkcją, PostHoga stawiam w chmurze EU za własnym proxy i buduję dashboardy, od których zaczyna się cotygodniowa rozmowa. Niżej widać, jak ta strona mierzy samą siebie.

Chcesz najpierw liczbę? Zobacz godziny, cenę i termin →

Rozmowy w tym tygodniu · start pracy 3 listopada 2026 · Wrocław, zdalnie

Przemysław Zalewski
4000+freelancerów i zespołów na Sandtime.io
8platform Sandtime.io, gdzie byłem founding engineerem
800+przejrzanych pull requestów w jednym produkcie, 2018 do 2026
~2/3zmergowanych PR w 2026 zbudowanych z agentami AI, prawie wszystkie przez mój review albo merge

Brzmi znajomo?

Problemy z PostHogiem i analityką, które rozwiązuję w 2026

Czy boty pompują nam ruch i rejestracje?

Imperva Bad Bot Report 2026, opublikowany 5 maja 2026, policzył, że boty generują już ponad 53% całego ruchu w sieci, a ataki botów napędzanych AI wzrosły 12,5 raza. Każda taka wizyta może trafić do Waszego lejka jako odwiedzający albo rejestracja.

Odfiltrowuję znane boty, crawlery i Wasz ruch testowy z wykresów, które czyta zarząd, żeby konwersja liczyła ludzi. Filtr ustawiam raz dla całego projektu, więc każdy nowy wykres startuje czysty. W styczniu 2026 boty uderzyły w formularz rejestracji klienta; znalazłem wzorzec w logach i tego samego dnia uruchomiłem na produkcji ochronę przed botami.

Czy dostawca analityki może wynieść dane klientów?

W listopadzie 2025 włamywacz wykradł zbiór danych z Mixpanela. OpenAI ujawniło, że były w nim imiona i nazwiska, adresy e‑mail i przybliżone lokalizacje użytkowników API, po czym zrezygnowało z Mixpanela.

Plan zdarzeń piszę tak, żeby zdarzenia niosły identyfikatory i tylko te właściwości, których wymaga pytanie, bez imion i e‑maili. Maskuję pola w nagraniach sesji, a PostHoga uruchamiam w chmurze EU za własnym proxy. W maju 2024 wytłumaczyłem zespołowi marketingu, dlaczego zahashowany e‑mail nie jest anonimowy i dlaczego pod RODO nawet hash z solą wysłany do sieci reklamowej może być udostępnieniem danych osobowych.

Masz to u siebie? Umów bezpłatne 30 minut →

Odrzucone ciasteczka zjadają nam dane w analityce?

3 września 2025 francuski CNIL nałożył 325 mln euro kary na Google i 150 mln euro na Sheina w sprawach dotyczących zasad cookies. Shein został ukarany za zapisywanie ciasteczek bez zgody. Rezygnacja z banera nie wchodzi w grę.

Ustawiam PostHoga tak, żeby do decyzji odwiedzającego niczego nie zapisywał, a osoby, które odmówią, liczył w trybie bez ciasteczek, opartym na skrócie chroniącym prywatność. Treść banera i tak zatwierdza Wasz prawnik. W 2024 na stronie afiliacyjnej ustawiłem, żeby sygnał Global Privacy Control z przeglądarki działał jak sprzeciw, a analityka startowała dopiero po zgodzie.

Ile ruchu dają nam ChatGPT i Claude?

28 lipca 2026 PostHog przeniósł ChatGPT, Claude’a, Gemini i Perplexity do nowego kanału AI i przeliczył historyczne sesje. Filtry i alerty oparte na Organic Search albo Referral pokazują teraz inne liczby.

Przebudowuję dashboardy kanałów i alerty pod kanał AI i łączę każdy kanał z rejestracjami i przychodem. Gdy przejąłem wzrost w jednym SaaS‑ie, ruch organiczny urósł z niemal zera właśnie na tej pętli SEO, GEO i dashboardów. W październiku 2026 zauważyłem, że wizyty z ChatGPT ginęły w analityce produktu, bo jego linki mają tag UTM i nie mają referrera, więc zbudowałem widoki w PostHogu, które czytają jedno i drugie i pokazują wizyty oraz rejestracje z każdego asystenta AI.

Masz jeden z tych problemów? Umów bezpłatne 30 minut →

Dlaczego ja

Plan zdarzeń przed funkcją

Zdarzenie, wyzwalacz, właściwości i pytanie, na które odpowie dashboard, spisane przed kodem i trzymane w repo. PR, który dodaje funkcję, dodaje jej wiersz, więc zdarzenie wychodzi razem z nią, nigdy jako osobny ticket.

Zdarzenia, których nie zjadają blokery

Własne proxy na Twojej domenie, bez cookies, hosting w EU. Według dokumentacji PostHoga proxy odzyskuje zwykle 10 do 30 procent zdarzeń więcej. Na tym samym zestawie działa ta strona.

Dashboardy, które czyta zarząd

Aktywacja, retencja, przychód i adopcja per klient, zbudowane tak, żeby cotygodniowa rozmowa zaczynała się od liczb, nie od pytań. W case study niżej te dashboardy szły w parze z pracą SEO i GEO, a pozyskiwanie organiczne urosło od prawie zera.

Wiesz, czy ktoś używa Twoich funkcji AI

Adopcja per klient mierzona od pierwszego wydania, dashboardy budowane przez MCP PostHoga z agentami kodującymi. Na serwerze MCP, który wdrożyłem, dashboard pokazał regułę antybotową blokującą klientów MCP i tego samego dnia już jej nie było.

Pokaz na żywo

Ta strona mierzy samą siebie

Każde zdarzenie, które ta strona wysyła do PostHoga, od razu pojawia się w feedzie razem z właściwościami: odsłona, załadowanie tego pokazu, Twoje kliknięcia. Tabela z planem zdarzeń pokazuje, kiedy każde z nich jest wysyłane i na jakie pytanie odpowiada. Wyślij zdarzenie testowe i zobacz, jak dociera.

Ładuję pokaz…

Zablokuj żądanie w narzędziach deweloperskich, a feed też to pokaże. O to chodzi z własnym proxy.

Dowody

Praca, którą mogę pokazać

Problem, co zrobiłem, efekt. Nazwy klientów tylko tam, gdzie wolno mi ich użyć.

Przejęcie wzrostu: SEO, GEO i dashboardy, które czyta zarząd

Problem
Pozyskiwanie organiczne było bliskie zera i nikt nie umiał powiedzieć, która funkcja rusza którą liczbę.
Co zrobiłem
Plan zdarzeń dla każdej funkcji, dashboardy KPI w PostHogu, praca SEO i GEO na landingach i helpie, z helpem, changelogiem i landingami traktowanymi jako jeden kontekst dla ludzi i botów.
Efekt
Pozyskiwanie organiczne urosło od prawie zera: w jednym 28‑dniowym oknie kliknięcia organiczne wzrosły o 116%, a wyświetlenia 2,5×. Zarząd bierze liczby z dashboardów, nie z pytań. Liczby celowo zostają względne.

PostHog SEO + GEO

Zarządzanie zadaniami back-office: lead czwórki, bez product managera

Problem
Narzędzie back-office potrzebowało nowych funkcji, odświeżenia UI i szybszego pipeline’u, bez product managera na horyzoncie.
Co zrobiłem
Prowadziłem czterech inżynierów i dalej kodowałem. Trunk-based development z CI/CD, aktualizacje na żywo przez server-sent events, zatrzymana równoległa inicjatywa, która wedle analizy by się nie zwróciła, priorytety ustalane wprost z kierownikami działów. Ankieta wśród 100+ operatorów narzędzia oceniła zmiany jako wyraźną poprawę.
Efekt
„Measurable changes in some key metrics” i „a true bias for action” w publicznej rekomendacji na LinkedInie od mojego przełożonego w tym projekcie, dziś CTO.

zespół 4 rekomendacja przełożonego

Serwer MCP od pierwszego merge’a do pierwszych zewnętrznych użytkowników

Problem
Użytkownicy Sandtime.io, trackera czasu, który zbudowałem w Sanddev i z którego korzysta 4000+ freelancerów i zespołów, chcieli logować czas z asystentów AI. API istniało, powierzchnia dla agentów nie.
Co zrobiłem
Ustawiłem powierzchnię narzędzi, usunąłem narzędzia destrukcyjne, przepuściłem każdą operację przez istniejące kontrolery REST, żeby agent nie miał szerszego dostępu niż człowiek, i od pierwszego dnia mierzyłem adopcję per klient w PostHogu.
Efekt
Pierwsi zewnętrzni użytkownicy. Regułę ochrony przed botami, która odrzucała klientów MCP po user agencie, znalazłem i usunąłem tego samego dnia, bo pokazał to dashboard.

MCP OAuth dashboard adopcji

Masz podobny problem? Umów bezpłatną rozmowę →

Jedna noga w drzwiach

Nie czas na projekt? Zacznij od tygodnia albo jednego PR‑a.

Dwa sposoby, żeby zobaczyć, jak pracuję, zanim zamówisz sprint. Stały zakres, widełki ceny poniżej, ostateczna kwota na piśmie w ciągu 24 godzin od rozmowy.

Tygodniowy audyt kodu PostHog

Ręcznie czytam repo, CI, testy, wdrożenia i miejsca, których zespół unika. Dostajesz pisemny raport: ryzyka uszeregowane po koszcie, co naprawić najpierw, plan z kamieniami milowymi i decyzję go/no‑go, którą da się obronić. Raport zostaje u Ciebie bez względu na to, czy pracujemy dalej.

4 500⁠–⁠8 800 zł netto · 30⁠–⁠40 h · Zobacz cenę i termin →

Code review jednego pull requesta albo modułu

Przyślij diff, który Cię martwi. W kilka dni dostajesz komentarze do linii, trzy rzeczy, które zmieniłbym najpierw, i werdykt: zmergowałbym czy nie. W jednym produkcie przejrzałem od 2018 roku ponad 800 pull requestów.

300⁠–⁠880 zł netto · 2⁠–⁠4 h · Zobacz cenę i termin →

Umów rozmowę i wybierz Najpierw bezpłatna rozmowa 30 min. Jeśli żadne nie pasuje, powiem to na rozmowie.

Jak to działa

Trzy kroki od tej strony do działającego projektu.

  1. 1

    Rozmowa 30 minut

    Opisujesz produkt i problem. Ja zadaję pytania, które zadałbym pierwszego dnia.

  2. 2

    Zakres na piśmie

    W ciągu 24 godzin po rozmowie dostajesz krótki plan na piśmie: co budujemy najpierw, co mierzymy, jak pracujemy i ile to kosztuje. Bez prezentacji.

  3. 3

    Działający kawałek w pierwszym tygodniu

    Wdrożony, zmierzony i gotowy do przejrzenia. Dalej tempo wyznaczają liczby.

Dopasowanie

Czy to pasuje?

Dobre dopasowanie, gdy

  • Potrzebujesz seniora, który bierze odpowiedzialność za dowiezienie, nie pary rąk
  • Produkt ma wyjść i być mierzony, z product managerem albo bez
  • Współpraca solo albo jeden zespół do czterech osób, który prowadzę bezpośrednio
  • TypeScript, React, Node.js, Cloudflare, Postgres, PostHog, a Python, gdy praca tego wymaga

Raczej nie, gdy

  • Projekt na dziesięcioosobowy zespół dostawcy
  • Stack zbudowany wokół Javy albo chmury, w której nie pracuję
  • Body leasing na godziny bez wpływu na sposób pracy

Styl pracy

Jak pracuję

Mierzone, nie zakładane

PostHog w każdym projekcie od pierwszego dnia. Plan zdarzeń dla każdej funkcji i dashboardy, z których zarząd bierze liczby, zamiast o nie pytać.

Zero zaległych bugów

Błąd jest naprawiony albo świadomie zamknięty, nigdy odłożony. Alerty i śledzenie błędów w każdym projekcie, więc o problemach dowiaduję się przed klientem.

Bez product managera? Spoko.

Gdzie nie ma PM‑a, ustalam priorytety wprost z ludźmi używającymi oprogramowania i sam odpisuję na support.

Warto wiedzieć

Fakty o PostHogu, które zmieniają rachunek i dane

Zdarzenia anonimowe są do 4 razy tańsze

Przy person_profiles ustawionym na identified_only odwiedzający zostają anonimowi aż do identify(), alias(), group() albo setPersonProperties(). Zdarzenia zidentyfikowane mogą kosztować do 4 razy więcej (dokumentacja PostHoga).

Flagi bez profilu osoby

setPersonPropertiesForFlags() pozwala celować flagami w anonimowych użytkowników bez tworzenia profilu (dokumentacja PostHoga).

Ogólne identyfikatory sklejają wszystkich w jedną osobę

PostHog nie zidentyfikuje ponownie użytkownika z innym ID i blokuje ogólne wartości jak „null” albo „guest”. reset() przy wylogowaniu zapobiega doklejeniu kolejnego logowania do poprzedniej osoby (dokumentacja identify).

Proxy odzyskuje 10 do 30 procent zdarzeń

Reverse proxy zwykle łapie 10 do 30 procent więcej zdarzeń, ale tylko na subdomenie bez słów jak analytics, tracking czy posthog i z ustawionym ui_host (dokumentacja proxy).

Dane ponad limit rozliczeń przepadają

Po osiągnięciu limitu rozliczeń nadmiarowe dane są wyrzucane na zawsze, a nie wstrzymywane (limity rozliczeń).

Odsłony w SPA wymagają daty defaults

Zmiany tras w aplikacjach jednostronicowych łapią się same dopiero przy defaults ustawionym na 2025‑05‑24 lub później (konfiguracja JS). Ramki iframe stron trzecich w nagraniach są puste (nagrania sesji).

FAQ

Pytania, które padają przed umówieniem rozmowy

Czy da się szybko sprawdzić, czego brakuje w moim PostHogu?
Tak, za darmo: Dashboard Desk odczytuje Twoje zdarzenia, tworzy w Twoim projekcie dashboard wzrostu z lejkiem, aktywacją i retencją, i wypisuje braki w Twoim planie zdarzeń. Klucz zostaje w Twojej przeglądarce.
Czy da się zmierzyć, czy asystenci AI nas polecają?
Tak. Darmowa Widoczność w AI zadaje co tydzień pytania Twoich klientów i pokazuje, czy padacie z nazwy i które strony są cytowane; praca nad wzrostem, która z tego wynika, jest mierzona w PostHogu.
Hosting w EU i RODO?
PostHog Cloud EU, domyślnie bez cookies, bez danych osobowych we właściwościach, chyba że produkt tego potrzebuje, a polityka to opisuje. Banery zgody tylko tam, gdzie zgoda jest podstawą prawną.
Co z blokerami reklam?
Własne proxy na Twojej domenie, ze ścieżką, której nie łapią listy filtrów. Spodziewaj się widocznego skoku przechwyconych sesji w dniu wdrożenia.
Ile to kosztuje?
Rozliczam godziny: stawka bazowa 180 zł netto, od 150 do 220 zł zależnie od trudności, bez minimum, więc możesz przerwać w każdej chwili. Szczegóły w cenniku. Nie wiesz jeszcze? Zacznij od tygodniowego audytu kodu: stałe widełki, a ostateczna kwota na piśmie w ciągu 24 godzin od rozmowy. Konfigurator wyżej pokazuje godziny, widełki i datę startu.
Mieliśmy już dashboardy, których nikt nie otwierał. Czemu Twoje miałyby być inne?
Zaczynam od decyzji, nie od danych. Plan zdarzeń mówi, na jakie pytanie odpowiada każde zdarzenie, dashboard ma tylko wykresy potrzebne na cotygodniowej rozmowie, a wykres, który na nic nie odpowiada, nie wchodzi. Tak pracuję w każdym projekcie: dashboardy, z których zarząd bierze liczby, zamiast o nie pytać.
Do kogo należy wdrożenie i kto widzi nasze dane?
Do Ciebie. Plan zdarzeń i proxy są w Twoim repozytorium, a dashboardy w Twojej organizacji w PostHogu, na Twoich kontach, więc nic nie odchodzi razem ze mną. Pracuję sam, bez podwykonawców, a dane klientów nie trafiają do modelu AI bez Twojej pisemnej zgody. Zakres OC zależy od zlecenia: przy projektach wysokiego ryzyka dodatkowe OC na daną umowę załatwiam przed startem, a jego koszt uwzględnia stawka. Szczegóły w centrum zaufania.
Przeniesiesz nas z Google Analytics albo Mixpanela?
Tak. Mapowanie starych zdarzeń, oba narzędzia równolegle przez kilka tygodni, wyłączenie starego, gdy liczby się zgadzają. Nagrania sesji i feature flagi dostajesz przy okazji. Jeśli dane mają czytać też agenci, zobacz stronę o AI i agentach.
Feature flagi i eksperymenty też?
Flagi do wdrożeń i wyłączników awaryjnych, eksperymenty, gdy jest dość ruchu, żeby rozstrzygnąć. Powiem, kiedy go nie ma.
Od kiedy możesz zacząć?
Pracę zaczynam 3 listopada 2026. Umów rozmowę i przynieś trzy najtrudniejsze pytania o produkt.
Czemu PostHog skleił wszystkich użytkowników w jedną osobę?
Zwykle identify() dostało ogólną wartość albo stałą, albo zabrakło reset() przy wylogowaniu (dokumentacja identify). Naprawa jest w kodzie, który woła identify, a nie w ustawieniach PostHoga.
Jak obniżyć rachunek za PostHoga?
Trzymaj odwiedzających anonimowo do logowania, bo zdarzenia zidentyfikowane mogą kosztować do 4 razy więcej, a do celowania flag używaj setPersonPropertiesForFlags (dokumentacja PostHoga). Ustaw limity rozliczeń ze świadomością, że nadmiar przepada (limity rozliczeń).
Czy boty pompują nam ruch i rejestracje?
Imperva Bad Bot Report 2026, opublikowany 5 maja 2026, policzył, że boty generują już ponad 53% całego ruchu w sieci, a ataki botów napędzanych AI wzrosły 12,5 raza. Każda taka wizyta może trafić do Waszego lejka jako odwiedzający albo rejestracja. Odfiltrowuję znane boty, crawlery i Wasz ruch testowy z wykresów, które czyta zarząd, żeby konwersja liczyła ludzi. Filtr ustawiam raz dla całego projektu, więc każdy nowy wykres startuje czysty. W styczniu 2026 boty uderzyły w formularz rejestracji klienta; znalazłem wzorzec w logach i tego samego dnia uruchomiłem na produkcji ochronę przed botami.

Bonus · #suchar

Suchar na deser

Gratis, jak pierwsza rozmowa. To samo poczucie humoru dostajesz w pakiecie z projektem.

Gdzie mieszkają wszystkie jeże z PostHoga?Puenta

W HogWarcie. Ba‑dum‑tss.

Co powiedział jeż do kaktusa?Puenta

„Tato, to ty?” Ba‑dum‑tss.

Dlaczego zdarzenie nie dotarło do PostHoga?Puenta

Bramkarz-bloker nie wpuścił. Trzeba było wejść przez proxy. Ba‑dum‑tss.

W 30 minut sprawdzisz, czy do siebie pasujemy

Ty przynosisz problem, ja pytania. Chcesz najpierw liczbę? Konfigurator pokaże godziny, widełki ceny i termin startu.

albo napisz na ciunkos@gmail.com

Po umówieniu dostajesz zaproszenie do kalendarza. Nic więcej do wypełniania.

Moja obietnica

  • Odpowiedź w 24 godziny. Odpowiadam w ciągu 24 godzin w dni robocze. Osobiście, nie bot. Wiadomości z weekendu: do poniedziałku, do 12:00.
  • Spóźnienie znaczy gratis. Jeśli się spóźnię, pierwsza godzina pracy jest za darmo. Nie musisz o to prosić.
  • Zakres na piśmie w 24 godziny. Bezpłatna rozmowa 30 minut bez prezentacji firmy, potem zakres i cena na piśmie w ciągu 24 godzin. Ty decydujesz.
  • Osoba, która wykona pracę. Rozmawiasz z osobą, która wykona pracę. Bez warstwy sprzedaży, bez przekazywania dalej.
  • Odzywam się tylko z czymś nowym. Odzywam się tylko wtedy, gdy mam dla Ciebie coś nowego. Nigdy „czy jest już decyzja?”.
  • Uczciwe „to nie dla mnie”. Jeśli nie jestem właściwą osobą, mówię to na rozmowie i wskazuję kogoś, kto jest.

Rozmowy w tym tygodniu · start pracy 3 listopada 2026 · Kontrakt B2B · Wrocław, zdalnie

Kod, domena i konta są Twoje od pierwszego dnia. Nic nie trzymam jako zakładnika.