Platformy zarządzania zgodami często oferują dwie opcje konfiguracji: automatyczną i manualną. Czym różnią się one od siebie i którą z nich należy wybrać?
Konfiguracja automatyczna
W konfiguracji automatycznej bot platformy CMP skanuje stronę i identyfikuje skrypty, które odpowiadają za zapisywanie poszczególnych plików cookie.
Na podstawie tych informacji umieszczony w kodzie strony skrypt CMP wstrzymuje uruchomienie skryptów powiązanych z ciasteczkami, które nie zostały oznaczone jako niezbędne – do czasu wyrażenia odpowiedniej zgody.
Aby to zapewnić, skrypt CMP uruchamiany jest synchronicznie jako pierwszy na każdej stronie i modyfikuje działanie skryptów, które miałyby się po nim uruchomić.
Konfiguracja ręczna
W konfiguracji ręcznej każdy ze skryptów, którego uruchomienie chcemy uzależnić od zgody, trzeba na każdej stronie ręcznie oznaczyć odpowiednim warunkiem. Warunek ten, w zależności od konkretnej platformy może się różnić i np. może mieć postać data-cookieconsent=”statistics, marketing”. Spowoduje on, że dany skrypt będzie blokowany do czasu uzyskania odpowiedniej zgody.
To może brzmieć jak żmudna praca do wykonania, ale jeśli korzystasz z Google Tag Managera (GTM), a Twoje CMP udostępnia szablon integracji z GTM, to taka ręczna konfiguracja polegać będzie po prostu na dodaniu w ustawieniach każdego z tagów w GTM odpowiedniego „dodatkowego warunku zgody”.
W przypadku tagów Google korzystających z advanced consent mode, należy wybrać opcję „brak wymogu dodatkowej zgody” lub pozostawić „nie ustawiono”. Działanie tych dwóch opcji niczym się nie różni i jest to wyłącznie kwestia zaznaczenia, czy dany tag został zrewidowany pod kątem zgody (może to pomóc utrzymaniu porządku w GTM).
Trzeba jednak pamiętać, że GTM nie zrobi wszystkiego za nas. Jeśli na stronie znajdują się osadzone treści, np. filmy YouTube, trzeba też pamiętać o ręcznym oznaczeniu w kodzie strony tych treści, by były one odpowiednio blokowane do czasu uzyskania zgody, a w ich miejsce pojawiała się informacja o konieczności wyrażenia dodatkowej zgody, by uzyskać dostęp do tych treści, tak jak opisuje to ten artykuł.
Jeśli konfigurujemy zarządzanie zgodami umieszczając w Menedżerze Tagów Google (GTM) tag CMP, będzie to konfiguracja ręczna.
Zalety i wady konfiguracji automatycznej
Bezsporną zaletą konfiguracji automatycznej jest – przynajmniej teoretycznie – prostota konfiguracji. Wystarczy wgrać na stronę odpowiedni skrypt i gotowe.
Ułatwienia wynikające z konfiguracji automatycznej mogą się czasem okazać pozorne.
Przede wszystkim, blokowanie skryptów w konfiguracji automatycznej jest uzależnione od odpowiedniej klasyfikacji każdego cookie. Jeśli zaufamy domyślnym ustawieniom CMP lub sami błędnie oznaczymy któreś z ciasteczek (których czasem może być kilkadziesiąt i więcej), to może się okazać, że pewne skrypty uruchomią się bez wymaganej zgody lub w ten sposób zablokujemy funkcje niezbędne do poprawnego działania strony.
Niezamierzonemu zablokowaniu w trybie automatycznym istotnych skryptów można zapobiec, ręcznie oznaczając w kodzie strony te fragmenty kodu, których działanie jest niezbędne do działania strony tak, by były one ignorowane przez automatyczną blokadę (taki znacznik może mieć postać np. data-cookieconsent=”ignore”).
Pamiętajmy też, że skan cookie nie odbywa się w czasie rzeczywistym, więc może się zdarzyć, że nowo dodane skrypty nie będą odpowiednio blokowane do czasu następnego skanu.
Dokonując zmian strony i instalując nowe skrypty śledzące w przyszłości też trzeba będzie pamiętać, by dokonać odpowiedniej klasyfikacji cookie lub sprawdzić, czy domyślna klasyfikacja jest poprawna.
Automatyczna blokada cookie wymaga synchronicznego uruchomienia skryptu CMP jako pierwszego na każdej stronie, co może mieć niekorzystny wpływ na szybkość wczytywania witryny.
W przypadku osadzonych treści (np. filmy YouTube), które wykorzystują cookie wymagające zgody, blokada automatyczna zablokuje wyświetlanie tych treści, ale nie mamy kontroli nad tym, jak wpłynie to na układ strony. Może się okazać, że w ich miejsce pojawią się puste pola lub po prostu brak będzie elementów, do których odwołuje się treść strony – co może spowodować dezorientację użytkownika.
Automatyczna konfiguracja niesie więc z sobą ryzyko nie tylko nieprawidłowego zarządzania zgodami, ale również spowolnienia ładowania się strony i powstania widocznych dla użytkownika błędów, czy wręcz zablokowania niezbędnych funkcji strony. Z kolei uodpornienie strony na takie błędy może się okazać bardziej pracochłonne, niż ręczna konfiguracja skryptów w GTM.
Zalety i wady konfiguracji ręcznej
Przy konfiguracji manualnej musimy samodzielnie oznaczyć każdy ze skryptów. Rzecz jasna, w tym procesie też może dojść do pomyłki. Niemniej, skryptów jest zazwyczaj mniej niż cookies – dany skrypt, np. tag Google, może generować kilka różnych ciasteczek. Dlatego w konfiguracji ręcznej będzie znacznie mniej skryptów (a nie cookies) do sklasyfikowania.
Nad skryptami jest też większa kontrola, niż nad plikami cookie. Skrypty dodajemy do strony samodzielnie i nie powinny one pojawiać niespodziewanie. Z drugiej strony, dostawcy skryptów niekoniecznie będą nas uprzedzać o wprowadzeniu nowego cookie generowanego przez dany skrypt lub zastąpienia istniejących cookie innymi – co może sprawić, że na stronie pojawią się nowe, niesklasyfikowane cookie, a to z kolei może spowodować nieprawidłowe działanie blokady automatycznej – do czasu dokonania prawidłowej klasyfikacji nowych ciasteczek.
Owszem, w praktyce mogą się zdarzyć przypadki, w których deweloperzy nie skoordynują wprowadzonej technologii z osobami odpowiadającymi za konfigurację zarządzania zgodami i w kodzie strony (poza GTM) mogą się nagle pojawić się nowe skrypty generujące nieznane cookie – ale są to znacznie rzadsze sytuacje, a pliki te będą przeważnie (choć nie zawsze) niezbędne do działania strony.
A trzeba pamiętać, że przy konfiguracji ręcznej klasyfikacja cookie ma wyłącznie charakter informacyjny i nie wpływa na blokowanie skryptów. Dlatego ryzyko, że takie ewentualne zmiany wpłyną na sposób działania strony lub spowodują uruchamianie skryptów bez odpowiedniej zgody, jest w trybie ręcznym znacznie mniejsze.
Konfiguracja ręczna przez GTM umożliwia też asynchronicznie uruchamianie skryptów śledzących i zarządzania zgodami, przez co wpływ CMP na szybkość wczytywania się strony jest znacznie mniejszy.
Automatyczne blokowanie cookie i tagi w GTM jednocześnie?
Czy można stosować CMP w trybie automatycznego blokowania cookie i jednocześnie korzystać z tagów umieszczonych w Google Tag Managerze?
Jest to jak najbardziej możliwe, ale wymaga to dodania skryptu CMP w kodzie strony, jako pierwszy skrypt, który na tej stronie zostanie synchronicznie uruchomiony (zaraz za znacznikiem <head>). Dodany do GTM tag CMP należy wstrzymać lub usunąć warunek jego wyzwalania, by nie uruchamiał się z GTM.
Ponadto sam GTM należy w kodzie strony oznaczyć parametrem ignorującym blokadę automatyczną (np. data-cookieconsent=”ignore”). Wtedy GTM będzie zarządzał znajdującymi się w nim tagami stosownie do zgód, a pozostałe skrypty będą sterowane blokadą automatyczną. W przeciwnym wypadku, CMP może zablokować cały GTM.
Niektóre platformy określają takie rozwiązanie (automatyczne blokowanie + GTM) jako „best of both worlds” ale trzeba pamiętać, że oznacza to też połączenie zagrożeń wynikających z korzystania z każdego z tych dwóch rozwiązań.
W niektórych sytuacjach, jeśli z różnych powodów część skryptów śledzących (wymagających zgody) będzie musiała pozostać w kodzie strony, umieszczenie kodu CMP w kodzie strony (a nie w GTM) będzie wskazane. Jedną z przyczyn jest konieczność kontroli nad sekwencją uruchamiania się skryptów (skrypty ze strony mogłyby się wczytać szybciej, niż tag zarządzania zgodami umieszczony w GTM). Niektóre adblocki i funkcje chroniące prywatność powodują zablokowanie GTM, co mogłoby spowodować uruchomienie bez zgody skryptów w kodzie strony, jeśli platforma CMP byłaby uruchamiana przez GTM. Niemniej, w takich sytuacjach również warto spróbować, czy nie da się zastosować trybu manualnego – ze względu na wpływ trybu automatycznego na czas ładowania się strony.
Jakie rozwiązanie jest najlepsze?
Nie ma jednego, najlepszego rozwiązania dla każdej strony internetowej. Na bazie doświadczenia we wdrażaniu CMP i consent mode można jednak stwierdzić, że najpewniejszą opcją będzie stosowanie konfiguracji ręcznej z użyciem GTM.
Nie jest to jedyna metoda poprawnej implementacji i nie zawsze będzie ona najprostsza, ale wydaje się być najbardziej uniwersalna i niesie z sobą najmniej zagrożeń dla poprawnego funkcjonowania strony, a także daje znacznie więcej kontroli nad samym procesem, niż konfiguracja automatyczna.
Stosowanie integracji z GTM diametralnie upraszcza również wdrożenie consent mode i jego ewentualne przyszłe aktualizacje.