CookieGuard
← All articles
·9 min read·GCM v2 · RODO · Google Ads

Google Consent Mode v2 w 2026 — co naprawdę musisz zrobić

Dwa nowe sygnały (ad_user_data, ad_personalization), tryb Basic vs Advanced i deadline w EOG — wyjaśnione po ludzku, z działającym snippetem.

Od marca 2024 r. Google wymaga, żeby każda strona korzystająca z Google Ads albo Google Analytics 4 w EOG wysyłała sygnały Consent Mode v2. Strony, które tego nie zrobiły, tracą modeled conversions, raportowanie audiencji i — docelowo — możliwość reklamowania się do mieszkańców EOG. Jeśli odłożyłeś migrację, czas wyszedł.

Ten artykuł tłumaczy, czym właściwie jest Consent Mode v2, czym różnią się tryby Basic i Advanced i jaką minimalną implementację trzeba zrobić, żeby się trzymać litery prawa i zaleceń Google.

Co Consent Mode robi pod spodem

Consent Mode to mały protokół między Twoją stroną a tagami Google. Zanim odpali jakikolwiek tag, mówisz Google, na co użytkownik wyraził zgodę, wywołując gtag('consent', 'default', …). Po decyzji w bannerze wywołujesz gtag('consent', 'update', …). Tagi Google czytają te sygnały i się dostosowują — np. GA4 zamiast pełnych hitów wysyła „cookieless pings” gdy zgoda na analytics jest odmówiona.

Wersja v2 wprowadza dwa nowe parametry, których nie było w v1:

  • ad_user_data — czy wolno wysyłać dane na poziomie użytkownika do Google na potrzeby reklam.
  • ad_personalization — czy użytkownik może być dodany do remarketingowych audiencji.

Razem z sygnałami z v1 (ad_storage, analytics_storage, functionality_storage, personalization_storage, security_storage) dają siedem wartości, które musisz zadeklarować.

Tryb Basic kontra Advanced

Oba tryby są legalne. Wybierasz na podstawie tego, jak agresywnie chcesz odzyskiwać konwersje przez modelowanie.

AspektBasicAdvanced
Kiedy ładują się tagiDopiero po zgodzieZawsze — ale do momentu zgody bez cookies
Modeled conversionsNiższe (model używa danych ogólnych)Wyższe (model uczy się z Twojego ruchu denied)
Trudność wdrożeniaNiższaTrochę więcej (Google ładuje się przed zgodą)
Konserwatywni IOD-owieCzęsto woląCzasem oprotestowują

Jak nie masz silnego zdania — zacznij od Basic. Zawsze możesz przejść na Advanced później, a różnica w modeled conversions zaczyna mieć znaczenie dopiero powyżej ~10 tys. eventów miesięcznie.

Minimalny zgodny snippet

To trzeba wykonać przed jakimkolwiek innym tagiem Google:

<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){ dataLayer.push(arguments); }
  gtag('consent', 'default', {
    ad_storage:           'denied',
    ad_user_data:         'denied',
    ad_personalization:   'denied',
    analytics_storage:    'denied',
    functionality_storage:'granted',
    personalization_storage:'denied',
    security_storage:     'granted',
    wait_for_update: 500
  });
</script>

Po zaakceptowaniu marketingu w bannerze:

gtag('consent', 'update', {
  ad_storage:         'granted',
  ad_user_data:       'granted',
  ad_personalization: 'granted',
  analytics_storage:  'granted'
});

Pięć błędów, które widzę najczęściej

  1. Brakuje bloku default. Jeśli gtag('consent', 'default', …) nie zostanie wywołane przed gtm.js, Google w ogóle nie potraktuje Twojej strony jako Consent Mode.
  2. Banner aktualizuje tylko analytics_storage i ad_storage. To wersja v1. v2 wymaga też ad_user_data i ad_personalization, inaczej Twoje audiencje remarketingowe nie zapełnią się.
  3. Pre-zaznaczone „akceptuję wszystko”. Regulatorzy w EOG traktują to jako brak zgody. Domyślnie denied; user musi wyrazić zgodę aktywnym kliknięciem.
  4. Pozostawione tagi Universal Analytics. UA jest wyłączone. Jeśli wciąż widzisz ciasteczka __utma, masz duplikujące lub stare tagi.
  5. Brak szablonu CMP w GTM. Jeśli używasz Google Tag Manager, zainstaluj szablon CMP (np. CookieGuard) tak, żeby wszystkie Twoje tagi czytały stan zgody automatycznie. Ręczne podpinanie 30 tagów jest pewną drogą do błędu.

Jak CookieGuard to ogarnia

CookieGuard wysyła default consent w momencie, gdy loader skryptu zaczyna działać — więc nawet tagi, które ładują się przed naszym UI, widzą stan denied. Gdy użytkownik podejmie decyzję, mapujemy Twoje kategorie na siedem sygnałów Consent Mode przez konfigurowalną tablicę. Domyślne mapowanie:

  • kategoria marketingad_storage, ad_user_data, ad_personalization
  • kategoria analyticsanalytics_storage
  • kategoria preferences personalization_storage
  • necessaryfunctionality_storage, security_storage (zawsze granted)

Każde z tych mapowań jest konfigurowalne, jeśli Twoja taksonomia kategorii jest inna. Snippet do wklejenia ma dwie linie.