GTM 동적 태깅 가이드: 기본 제공 변수와 사용자 정의 변수 최적화 전략

GTM 기본 제공 변수와 사용자 정의 변수를 활용한 동적 태깅 설정

현업의 고민

GTM(Google Tag Manager)을 단순히 태그를 심는 도구로만 활용하고 계신가요? 실무에서 데이터 수집 효율이 떨어지는 가장 큰 이유는 모든 이벤트마다 개별 태그를 생성하는 ‘하드코딩 방식의 태깅’ 때문입니다. 페이지가 수백 개인데 버튼 클릭 하나를 측정하기 위해 수십 개의 태그를 만드는 방식은 관리 효율을 저해하고 데이터 정합성을 해칩니다.

 

GTM 구조 이해의 핵심은 ‘동적 태깅(Dynamic Tagging)’에 있습니다. 변수를 활용해 하나의 태그가 상황에 맞는 값을 유연하게 수집하도록 설계해야 합니다. 본 가이드에서는 기본 제공 변수와 사용자 정의 변수를 결합하여 유지보수를 줄여주는 태깅 환경 구축법을 제시합니다.

 

이 글은 ‘GTM 구조 이해하기: 태그, 트리거, 변수의 작동 원리와 데이터 수집 최적화 가이드‘를 먼저 읽어보신 후 따라오시는 것을 추천드립니다.

 


 

Part 1 – GTM 동적 태깅의 핵심 개념과 중요성

동적 태깅이란 특정 값이 고정된 상태가 아니라, 사용자의 행동이나 웹사이트 환경에 따라 변수가 실시간으로 값을 받아 태그에 전달하는 방식입니다.

 

기본 제공 변수(Built-in Variables)

기본 제공 변수는 GTM이 사전에 정의해둔 변수군입니다. 클릭한 요소의 URL, ID, 클래스명 등 웹 페이지에서 발생하는 가장 기본적인 상호작용 데이터를 별도의 코드 없이 즉시 추출할 수 있게 해줍니다.

 

사용자 정의 변수(User-Defined Variables)

기본 제공 변수만으로 수집할 수 없는 비즈니스 고유의 데이터(예: 상품 가격, 회원 등급, 장바구니 총액 등)를 수집할 때 사용합니다. 데이터 영역(Data Layer)이나 JavaScript 변수, DOM 요소 등을 활용해 분석가가 원하는 데이터 구조를 직접 정의합니다.

 


 

본문 Part 2 – 실무 적용 가이드

Step 1: 기본 제공 변수 활성화 및 변수 환경 준비

모든 동적 태깅의 시작은 필요한 변수를 가용 상태로 만드는 것입니다.

 

  1. GTM 컨테이너 접속 후 좌측 [변수] 메뉴 클릭.
  2. 기본 제공 변수 영역의 [구성] 버튼 클릭.
  3. 실무 필수 항목 체크: Clicks(모든 항목), Forms(모든 항목), Utilities(Event, Page URL 등).
  4. 이제 GTM은 사용자가 클릭한 요소의 텍스트(Click Text)나 URL(Click URL)을 인식할 준비가 되었습니다.

 

Step 2: 사용자 정의 변수를 활용한 데이터 추출 (Data Layer)

상품 상세 페이지에서 상품명을 동적으로 가져오는 변수를 생성해 보겠습니다.

 

  1. [변수] > 사용자 정의 변수 [새로 만들기] 클릭.
  2. 변수 유형 선택: [데이터 영역 변수].
  3. 데이터 영역 변수 이름에 개발자가 설정한 키값(예: ecommerce.items.0.item_name) 입력.
  4. 변수 이름을 dlv – product_name으로 저장 (dlv는 Data Layer Variable의 약어로 실무에서 통용).

 

Step 3: 태그에 변수 삽입 및 디버깅

  1. [태그] 메뉴에서 GA4 이벤트 태그 생성.
  2. 이벤트 매개변수 설정: item_name 값 옆의 [+] 버튼을 눌러 미리 만든 {{dlv – product_name}} 선택.
  3. [미리보기(Preview)] 모드 실행.
  4. 웹사이트에서 상품 클릭 후 GTM 디버그 창의 Variables 탭에서 해당 변수에 실제 상품명이 정상적으로 담기는지 확인.

 


Part 3 – 핵심 요약 및 비교 분석

구분 기본 제공 변수 사용자 정의 변수
생성 방식 체크박스 선택으로 활성화 직접 조건 및 유형 설정 필요
주요 용도 클릭 요소, 페이지 정보 등 비즈니스 로직(매출, 회원 등)
유연성 고정된 속성만 수집 가능 JS, CSS 선택자 등 확장 가능
난이도 낮음 중간(DataLayer 등 이해 필요)


 

FAQ – GTM 변수 관련 자주 묻는 질문

Q1. Click Text 기본 제공 변수가 공백으로 수집되는 이유는 무엇인가요?

Google 공식 가이드에 따르면, 클릭한 요소 내부에 텍스트가 없거나 이미지(img 태그)를 클릭했을 경우 Click Text는 빈 값을 반환합니다. 이 경우 Click Element를 분석하거나 하위 요소를 포함하는 CSS 선택자 변수를 사용해야 합니다.

 

Q2. 데이터 영역 변수(Data Layer Variable)의 버전 1과 2의 차이는 무엇인가요?

버전 2(기본값)는 중첩된 객체 구조를 지원하며 데이터를 병합합니다. 버전 1은 중첩 구조를 지원하지 않으므로, 복잡한 GA4 전자상거래 데이터를 다룰 때는 반드시 버전 2를 사용해야 합니다.

 

Q3. 변수를 많이 만들면 웹사이트 속도가 느려지나요?

GTM 변수 자체는 호출될 때만 계산되므로 수십 개 수준으로는 속도 저하가 미미합니다. 다만, 복잡한 ‘맞춤 JavaScript’ 변수가 많을 경우 브라우저 리소스를 사용하므로 효율적인 설계가 필요합니다.

 

Q4. 정의되지 않은(undefined) 변수 값은 어떻게 처리되나요?

Google 공식 문서상 변수 값을 찾을 수 없으면 undefined를 반환합니다. 태그 실행 시 오류를 방지하려면 변수 설정 하단의 기본값 설정 기능을 활용해 (not set) 등의 값을 지정하는 것이 권장됩니다.

 

Q5. URL 변수에서 특정 쿼리 파라미터만 추출할 수 있나요?

네, 기본 제공 변수 Page URL 대신 사용자 정의 변수에서 [URL] 유형을 선택하고 구성 유형을 [쿼리]로 설정한 뒤, 추출하고자 하는 키값(예: utm_source)을 입력하면 해당 값만 동적으로 추출할 수 있습니다.

 


 

결론

GTM의 진가는 ‘자동화’에 있습니다. 기본 제공 변수로 기본 행동을 파악하고, 사용자 정의 변수로 비즈니스 맥락을 입히는 과정은 데이터 분석의 질을 결정짓습니다.

동적 태깅을 잘 설계해두면 사이트 UI가 일부 변경되더라도 태그를 일일이 수정할 필요가 없어 운영 리소스를 70% 이상 절감할 수 있습니다.

지금 바로 여러분의 GTM 컨테이너에서 중복된 태그들을 변수 하나로 통합해 보시기 바랍니다.

Popular & Related Posts

GA4 데이터 스트림(Data Stream) 심층가이드 | 플러스제로

Google Analytics

2025년 1월

GA4 데이터 스트림 심층 가이드

웹부터 앱까지 모든 사용자 활동을 한눈에 파악하고 싶다면? GA4 데이터 스트림의 강력한 통합 분석 기능으로 더 깊은 인사이트를 얻고, 성공적인 마케팅 전략을 펼쳐보세요.
GA4 계층 구조 이해하기 - 계정, 속성, 데이터 스트림

Google Analytics

2025년 1월

GA4 계층 구조 이해하기

GA4 계층 구조의 계정(Account), 속성(Property), 데이터 스트림(Data Stream)을 이해고, 비즈니스와 분석 목표에 따라 GA4를 설정해보세요!
ga4이벤트세션사용자

Google Analytics

2025년 4월

GA4 3가지 핵심 개념 (이벤트, 세션, 사용자)

GA4의 핵심 개념인 이벤트, 세션, 사용자 식별 방식을 정리했습니다. 이벤트 단위의 데이터 수집, 세션 구조, 사용자 식별 방식(Client ID, User ID, Google Signals)의 차이를 이해해보세요.