Jak monitorować odkładanie się poszczególnych typów cookies
Cookiebot świetnie radzi sobie z zarządzaniem zgodami, ale gdy pojawia się pytanie:
„Ile osób faktycznie zgodziło się na cookies analityczne, marketingowe albo funkcjonalne?”
odpowiedź… nie zawsze jest dostępna wprost w panelu.
I to nie jest bug. To ograniczenie.
Problem: Cookiebot ≠ raport zgód per typ cookies
W standardowej wersji Cookiebota:
- widzisz opt-in vs opt-out
- nie widzisz rozkładu zgód per kategoria:
- marketingowe
- analityczne
- funkcjonalne
A to właśnie te informacje są kluczowe, gdy:
- analizujesz spadki danych w GA4
- liczysz realny wpływ Consent Mode
- chcesz wiedzieć, na co użytkownicy faktycznie się zgadzają
Rozwiązanie: traktuj zgodę jak event, nie jak ustawienie
Skoro Cookiebot:
- egzekwuje zgody
- ale nie raportuje ich szczegółowo
…to raport robimy po swojej stronie.
Najprostszy i najczystszy sposób:
👉 Google Tag Manager + GA4 Event
Co faktycznie mierzymy?
Nie „cookies” sensu stricte, tylko:
stan zgód użytkownika w momencie interakcji z banerem
Czyli:
- analytics → granted / denied
- marketing → granted / denied
- functional → granted / denied
To dokładnie te same wartości, które:
- Cookiebot przekazuje do Google Consent Mode
- są widoczne w GTM (Consent tab)
Jak to działa technicznie (w skrócie)
1️⃣ Cookiebot wysyła event cookie_consent_update
Ten event pojawia się:
- przy pierwszym wyborze użytkownika
- przy każdej zmianie zgód
I to jest idealny moment, żeby zapisać stan zgód.
2️⃣ GTM odczytuje stan zgód z Cookiebot
Przykład zmiennej Custom JavaScript (analytics):
function() {
if (typeof Cookiebot === 'undefined') return 'unknown';
return Cookiebot.consent.statistics ? 'granted' : 'denied';
}
Analogicznie:
- marketing →
Cookiebot.consent.marketing - functional →
Cookiebot.consent.preferences
3️⃣ Wysyłamy event do GA4

Zmienne JS – szczegóły
JS – Consent Analytics
function() {
if (typeof Cookiebot === 'undefined’) return 'unknown’;
return Cookiebot.consent.statistics ? 'granted’ : 'denied’;
}

JS – Consent Functional
function() {
if (typeof Cookiebot === 'undefined’) return 'unknown’;
return Cookiebot.consent.preferences ? 'granted’ : 'denied’;
}

JS – Consent Marketing
function() {
if (typeof Cookiebot === 'undefined’) return 'unknown’;
return Cookiebot.consent.marketing ? 'granted’ : 'denied’;
}

Rejestracja parametrów w GA4
Rejestrujemy parametry przekazywane w tagu jako Custom dimensions w Google Analytics 4 aby mieć później dostęp do tych danych:

Ważne ograniczenie, o którym trzeba wiedzieć
Jest jeszcze jeden kluczowy aspekt tego podejścia, o którym trzeba powiedzieć wprost.
Tag wysyłający event cookie_consent_status do GA4 uruchamia się tylko wtedy, gdy użytkownik wyrazi zgodę na cookies analityczne.
Dlaczego?
Bo:
- GA4 to narzędzie analityczne
- a bez zgody na analytics nie możemy wysyłać żadnych danych do Google Analytics
W praktyce oznacza to, że:
📊 każdy event, który zobaczysz w GA4, będzie pochodził wyłącznie od użytkowników, którzy zgodzili się na cookies analityczne
Dlatego w GA4:
consent_analyticsbędzie zawsze =granted(100%)- a dane o
consent_marketingiconsent_functionalbędą widoczne tylko w tej grupie użytkowników
Czy to błąd w implementacji?
Nie.
To naturalna i poprawna konsekwencja prawa oraz Consent Mode.
Nie da się:
- przesłać informacji o rozkładzie zgód do GA4
- jeśli użytkownik nie wyraził zgody na analytics
Każde inne rozwiązanie:
- byłoby niezgodne z RODO
- albo wymagałoby osobnego systemu (np. backend / logi serwerowe poza GA)
Jak więc interpretować te dane poprawnie?
Ten raport nie odpowiada na pytanie:
„Jakie zgody wybierają wszyscy użytkownicy?”
On odpowiada na inne, bardzo praktyczne pytanie:
👉 „Jakie zgody wybierają użytkownicy, którzy pozwalają nam mierzyć ruch?”
To nadal jest bardzo cenna informacja, bo:
- pokazuje, jaka część mierzalnego ruchu ma pełne zgody marketingowe
- pozwala lepiej interpretować dane z GA4 i Google Ads
- pomaga ocenić realny wpływ Consent Mode na wyniki
Jeśli chcesz 100% obraz zgód – co dalej?
Jeśli potrzebujesz pełnego rozkładu zgód (także bez analytics), wtedy:
- GA4 nie jest właściwym miejscem
- potrzebujesz np.:
- logowania zdarzeń po stronie serwera
- danych zagregowanych z CMP
- albo dedykowanego raportu poza ekosystemem Google
Ale do analizy jakości danych, atrybucji i wpływu zgód na performance
→ GA4 + GTM to nadal najlepszy kompromis.