브라우저 DevTools로 Google Consent Mode 디버깅하기: gcs 파라미터 읽는 법
브라우저에서 확인해야 하는 이유
올바르게 보이는 동의 배너가 태그가 제대로 동작한다는 증거는 아닙니다. Consent Mode 문제는 조용히 발생합니다. 페이지는 로드되고, 광고는 표시되고, 리포트는 채워지지만, Google에 전송되는 신호가 잘못되어 있을 수 있습니다. 브라우저의 개발자 도구를 쓰면 추가 소프트웨어 없이 몇 분 안에 실제 상황을 확인할 수 있습니다.
1단계: 네트워크 탭을 깨끗하게 열기
- 이전 선택이 저장되지 않도록 시크릿 창에서 페이지를 엽니다.
- DevTools를 열고 Network 탭으로 이동합니다.
- 페이지 이동 후에도 요청이 남도록 Preserve log를 체크합니다.
- 페이지를 새로고침하고 아직 배너는 건드리지 마세요.
2단계: 요청에서 동의 상태 찾기
Google 태그는 요청에 gcs 파라미터를 추가합니다. 네트워크 목록을 collect 또는 google로 필터링하고 아무 요청이나 열어 쿼리 문자열을 읽을 수 있습니다. 값은 G100이나 G111처럼 보입니다.
- G100 — 광고 저장소와 분석 저장소가 모두 거부됨.
- G111 — 둘 다 허용됨.
- G101과 G110 — 하나는 허용, 하나는 거부.
G1 뒤의 문자를 왼쪽에서 오른쪽으로 읽습니다. 첫 번째 숫자는 광고 저장소 상태이고 두 번째는 분석 저장소 상태이며, 1은 허용, 0은 거부를 뜻합니다. 최신 구현에서는 Consent Mode v2의 추가 신호를 포함하는 더 긴 인코딩 상태를 가진 gcd 파라미터도 함께 전송합니다.
3단계: 어떤 선택 이전에 보여야 하는 것
동의가 필요한 지역에서는 방문자가 상호작용하기 전에 전송되는 첫 요청이 거부 상태를 보여야 합니다. 방문자가 아무것도 클릭하지 않았는데 G111이 보인다면, 기본값이 잘못되었거나 기본값이 설정되기 전에 태그가 실행된 것입니다.
4단계: 수락한 후에 보여야 하는 것
수락을 클릭한 다음 새 요청을 관찰하세요. 상태가 허용으로 바뀌고 태그가 진행되어야 합니다. 배너는 수락됨이라고 하는데 요청에는 여전히 거부 상태가 실려 있다면, update 호출이 Google 태그에 도달하지 않거나 너무 늦게 실행되는 것입니다.
5단계: 데이터 레이어 검사하기
콘솔에 dataLayer를 입력하고 항목을 펼칩니다. 순서대로 두 가지를 찾습니다.
- 동의가 필요한 지역에 대해 모든 신호를 거부로 나열하는, default 명령의 consent 항목.
- 사용자가 선택한 뒤에 오는, update 명령의 consent 항목.
Consent Mode v2 신호는 ad_storage, analytics_storage, ad_user_data, ad_personalization입니다. 마지막 둘이 없다면 v1 방식의 설정입니다.
가장 흔한 실수
- 기본값을 너무 늦게 설정. default 명령은 Google 태그나 Tag Manager 컨테이너가 로드되기 전에 실행되어야 합니다.
- update가 전송되지 않음. 배너가 선택을 저장하지만 update 명령을 호출하지 않습니다.
- 신호가 두 개뿐. 사용자 데이터와 개인화에 대한 v2 신호가 빠져 있습니다.
- 잘못된 지역 로직. 동의가 필요한 지역의 방문자가 기본적으로 허용으로 처리됩니다.
- 확장 프로그램에 의한 차단. 본인 브라우저의 개인정보 보호 확장 프로그램이 요청을 숨깁니다. 확장 프로그램을 끄고 테스트하세요.
- 캐시된 선택. 이전 선택이 이미 저장된 일반 창에서 테스트했습니다.
6단계: Tag Manager 미리보기 모드 확인하기
Google Tag Manager를 사용한다면, 미리보기 모드에서 페이지의 각 이벤트에 대한 동의 상태와 어떤 태그가 실행되었거나 차단되었는지 볼 수 있습니다. 네트워크 탭에서 본 것과 비교하세요. 두 보기는 일치해야 합니다.
루틴으로 만들기
배너를 바꾸거나, 컨테이너를 게시하거나, 사이트를 릴리스할 때마다 이 5분짜리 점검을 실행하세요. 첫 방문, 수락 후, 거부 후, 나중에 선택을 바꾼 후의 네 가지 경우에 대해 기대하는 gcs 값을 적어 두세요. 일치하지 않는 것은 리포트가 알려주기 전에 고쳐야 할 버그입니다.
FlexyConsent의 역할
FlexyConsent는 Google 인증 CMP(CMP ID 317)이며 Google Consent Mode v2를 지원하여 default 및 update 신호를 대신 전송합니다. 태그 순서와 컨테이너 설정은 사이트마다 다르므로, 그래도 자신의 페이지에서 이 브라우저 점검을 실행해야 합니다.
핵심 요약
- 네트워크 로그를 보존한 채 시크릿 창에서 테스트하세요.
- gcs 값을 읽으세요: G100은 거부, G111은 허용입니다.
- 거부 기본값은 방문자가 선택하기 전에 보여야 합니다.
- update는 선택 직후 상태를 바꿔야 합니다.
- 데이터 레이어에 Consent Mode v2의 네 가지 신호가 모두 나타나는지 확인하세요.