Global Privacy Control: sygnał, którego tagi Google nie widzą
Otwórz stronę w Firefoksie z włączonym Global Privacy Control i spojrzyj na pierwsze żądanie w DevTools. W nagłówkach jest linia Sec-GPC: 1. To odwiedzający informuje w czytelny dla maszyny sposób, że nie chce sprzedaży ani udostępniania jego danych do reklamy w różnych kontekstach.
Teraz popatrz, co robi kontener. Baner zadaje pytanie, na które przeglądarka już odpowiedziała. Tag Google ładuje się ze stanem ad_storage ustawionym na granted, bo nic na stronie nie odczytało sygnału. Tag remarketingowy uruchamia się bez przeszkód, a GA4 zapisuje zwykłą wizytę. Żaden błąd nie został zgłoszony, więc nikt niczego nie szuka.
Czym jest Global Privacy Control
To specyfikacja W3C, obecnie na etapie Working Draft. Sygnał podróżuje dwoma kanałami jednocześnie: w nagłówku HTTP Sec-GPC o wartości dokładnie 1 oraz we właściwości DOM navigator.globalPrivacyControl, która przy włączonej preferencji ma wartość true.
Trzy szczegóły ze specyfikacji mają znaczenie praktyczne. Wartość nagłówka musi być dokładnie znakiem 1, a serwer nie może zgadywać innych wartości. Pośrednicy, czyli proxy i CDN, nie mogą usuwać nagłówka Sec-GPC: 1. Preferencja jest zapamiętywana na czas nawigacji, więc jeśli ktoś włączy GPC przy otwartej stronie, sygnał zmieni się dopiero po przejściu na kolejną stronę.
Domena może dodatkowo opublikować zasób /.well-known/gpc.json z informacją, że obsługuje sygnał. To deklaracja, nie mechanizm działania.
Czego GPC nie mówi
GPC jest żądaniem niesprzedawania i nieudostępniania danych. Nie jest żądaniem usunięcia danych, nie obejmuje targetowania w obrębie jednego kontekstu i nie wyłącza całego pomiaru. Czytanie go jako uniwersalnego wyłącznika wszystkiego prowadzi do wyłączenia analityki, którą można było legalnie zachować.
Co na to Google
Tryb uzyskiwania zgody zna cztery typy zgody: ad_storage, ad_user_data, ad_personalization i analytics_storage, a obok nich trzy typy przechowywania: functionality_storage, personalization_storage i security_storage. GPC nie występuje na tej liście. Dokumentacja Google mówi wprost, że to wdrożeniowiec odpowiada za ustawienie właściwych wartości dla wszystkich używanych typów.
Google czyta natomiast ciąg Global Privacy Platform w narzędziach przeznaczonych na rynek amerykański. Wniosek jest prosty: GPC jest sygnałem, który ktoś musi przetłumaczyć na stan zgody. Jeśli nikt tego nie napisał, nikt tego nie robi.
Mapowanie, które wytrzymuje kontrolę
Zakres GPC dotyczy sprzedaży i udostępniania do reklamy w różnych kontekstach, więc trzy typy reklamowe powinny trafić na denied: ad_storage, ad_user_data i ad_personalization.
analytics_storage to decyzja, nie oczywistość. Jeśli analityka zostaje w Twojej usłudze i nie zasila odbiorców remarketingowych, automatyczna odmowa odbiera pomiar, do którego miałeś prawo. Jeśli odbiorcy są eksportowani do Google Ads albo sygnały Google są aktywne, granica się zaciera i bezpieczniej jest odmówić.
Niezgodne mapowanie to najczęstszy błąd. Odmowa ad_storage przy zgodzie na ad_personalization nadal pozwala na reklamę personalizowaną, bo Google wymaga zgody na oba parametry reklamowe jednocześnie.
Kolejność wdrożenia
Kolejność ma większe znaczenie niż sam kod. Domyślne wartości zgody muszą być ustawione przed jakimkolwiek poleceniem wysyłającym dane, a Google opisuje skutek wprost: jeśli kod zgody zostanie wywołany w złej kolejności, wartości domyślne nie zadziałają. Naprawy wstecz nie ma, bo tag, który się uruchomił, już wysłał to, co wysłał.
Jeśli baner ładuje się asynchronicznie, ustaw limit czasu parametrem wait_for_update w milisekundach, żeby tagi poczekały na decyzję, zamiast wystrzelić na wartości domyślnej.
W instalacji gtag.js wystarczy mały blok inline przed tagiem Google:
if (navigator.globalPrivacyControl === true) {
gtag('consent', 'update', {
ad_storage: 'denied',
ad_user_data: 'denied',
ad_personalization: 'denied'
});
}
W Menedżerze tagów tę samą logikę umieść w tagu Inicjacja zgody, który uruchamia się przed wszystkimi innymi typami wyzwalaczy. Nie wkładaj jej do zwykłego tagu odsłony i nie licz na kolejność wyzwalaczy w ramach tego samego zdarzenia, bo jej nie kontrolujesz.
Plik w .well-known i polityka prywatności
Opublikuj /.well-known/gpc.json i dopisz do polityki prywatności akapit o tym, co robisz po wykryciu sygnału. Trzy miejsca muszą mówić to samo: kod, treść banera i polityka. Najczęstszy obraz to polityka obiecująca obsługę GPC, baner oferujący wybór i kontener, który nie czyta żadnego z nich.
Kontekst amerykański warto znać, bo bywa argumentem w rozmowie z klientem. W Kalifornii sygnał opt-out musi być honorowany jako ważne żądanie rezygnacji. Kolorado wymaga honorowania uniwersalnych mechanizmów opt-out od 1 lipca 2024 i prowadzi listę uznanych mechanizmów, na której jest GPC. Ustawa AB 566, California Opt Me Out Act, podpisana 8 października 2025 i obowiązująca od 1 stycznia 2027, przenosi część ciężaru na producentów przeglądarek: ustawienie będzie wbudowane, więc sygnałów w ruchu będzie więcej.
Test w dziesięć minut
Wyślij żądanie z nagłówkiem i sprawdź, czy dociera do serwera:
curl -sI -H 'Sec-GPC: 1' https://twoja-domena.pl/
curl nie jest przeglądarką, ale pokaże, czy proxy obcina nagłówek przed originem. W konsoli porównaj navigator.globalPrivacyControl przy włączonym i wyłączonym ustawieniu: false oznacza przeglądarkę, która zna GPC, ale ma wyłączoną preferencję, a brak wartości oznacza brak wsparcia.
W DebugView sprawdź kartę zgody dla trafienia. Zablokowany analytics_storage nadal wysyła ping bez plików cookie, więc ruch w podglądzie nie jest dowodem awarii. Osobno sprawdź, czy tag Google Ads nie ma użytecznego identyfikatora kliknięcia dla tej wizyty i czy lista remarketingowa nie rośnie.
Pięć pułapek z wdrożeń
- Odmowa ustawiona po pierwszym hicie. Pierwsza odsłona to często ta, która niesie identyfikator kliknięcia z reklamy.
- CMP pokazuje sygnał w swoim panelu i nie zmienia stanu zgody. Wykrycie nie jest działaniem.
- Brak sygnału potraktowany jako zgoda. To nie jest zgoda, a po wcześniejszym sygnale jest nią tym bardziej.
- Przełączenie w trakcie sesji. Zgodnie ze specyfikacją zadziała dopiero przy następnej nawigacji.
- Nagłówek obcięty przez CDN albo reverse proxy. Efekt wygląda identycznie jak użytkownik, który nigdy nie włączył GPC.
Co to znaczy w Polsce
GPC nie ma w Polsce bezpośredniej mocy prawnej. Sygnał z przeglądarki nie jest zgodą i nie zastępuje banera: art. 399 Prawa komunikacji elektronicznej nadal wymaga zgody na przechowywanie informacji na urządzeniu, a art. 400 określa standard tej zgody.
Nie jest to jednak pusty gest. Jeśli analitykę opierasz na uzasadnionym interesie, RODO daje użytkownikowi prawo do sprzeciwu wobec takiego przetwarzania, a sygnał jest czytelnym wyrazem tego sprzeciwu. Zignorowany sprzeciw jest trudny do obrony przed organem i niemożliwy do obrony przed użytkownikiem, który go ustawił.
Wniosek jest krótki: honorowanie GPC kosztuje sprawdzenie jednego nagłówka i kilka linii JavaScriptu. Zacznij od testu, nie od polityki. Wyślij jedno żądanie z nagłówkiem, popatrz, co się uruchomiło, i będziesz wiedział w minutę, czy Twoje tagi w ogóle usłyszały odwiedzającego.
North Digital sprawdza sygnały zgody od początku do końca: baner, tryb uzyskiwania zgody, wyzwalacze GTM i to, co faktycznie dociera do Google. Dostajesz zapis, co się uruchamia, a co nie. Zamów konsultację.