Konfigurowanie trybu uzyskiwania zgody w witrynach

Ta strona jest przeznaczona dla deweloperów, którzy mają w swojej witrynie własne rozwiązanie do uzyskiwania zgody użytkowników i chcą zintegrować z nimi tryb uzyskiwania zgody. Wprowadzenie do trybu uzyskiwania zgody znajdziesz w artykule Omówienie trybu uzyskiwania zgody. Jeśli do uzyskiwania zgody użytkowników używasz platformy do zarządzania zgodą użytkowników (CMP), dowiedz się więcej o tym, jak skonfigurować na niej tryb uzyskiwania zgody.

Tryb uzyskiwania zgody możesz wdrożyć w sposób podstawowy lub zaawansowany. Zapoznaj się ze wskazówkami swojej firmy, aby wybrać metodę implementacji i ustawić domyślną metodę. Dowiedz się więcej o podstawowym i zaawansowanym trybie uzyskiwania zgody.

Zanim zaczniesz

Przed wdrożeniem trybu uzyskiwania zgody weź pod uwagę te kwestie:

  • Jeśli używasz Menedżera tagów i chcesz utrzymać własny baner, zalecamy wczytanie go przez kontener Menedżera tagów. W tym celu musisz utworzyć szablon trybu uzyskiwania zgody. Możesz też użyć szablonu trybu uzyskiwania zgody z Galerii szablonów.

  • Jeśli używasz tagu gtag.js, sprawdź, czy masz zainstalowany tag Google na każdej stronie swojej witryny. Kod trybu uzyskiwania zgody jest dodawany do każdej strony witryny.

Aby skonfigurować tryb uzyskiwania zgody:
  1. Zanim użytkownik udzieli zgody: ustaw domyślny stan zgody użytkownika.
  2. Zaktualizuj stan zgody użytkownika na podstawie interakcji użytkownika z Twoimi ustawieniami uzyskiwania zgody.

Ustaw wartość domyślną dla każdego używanego typu zgody. Domyślnie nie są ustawione żadne wartości trybu uzyskiwania zgody.

Sprawdzoną metodą jest określenie zakresu domyślnych ustawień dotyczących zgody na przetwarzanie danych w regionach, w których wyświetlasz banery z prośbą o zgodę na przetwarzanie danych użytkownikom. Pomaga to zapewnić pomiary w regionach, w których wymagane są banery z prośbą o zgodę na przetwarzanie danych, a tagi Google odpowiednio dostosowują swoje działanie. Zapobiega to utracie pomiarów, jeśli nie mają zastosowania banery z prośbą o zgodę na przetwarzanie danych osobowych lub banery z prośbą o zgodę na przetwarzanie danych. Zobacz Zachowanie w różnych regionach.

gtag.js

Aby dostosować domyślne możliwości pomiarowe, wywołaj polecenie gtag('consent', 'default', ...) na każdej stronie witryny przed każdym poleceniem wysyłającym dane pomiarowe (np. config lub event).

Aby na przykład ustawić domyślne ustawienie odmowy zgody na wszystkie parametry:

gtag('consent', 'default', {
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied',
  'analytics_storage': 'denied'
});

Opcjonalnie: integracja z asynchronicznymi platformami do zarządzania zgodą użytkowników

Jeśli baner wczytuje się asynchronicznie, nie zawsze będzie wyświetlany przed tagami Google. Aby radzić sobie z takimi sytuacjami, podaj wait_for_update wraz z milisekundą, aby kontrolować czas oczekiwania na wysłanie danych.

Aby na przykład domyślnie odmówić zgody ad_storage na określonej stronie, ale aby zezwolić platformie do zarządzania zgodą użytkowników na aktualizowanie stanu zgody, użyj parametru wait_for_update. W tym kodzie ad_storage przyjmuje domyślnie wartość denied, a narzędzie do uzyskiwania zgody użytkowników otrzymuje 500 milisekund na wywołanie gtag('consent', 'update', ...) przed uruchomieniem tagów:

  gtag('consent', 'default', {
    'ad_storage': 'denied',
    'wait_for_update': 500
  });

Menedżer tagów

Jeśli używasz Menedżera tagów Google, utwórz własny szablon za pomocą interfejsów API trybu uzyskiwania zgody Menedżera tagów. Jako punktu wyjścia możesz podać ten przykład.

Do zarządzania stanami zgody użytkownika setDefaultConsentState i updateConsentState używaj interfejsów API przeznaczonych tylko dla Menedżera tagów. Za pomocą interfejsu gtagSet API można opcjonalnie skonfigurować ustawienia przekazywania ads_data_redaction i adresu URL.

gtag.js

Aby wysłać stan zgody użytkownika, użyj polecenia update. Tryb uzyskiwania zgody nie zapisuje wyborów dotyczących zgody, dlatego aktualizuj stan zgody natychmiast po interakcji użytkownika z Twoim rozwiązaniem do zarządzania zgodą użytkowników. Gdy użytkownik wyrazi zgodę, zachowaj swój wybór i na kolejnych stronach wywołuj odpowiednio polecenie aktualizacji.

To Ty odpowiadasz za ustawienie odpowiednich wartości w przypadku wszystkich rodzajów zgody. Szczegółowe informacje o obsługiwanych typach znajdziesz w dokumentacji API.

Ten przykładowy kod pokazuje, jak zmienić stan zgody na granted, gdy użytkownik wyrazi zgodę na wszystkie opcje:

<script>
function allConsentGranted() {
  gtag('consent', 'update', {
    'ad_user_data': 'granted',
    'ad_personalization': 'granted',
    'ad_storage': 'granted',
    'analytics_storage': 'granted'
  });
}
</script>
<!-- Invoke your consent function when a user interacts with your banner -->
<body>
  ...
  <button onclick="allConsentGranted()">Yes</button>
  ...
</body>

Menedżer tagów

Jeśli używasz szablonu trybu uzyskiwania zgody, zgoda użytkownika powinna być automatycznie aktualizowana, gdy użytkownik wejdzie w interakcję z banerem.

Jeśli samodzielnie utworzysz szablon trybu uzyskiwania zgody, do zarządzania stanami zgody (setDefaultConsentState i updateConsentState) używaj interfejsów API przeznaczonych dla Menedżera tagów. Za pomocą interfejsu gtagSet API można opcjonalnie skonfigurować ustawienia przekazywania ads_data_redaction i adresu URL.

Przykład implementacji

Ten przykład ustawia domyślnie wiele parametrów trybu uzyskiwania zgody na denied. Gdy użytkownik wskaże swoje wybory dotyczące zgody na przetwarzanie danych, odpowiednie parametry zostaną zaktualizowane do wartości granted.

gtag.js

Kolejność tego kodu jest w tym przypadku kluczowa. Jeśli kod zgody jest wywoływany w niewłaściwej kolejności, domyślne ustawienia zgody nie będą działać. W zależności od wymagań biznesowych konkretne dane mogą się różnić, ale ogólnie kod powinien być uruchamiany w tej kolejności:

  1. Wczytaj tag Google. To jest Twój domyślny fragment kodu. Domyślny fragment kodu należy zaktualizować (patrz poniżej), aby zawierał wywołanie gtag('consent', 'default', ...).

  2. Wczytaj rozwiązanie do uzyskiwania zgody. Jeśli rozwiązanie do uzyskiwania zgody wczytuje się asynchronicznie, zapoznaj się z artykułem na temat integracji z asynchronicznymi platformami do zarządzania zgodą użytkowników, aby dowiedzieć się, co zrobić, aby zmiany odbywały się we właściwej kolejności.

  3. Jeśli Twoje rozwiązanie do uzyskiwania zgody nie jest obsługiwane przez Twoje rozwiązanie do uzyskiwania zgody, wywołaj funkcję gtag('consent', 'update', ...) po tym, jak użytkownik wyrazi zgodę.

<script>
// Define dataLayer and the gtag function.
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}

// Set default consent to 'denied' as a placeholder
// Determine actual values based on your own requirements
gtag('consent', 'default', {
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied',
  'analytics_storage': 'denied'
});
</script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID">
</script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}

  gtag('js', new Date());
  gtag('config', 'TAG_ID');
</script>

<!-- Create one update function for each consent parameter -->
<script>
  function consentGrantedAdStorage() {
    gtag('consent', 'update', {
      'ad_storage': 'granted'
    });
  }
</script>
<!-- Invoke your consent functions when a user interacts with your banner -->
<body>
  ...
  <button onclick="consentGrantedAdStorage">Yes</button>
  ...
</body>

Menedżer tagów

W przypadku witryn korzystających z Menedżera tagów zalecamy korzystanie z platformy CMP do obsługi aktualizacji wyborów użytkownika dotyczących zgody na przetwarzanie danych. Platformy do zarządzania zgodą użytkowników w Galerii szablonów udostępniają szablony do tworzenia tagów do zarządzania trybem uzyskiwania zgody.

Jeśli użycie szablonu nie jest możliwe, możesz zamiast tego zaktualizować kod na stronie w ten sposób. Kolejność tego kodu jest w tym przypadku kluczowa. Jeśli Twój kod zgody jest wywoływany w niewłaściwy sposób, domyślne ustawienia dotyczące zgody nie będą działać.

<script>
  // Define dataLayer and the gtag function.
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}

  // Set default consent to 'denied' as a placeholder
  // Determine actual values based on your own requirements
  gtag('consent', 'default', {
    'ad_storage': 'denied',
    'ad_user_data': 'denied',
    'ad_personalization': 'denied',
    'analytics_storage': 'denied'
  });
</script>

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXXX');</script>
<!-- End Google Tag Manager -->

<!-- Create one update function for each consent parameter -->
<script>
  function consentGrantedAdStorage() {
    gtag('consent', 'update', {
      'ad_storage': 'granted'
    });
  }
</script>
<!-- Invoke your consent functions when a user interacts with your banner -->
<body>
  ...
  <button onclick="consentGrantedAdStorage()">Yes</button>
  ...
</body>

W ramach stałego budowania ekosystemu reklamy cyfrowej zapewniającego ochronę prywatności zaostrzamy egzekwowanie polityki w zakresie zgody użytkownika z UE.

Dowiedz się więcej o aktualizacjach trybu uzyskiwania zgody w przypadku ruchu w Europejskim Obszarze Gospodarczym (EOG).

Oprócz parametrów ad_storage i analytics_storage użytkownicy korzystający z trybu uzyskiwania zgody muszą wysłać 2 nowe parametry:

Nazwa pola Dozwolone wartości Opis
ad_user_data 'granted' | 'denied' Określa stan zgody na wysyłanie do Google danych użytkownika związanych z reklamami.
ad_personalization 'granted' | 'denied' Określa stan zgody na reklamy spersonalizowane.

Zaawansowane funkcje dotyczące uzyskiwania zgody to między innymi:

  • Określ, którym usługom Google chcesz udostępniać dane za pomocą interfejsu tagu Google.
  • Skonfiguruj działanie dla regionu geograficznego.
  • Przekazuj informacje o kliknięciu reklamy, identyfikatorze klienta i sesji w adresach URL, jeśli użytkownicy nie wyrazili zgody na pliki cookie.
  • Gdy użytkownicy nie wyrazili zgody na stosowanie plików cookie dotyczących reklam, całkowicie usuń (usuń) informacje o reklamie.

Zachowanie zależne od regionu

Aby zmienić domyślne działanie tagów w przypadku użytkowników z określonych regionów, określ region w poleceniu dotyczącym zgody na wykorzystanie danych. Podając wartość regionu, możesz dostosować ustawienia domyślne na podstawie lokalizacji geograficznej użytkowników. Więcej informacji o identyfikowaniu regionów znajdziesz w sekcji Identyfikatory geograficzne.

gtag.js

W poniższym przykładzie ustawisz wartość analytics_storage na denied w przypadku użytkowników z Hiszpanii i Alaski, a dla wszystkich użytkowników ustawisz ad_storage na denied.

  gtag('consent', 'default', {
    'analytics_storage': 'denied',
    'region': ['ES', 'US-AK']
  });

  gtag('consent', 'default', {
    'ad_storage': 'denied'
  });

Menedżer tagów

Jeśli do tworzenia tagu używasz szablonu, może on zawierać elementy sterujące pozwalające skonfigurować zachowanie w zależności od regionu. Jeśli tworzysz tag szablonu samodzielnie, przeczytaj artykuł Tworzenie szablonu trybu uzyskiwania zgody, aby dowiedzieć się więcej o ustawianiu działania w poszczególnych regionach.

Najdokładniejszy parametr ma pierwszeństwo

Jeśli na tej samej stronie pojawią się 2 domyślne polecenia dotyczące zgody z wartościami odpowiadającymi regionowi i podregionowi, zostanie zastosowane to z konkretnym regionem. Jeśli na przykład ustawisz ad_storage jako granted dla regionu USA i ad_storage na denied dla regionu US-CA, użytkownik z Kalifornii będzie mieć zastosowanie bardziej szczegółowe ustawienia dotyczące Kanady (USA). W tym przykładzie oznacza to, że użytkownik z Kalifornii miałby w polu ad_storage wartość denied.

Region ad_storage Sposób działania
US 'granted' Dotyczy użytkowników w Stanach Zjednoczonych, którzy nie znajdują się w Kanadzie
USA, Kanada 'denied' Dotyczy użytkowników ze Stanów Zjednoczonych i Kanady
Brak informacji 'granted' Używa wartości domyślnej 'granted'. W tym przykładzie dotyczy to użytkowników spoza USA i Kanady.

Przekazywanie w adresach URL informacji o kliknięciu reklamy, identyfikatorze klienta i sesji

Gdy użytkownik trafia do Twojej witryny po kliknięciu reklamy, informacje o tej reklamie mogą zostać dołączone do adresów URL stron docelowych jako parametr zapytania. Aby zwiększyć dokładność kluczowych zdarzeń, informacje te są zwykle zapisywane w Twoich własnych plikach cookie w Twojej domenie.

Jeśli jednak ad_storage ma wartość denied, te informacje nie będą przechowywane lokalnie. Aby poprawić jakość pomiaru kliknięć reklamy, gdy ad_storage ma wartość denied, możesz opcjonalnie włączyć przekazywanie na różnych stronach informacji o kliknięciach reklam za pomocą parametrów adresów URL.

I podobnie, jeśli analytics_storage ma wartość denied, przekazywanie adresów URL może służyć do przesyłania między stronami analiz opartych na zdarzeniach i sesjach (w tym kluczowych zdarzeń) bez plików cookie.

Aby można było używać przekazywania adresu URL, muszą być spełnione te warunki:

  • Twój tag Google uwzględnia zgodę użytkowników i znajduje się na stronie.
  • Reklamodawca włączył funkcję przekazywania adresów URL.
  • Tryb uzyskiwania zgody jest włączony na stronie.
  • Link wychodzący odnosi się do tej samej domeny co domena bieżącej strony.
  • Adres URL zawiera identyfikator kliknięcia Google lub DCLID (tylko w przypadku tagów Google Ads i Floodlight).

gtag.js

Aby włączyć tę funkcję, ustaw parametr url_passthrough na true. Dodaj to polecenie do domyślnego fragmentu kodu przed wszelkimi poleceniami config:

gtag('set', 'url_passthrough', true);

Menedżer tagów

Jeśli do tworzenia tagu używasz szablonu, może on zawierać elementy sterujące, które pozwalają skonfigurować przekazywanie adresu URL. Jeśli tworzysz samodzielnie tag szablonu, przeczytaj sekcję Tworzenie szablonu trybu uzyskiwania zgody, aby uzyskać więcej informacji o konfigurowaniu przekazywania adresu URL za pomocą interfejsu gtagSet Custom Template API.

Możesz też użyć poniższych opcji, aby ustawić go w tagu łączącym konwersje lub tagach Analytics

W przypadku tagów Google Ads i Floodlight:

Aby włączyć tę funkcję, utwórz (lub użyj istniejącego) tagu tagu łączącego konwersje i zaznacz opcję Włącz linkowanie we wszystkich adresach URL stron. Instrukcje tworzenia tagu łączącego konwersje znajdziesz w sekcji podstawowej konfiguracji.

W przypadku tagów Google Analytics:

  1. W Menedżerze tagów kliknij Pola do ustawienia:
  2. Gdy sekcja Pola do ustawienia jest rozwinięta, kliknij Dodaj wiersz.
  3. W polu Nazwa pola wpisz prawidłową wartość:
    • W polu Google Analytics: konfiguracja GA4 wpisz url_passthrough.
    • W przypadku tagów Google Analytics: Universal Analytics korzystających ze zmiennych ustawień Google Analytics wpisz urlPassthrough.
  4. W polu Wartość wpisz „true” (prawda).
  5. Zapisz tag i opublikuj tag.

Możesz też ustawić parametr url_passthrough na true na każdej stronie witryny przed fragmentem kodu instalacji Menedżera tagów Google.

window.dataLayer = window.dataLayer || [];
function gtag(){window.dataLayer.push(arguments);}
gtag('set', 'url_passthrough', true);

Gdy korzystasz z przekazywania adresów URL, do linków może zostać dodanych kilka parametrów zapytania, gdy użytkownicy będą przeglądać strony w Twojej witrynie:

  • gclid
  • dclid
  • gclsrc
  • _gl
  • wbraid

Aby uzyskać najlepsze wyniki, upewnij się, że:

  1. Przekierowania w Twojej witrynie przekazują wszystkie powyższe parametry zapytania.
  2. Narzędzia analityczne ignorują te parametry w adresach URL stron.
  3. Parametry te nie zakłócają działania witryny.

Usuwanie danych reklam

Gdy ad_storage ma wartość denied, nowe pliki cookie nie będą tworzone do celów reklamowych. Dodatkowo pliki cookie innych firm ustawione wcześniej na stronach google.com i doubleclick.net nie będą używane z wyjątkiem spamu i oszustw. Dane wysyłane do Google nadal zawierają pełny adres URL strony, w tym wszelkie informacje o kliknięciu reklamy w parametrach adresu URL.

gtag.js

Aby dokładniej pomijać dane reklam, gdy ad_storage ma wartość denied, ustaw ads_data_redaction na true.

gtag('set', 'ads_data_redaction', true);

Jeśli ads_data_redaction ma wartość true, a ad_storage ma wartość denied, identyfikatory kliknięć reklam wysyłane w żądaniach sieci przez Google Ads i tagi Floodlight zostaną usunięte. Żądania sieciowe będą też wysyłane przez domenę niezawierającą plików cookie.

ad_storage

Menedżer tagów

Jeśli do tworzenia tagu używasz szablonu, może on zawierać elementy sterujące, które pozwalają dokładniej pomijać dane reklam. Jeśli tworzysz samodzielnie tag szablonu, przeczytaj artykuł Tworzenie szablonu trybu uzyskiwania zgody, aby dowiedzieć się więcej o usuwaniu danych o reklamach.

Dalsze kroki

Starsze ustawienia tagów

Jeśli korzystasz ze starszych tagów, np. ga.js, analytics.js lub conversion.js, zaktualizuj tag do tagu gtag.js lub Menedżera tagów Google.

Więcej informacji o ustawieniach prywatności w innych starszych tagach znajdziesz w tej dokumentacji: