GTM 동의 모드 설정: 기본값·업데이트·검증 3단계 기준

Oct 15, 2026
GTM 동의 모드 설정: 기본값·업데이트·검증 3단계 기준

GTM 동의 모드는 쿠키 배너를 붙이는 작업이 아닙니다. 사용자가 동의했는지를 구글 태그가 알아듣는 신호로 바꿔 전달하는 장치입니다.

그래서 GTM 동의 모드 설정에서 가장 중요한 건 배너 디자인이 아닙니다. 기본값(default)이 어떤 태그보다 먼저 실행되는지, 그리고 사용자 선택이 업데이트(update)로 제대로 넘어가는지입니다. 이 두 가지가 어긋나면 배너는 잘 떠도 광고 전환과 GA4 데이터는 조용히 빠져나갑니다.

아래에서 동의 모드의 구조, GTM에서 설정하는 순서, 그리고 설정이 맞게 됐는지 검증하는 기준을 단계별로 설명합니다.

1. GTM 동의 모드 설정 전에 알아야 할 구조: 4개 신호와 2가지 모드

먼저 개념부터 잡고 가겠습니다.
동의 모드는 "태그를 켤지 말지"를 정하는 기능이 아닙니다. 정확히는 "태그가 어떤 수준으로 데이터를 보낼지"를 동의 상태에 따라 바꾸는 기능입니다.

동의 모드 v2의 핵심 신호 4가지

2024년 3월부터 구글은 유럽경제지역(EEA)·영국 사용자 데이터에 대해 동의 모드 v2 신호를 요구하고 있습니다.
v1에 있던 2개 신호에 광고용 신호 2개가 추가된 구조입니다.

신호

의미

영향 받는 영역

ad_storage

광고용 쿠키 저장 허용 여부

구글 광고 전환 쿠키, 클릭 ID 저장

analytics_storage

분석용 쿠키 저장 허용 여부

GA4 사용자·세션 식별

ad_user_data

사용자 데이터를 광고 목적으로 구글에 보내는 것 허용 여부

전환 추적, 향상된 전환

ad_personalization

개인 맞춤 광고 허용 여부

리마케팅 목록, 맞춤 잠재고객

이 외에도 functionality_storage, personalization_storage, security_storage가 있지만, 광고 성과에 직접 영향을 주는 건 위 4개입니다.

-> 실무에서 가장 자주 빠지는 건 ad_user_data와 ad_personalization입니다. 예전에 v1으로 세팅해 두고 업데이트하지 않은 컨테이너가 의외로 많습니다.

기본 모드 vs 고급 모드

동의 모드에는 두 가지 구현 방식이 있습니다.
둘 다 GTM에서 할 수 있지만, 데이터가 쌓이는 방식이 완전히 다릅니다.

① 기본 모드 (Basic)

  • 사용자가 동의하기 전에는 구글 태그 자체를 막음

  • 거부한 사용자에 대해서는 아무 데이터도 전송되지 않음

  • 전환 모델링은 일반적인 수준(사이트 신호 없이)으로만 적용

-> 구현이 단순하고, 동의 전 데이터 전송을 엄격하게 막아야 할 때 유리

② 고급 모드 (Advanced)

  • 태그는 페이지 로드 시 바로 실행되지만, 동의 전에는 쿠키를 쓰지 않음

  • 거부한 사용자에 대해서도 쿠키 없는 핑(cookieless ping)을 전송

  • 이 핑을 바탕으로 사이트에 맞춘 전환 모델링이 가능

-> 거부율이 높은 사이트에서 전환 손실을 줄이고 싶을 때 유리

어떤 모드를 쓸지는 광고 효율보다 법무·개인정보 정책이 먼저 결정해야 하는 영역입니다. 마케터가 "모델링이 더 좋으니까 고급 모드로"라고 혼자 정하면 안 되는 이유입니다.

국내 사이트에도 동의 모드가 필요할까

국내 개인정보보호법은 GDPR처럼 쿠키 동의 배너를 일률적으로 요구하는 구조가 아닙니다.
그래서 국내 트래픽만 받는 사이트라면 동의 모드가 당장 필수는 아닙니다.

다만 아래 세 가지 중 하나라도 해당되면 이야기가 달라집니다.

1) 해외 몰·글로벌 사이트를 운영해 EEA·영국 방문자가 들어오는 경우

2) 이미 쿠키 배너(CMP)를 붙여 두었는데 구글 태그와 연결하지 않은 경우

3) 본사·투자사 정책으로 개인정보 동의 체계를 갖춰야 하는 경우

특히 2번이 가장 위험합니다.
배너만 붙이고 동의 모드를 연결하지 않으면, CMP가 태그를 통째로 막거나 반대로 아무것도 막지 못하는 상태가 됩니다. 어느 쪽이든 데이터는 틀어집니다.

2. GTM 동의 모드 설정 순서: 기본값부터 업데이트까지 4단계

구조를 이해했다면 이제 실제 설정입니다.
순서가 중요합니다. 기본값 → 업데이트 → 태그별 동의 확인 순서가 무너지면 뒤에서 아무리 고쳐도 데이터가 맞지 않습니다.

1단계: 컨테이너에서 동의 개요 활성화

GTM 관리 → 컨테이너 설정에서 '동의 개요 사용 설정(Enable consent overview)'을 켭니다.

이걸 켜면 태그 목록 상단에 방패 모양 아이콘이 생기고, 태그마다 동의 설정이 되어 있는지 한눈에 볼 수 있습니다.
태그가 수십 개인 컨테이너라면 이 화면 없이 점검하는 건 사실상 불가능합니다.

2단계: 기본값(default) 설정 — 동의 초기화 트리거에 걸기

기본값은 "사용자가 아직 아무것도 선택하지 않았을 때의 상태"입니다.
이 기본값은 반드시 'Consent Initialization - All Pages(동의 초기화 - 모든 페이지)' 트리거에 걸어야 합니다.

일반 'All Pages' 트리거에 걸면 다른 태그와 실행 순서가 섞여, 구글 태그가 기본값보다 먼저 실행되는 경우가 생깁니다.
이렇게 되면 동의 상태가 "설정 안 됨"으로 전송되고, 동의 모드가 작동하지 않는 것과 같아집니다.

설정 방법은 두 가지입니다.

① CMP 템플릿 사용 (권장)

  • 커뮤니티 템플릿 갤러리에서 사용 중인 CMP의 공식 템플릿을 추가

  • 템플릿 안에서 기본값·지역·업데이트 연동까지 한 번에 설정

  • 구글 인증 CMP라면 v2 신호 4개를 모두 지원하는지 먼저 확인

② 직접 구현

  • 맞춤 HTML 또는 동의 모드 템플릿으로 gtag('consent', 'default', {...}) 실행

  • 자체 개발 배너를 쓰는 경우에만 권장

기본값을 설정할 때 함께 정해야 할 값이 두 가지 있습니다.

region (지역)
EEA·영국에는 기본값을 denied로, 그 외 지역에는 granted로 나눠 설정할 수 있습니다.
국내 기반 글로벌 몰이라면 이 방식이 가장 현실적입니다. 국내 방문자 데이터는 그대로 두고, 규제 지역만 엄격하게 처리하는 구조입니다.

wait_for_update (대기 시간)
CMP가 저장된 동의 상태를 불러오기까지 태그가 기다리는 시간(밀리초)입니다.
실무에서는 500ms 전후로 두는 경우가 많습니다. 너무 짧으면 재방문자가 이미 동의했는데도 첫 페이지뷰가 denied로 나가고, 너무 길면 태그 실행이 늦어집니다.

3단계: 업데이트(update) 연결 — 사용자 선택을 신호로 바꾸기

사용자가 배너에서 '동의' 또는 '거부'를 누르는 순간, gtag('consent', 'update', {...})가 실행되어야 합니다.
CMP 템플릿을 쓰면 보통 자동으로 처리되지만, 반드시 확인해야 할 지점이 있습니다.

  • 배너의 카테고리(마케팅/분석/기능)가 4개 신호와 정확히 매핑되어 있는가

  • '마케팅' 동의 시 ad_storage만 바뀌고 ad_user_data, ad_personalization은 그대로 denied로 남아 있지 않은가

  • 재방문자의 저장된 동의 상태가 페이지 로드 시 다시 update로 전송되는가

-> 두 번째 항목이 가장 흔한 실수입니다. 배너는 "마케팅 쿠키 동의"로 보이는데 실제로는 v1 신호만 업데이트되는 경우입니다. 이 상태에서는 EEA 사용자 리마케팅 목록이 쌓이지 않습니다.

4단계: 비구글 태그에 추가 동의 확인 설정

구글 광고, GA4, 플러드라이트, 전환 링커 태그는 기본 제공 동의 확인(built-in consent checks)이 있어서 동의 상태를 스스로 읽습니다.
문제는 메타 픽셀, 카카오 픽셀, 네이버 공통 스크립트 같은 비구글 태그입니다.

이 태그들은 구글 동의 모드 신호를 읽지 못합니다.
그래서 태그 설정 → 동의 설정에서 '태그 실행을 위해 추가 동의 필요'를 선택하고, 해당하는 신호(보통 ad_storage)를 지정해야 합니다.

여기서 주의할 점이 하나 있습니다.
추가 동의가 걸린 태그는 트리거 시점에 동의가 없으면 실행되지 않습니다. 그래서 페이지뷰 트리거만 걸어 두면, 사용자가 페이지 중간에 동의를 눌러도 그 페이지의 픽셀은 나가지 않을 수 있습니다.

실무에서는 CMP가 dataLayer에 보내는 동의 업데이트 이벤트를 맞춤 이벤트 트리거로 하나 더 걸어 이 공백을 메우는 편입니다.

GTM 메타 픽셀 설치 기준: 태그·트리거·중복 방지 3단계

3. GTM 동의 모드 검증 기준: 태그 어시스턴트와 gcs 값으로 확인하기

설정을 마쳤다면 "배너가 뜬다"로 끝내면 안 됩니다.
동의 모드는 화면에 보이지 않는 신호라서, 반드시 미리보기와 네트워크 요청으로 확인해야 합니다.

태그 어시스턴트에서 확인할 3가지

GTM 미리보기(태그 어시스턴트)를 열고, 왼쪽 이벤트 목록의 맨 처음 이벤트를 선택한 뒤 '동의(Consent)' 탭을 확인합니다.

① On-page Default
- 페이지 로드 직후 기본값이 4개 신호 모두 설정되어 있는지
- "Not set"이 하나라도 있으면 기본값 설정이 누락된 것

② On-page Update
- 배너에서 동의를 누른 뒤 update 값이 granted로 바뀌는지
- 거부를 눌렀을 때 denied가 유지되는지

③ 이벤트 순서
- 'Consent Initialization' 이벤트가 'Initialization', 'Container Loaded'보다 앞에 있는지
- 구글 태그가 기본값보다 먼저 실행된 기록이 없는지

네트워크 요청의 gcs 값 읽는 법

브라우저 개발자 도구 → 네트워크 탭에서 구글 광고·GA4 요청을 열면 gcs라는 파라미터가 보입니다.
이 값이 실제로 구글에 전달된 ad_storage와 analytics_storage 상태입니다.

gcs 값

ad_storage

analytics_storage

의미

G100

거부

거부

둘 다 동의 안 함

G110

동의

거부

광고만 동의

G101

거부

동의

분석만 동의

G111

동의

동의

모두 동의

함께 보이는 gcd 파라미터에는 ad_user_data, ad_personalization을 포함한 4개 신호의 기본값·업데이트 상태가 함께 인코딩되어 있습니다.
gcd를 직접 해석하기보다는, gcs로 큰 흐름을 보고 v2 신호는 태그 어시스턴트 동의 탭에서 확인하는 편이 실수가 적습니다.

-> 검증 시나리오는 최소 3가지를 돌려야 합니다. 첫 방문 후 동의 / 첫 방문 후 거부 / 동의한 상태로 재방문. 실무에서 문제가 가장 많이 발견되는 건 세 번째인 재방문 케이스입니다.

실무에서 자주 보이는 실패 패턴 3가지

패턴 1. 기본값이 일반 페이지뷰 트리거에 걸려 있음
태그 어시스턴트에서 첫 이벤트의 동의 상태가 "Not set"으로 찍힙니다.
구글 광고 전환 진단 화면에서도 동의 모드 신호가 일부만 들어온다는 경고가 뜹니다.

패턴 2. CMP가 구글 태그를 직접 차단하면서 동의 모드도 함께 켜 둠
CMP의 자동 차단(스크립트 블로킹) 기능과 고급 모드를 동시에 쓰면, 고급 모드라고 생각했지만 실제로는 기본 모드처럼 작동합니다.
거부 사용자의 쿠키 없는 핑이 전혀 나가지 않아 모델링이 적용되지 않습니다.

패턴 3. 하드코딩된 gtag와 GTM 태그가 공존
사이트 소스에 직접 심은 구글 태그가 GTM보다 먼저 실행되면서 기본값 이전에 요청이 나갑니다.
이 경우 GTM 쪽 설정은 완벽해도 데이터는 틀어집니다. 설치 경로를 하나로 정리하는 게 먼저입니다.

구글 태그 설치 순서: 광고 성과 측정 전 확인할 4단계 기준

4. 동의 모드 적용 후 광고·GA4 데이터 판독 기준

설정이 끝나면 대부분 이런 반응이 나옵니다.
"동의 모드 켰더니 전환이 줄었어요."

이건 설정이 잘못된 게 아니라 정상적인 현상일 가능성이 높습니다. 다만 정상인지 아닌지를 가르는 기준은 있습니다.

전환이 줄었을 때 먼저 볼 것

거부한 사용자의 전환은 더 이상 쿠키 기반으로 측정되지 않습니다.
그래서 동의 모드 적용 직후에는 관측 전환이 줄고, 이후 모델링 전환이 일부를 채우는 흐름이 일반적입니다.

판단 순서는 이렇습니다.

1) 전환 감소가 동의 모드 적용 시점과 정확히 겹치는가

2) 감소 폭이 해당 지역 방문자의 거부 비율과 비슷한 수준인가

3) 구글 광고 전환 진단에서 동의 모드 상태가 정상으로 표시되는가

세 가지가 모두 맞다면 측정 방식이 바뀐 것이지 성과가 떨어진 게 아닙니다.
반대로 거부율과 무관하게 국내 트래픽 전환까지 함께 빠졌다면, region 설정이 잘못되어 전체 지역 기본값이 denied로 나가고 있을 가능성이 큽니다.

GA4 행동 모델링이 적용되는 조건

GA4에서 거부 사용자의 행동을 추정해 채워 주는 행동 모델링은 아무 사이트에나 적용되지 않습니다.
구글이 공개한 기준은 다음과 같습니다.

  • analytics_storage가 거부된 상태의 이벤트가 최소 7일 동안 하루 1,000건 이상

  • analytics_storage를 허용한 사용자가 지난 28일 중 최소 7일 동안 하루 1,000명 이상

  • 고급 모드로 구현되어 있을 것

트래픽이 이 기준에 못 미치는 사이트라면 모델링 데이터는 거의 기대하기 어렵습니다.
이런 경우에는 모델링 대신 향상된 전환, 서버 측 전환 같은 1차 데이터 보강에 더 무게를 두는 편이 현실적입니다.

설정 후 2주 동안 지켜볼 체크리스트

  • 1~3일차: gcs·gcd 값이 시나리오별로 맞게 나가는지 다시 확인

  • 3~7일차: 구글 광고 전환 진단, GA4 관리 → 데이터 수집의 동의 설정 상태 확인

  • 7~14일차: 지역별 전환 변화 비교 (EEA·영국 vs 국내)

  • 14일 이후: 입찰 전략이 바뀐 전환 수에 다시 적응했는지 CPA·ROAS 추이 확인

자동 입찰을 쓰고 있다면 동의 모드 적용 직후 바로 목표 CPA나 목표 ROAS를 손대지 않는 게 좋습니다.
측정 방식이 바뀌는 시점에 입찰 목표까지 함께 바꾸면, 나중에 무엇 때문에 성과가 달라졌는지 판단할 수 없습니다.

구글 광고 전환추적 설정 순서: 실무 4단계 기준

자주 묻는 질문

GTM 동의 모드 기본값은 어떤 트리거에 설정해야 하나요?
'Consent Initialization - All Pages(동의 초기화 - 모든 페이지)' 트리거에 설정해야 합니다. 일반 All Pages 트리거에 걸면 구글 태그가 기본값보다 먼저 실행될 수 있고, 이 경우 동의 상태가 설정되지 않은 채로 데이터가 전송됩니다.

동의 모드 v1에서 v2로 바꾸려면 무엇을 추가해야 하나요?
기존 ad_storage, analytics_storage에 더해 ad_user_data와 ad_personalization 신호를 기본값과 업데이트 양쪽에 모두 추가해야 합니다. CMP 템플릿을 쓰고 있다면 템플릿을 최신 버전으로 업데이트하고, 배너 카테고리와 신규 신호가 매핑되어 있는지 확인하면 됩니다.

동의 모드를 켜면 메타 픽셀도 자동으로 제어되나요?
아닙니다. 메타 픽셀 같은 비구글 태그는 구글 동의 모드 신호를 읽지 못합니다. GTM 태그 설정에서 '추가 동의 필요'를 지정하거나, CMP의 동의 이벤트에 맞춰 실행되도록 트리거를 따로 설계해야 합니다.

동의 모드 적용 후 구글 광고 전환이 줄어드는 게 정상인가요?
거부한 사용자의 전환이 쿠키 기반으로 측정되지 않기 때문에 일정 수준의 감소는 정상입니다. 다만 거부율과 무관한 지역의 전환까지 함께 줄었다면 region 설정이나 기본값 설정 오류를 먼저 의심해야 합니다.

gcs 값 G100은 무슨 뜻인가요?
ad_storage와 analytics_storage가 모두 거부된 상태로 요청이 전송됐다는 뜻입니다. 사용자가 동의를 눌렀는데도 G100이 계속 나온다면 업데이트 명령이 실행되지 않고 있는 것이므로, CMP와 GTM 연동을 다시 확인해야 합니다.

마무리

GTM 동의 모드 설정은 배너를 붙이는 작업이 아니라 신호를 설계하는 작업입니다.

기본값은 동의 초기화 트리거에서 가장 먼저 실행되어야 하고, 사용자의 선택은 v2 신호 4개 모두에 업데이트로 반영되어야 합니다. 비구글 태그는 별도로 추가 동의를 걸어야 하고요.

그리고 설정이 끝났다면 반드시 태그 어시스턴트와 gcs 값으로 첫 방문 동의·거부, 재방문 세 가지 시나리오를 검증해야 합니다.

적용 뒤 전환이 줄었다면, 입찰을 손대기 전에 측정 방식이 바뀐 것인지 설정이 틀어진 것인지부터 가르는 게 순서입니다.
이 순서만 지켜도 동의 모드 때문에 광고 데이터가 무너지는 일은 대부분 막을 수 있습니다.

Share article