sGTM 태그 디버깅 방법 5단계

핵심 요약
  • sGTM Preview에서 요청 수신과 클라이언트 처리를 확인합니다.
  • 브라우저 Network와 서버 Preview를 함께 대조합니다.
  • 태그 실행, 변수 값, 외부 전송 응답을 순서대로 점검합니다.

sGTM(서버 측 Google Tag Manager) 태그가 작동하지 않을 때는 브라우저 요청이 서버 컨테이너에 도착했는지, 클라이언트가 요청을 처리했는지, 서버 태그가 목적지로 데이터를 보냈는지를 차례로 확인하면 원인을 좁힐 수 있습니다. 웹 컨테이너 Preview만으로 서버 태그의 전송 결과까지 확인할 수는 없으므로, 브라우저 개발자 도구와 서버 컨테이너 Preview를 함께 사용하세요.

먼저 알아둘 sGTM 디버깅 흐름

브라우저 요청이 서버 컨테이너의 클라이언트와 태그를 거쳐 외부 서비스로 전달되는 흐름

브라우저와 서버 컨테이너의 역할은 다릅니다

웹 컨테이너는 브라우저에서 이벤트를 만들고 서버 컨테이너 주소로 요청을 보냅니다. 서버 컨테이너에서는 클라이언트가 요청을 인식해 이벤트 데이터를 만들고, 조건에 맞는 서버 태그가 실행되어 GA4나 광고 플랫폼 같은 목적지로 데이터를 전달합니다. 이때 클라이언트는 서버로 들어온 요청 형식을 인식하고 처리하는 구성 요소입니다.

문제가 생긴 위치를 세 구간으로 나눕니다

첫째, 브라우저에서 요청이 발생했는지 확인합니다. 둘째, 그 요청이 sGTM 서버에 도착하고 올바른 클라이언트가 처리했는지 살핍니다. 셋째, 서버 태그의 실행 여부와 외부 서비스 응답을 확인합니다. 각 구간의 증거를 나눠 보면 “이벤트가 안 보인다”는 증상만으로 트리거나 전송 오류를 혼동하는 일을 줄일 수 있습니다. 도입 단계에서 도메인·데이터 흐름을 점검하려면 sGTM 도입 전 체크리스트도 참고하세요.

sGTM 태그 디버깅 방법: 실제 수행 순서

브라우저 개발자 도구와 Tag Assistant에서 서버 요청과 이벤트별 태그 상태를 확인하는 화면.

1단계. 서버 컨테이너 Preview를 엽니다

GTM에서 디버깅할 서버 컨테이너를 선택하고 Preview를 눌러 Tag Assistant 디버그 화면을 여세요. 테스트는 Preview를 활성화한 브라우저와 같은 브라우저에서 진행합니다. 다른 브라우저나 별도 기기에서 발생한 요청은 기본 Preview 세션에 표시되지 않을 수 있습니다. 아직 Preview 창을 열기 전이라면 먼저 테스트할 사이트와 컨테이너가 맞는지 확인하세요.

2단계. 브라우저에서 테스트 이벤트를 재현합니다

사용자가 실제로 수행하는 순서대로 페이지를 열고, 전환 버튼 클릭이나 장바구니 담기처럼 확인할 행동을 재현합니다. 매번 여러 행동을 한꺼번에 시험하기보다 페이지뷰, 클릭, 구매 등 이벤트 하나씩 발생시켜야 어느 요청에서 흐름이 끊기는지 찾기 쉽습니다. GTM 웹 컨테이너 Preview도 함께 켜면 브라우저에서 이벤트가 만들어졌는지와 웹 태그가 발동했는지를 확인할 수 있습니다.

3단계. Network에서 서버 주소로 요청이 나갔는지 확인합니다

브라우저 개발자 도구의 Network 탭을 열고 테스트 이벤트를 다시 발생시킵니다. 요청 목록에서 서버 컨테이너에 설정한 도메인으로 나가는 요청을 찾고, 요청 URL·상태·전송 매개변수를 살펴보세요. 브라우저 태그가 실행됐더라도 요청의 수신 주소가 잘못되었거나 필요한 매개변수가 빠지면 서버에서 기대한 이벤트로 처리하지 못할 수 있습니다. 브라우저에는 요청이 보이는데 서버 Preview에는 없다면 주소 설정, Preview 세션 브라우저, 네트워크·프록시 경로를 먼저 대조합니다.

4단계. 서버 Preview에서 요청과 클라이언트를 확인합니다

서버 Preview 왼쪽에 테스트 요청이 나타나는지 찾고 해당 항목을 선택합니다. Request 탭에서는 들어온 요청과 이를 가져간 클라이언트를 확인하세요. 예상한 클라이언트가 요청을 처리했는지, 요청에 이벤트 처리에 필요한 값이 있는지 살핍니다. 이벤트가 요청 아래 하위 항목으로 표시되는 경우 여러 이벤트가 한 요청에 묶여 있을 수 있으므로, 요청 한 건만 보고 이벤트 한 건이라고 단정하지 마세요.

Event Data 탭은 클라이언트가 만든 이벤트 데이터, Variables 탭은 태그 조건이나 매핑에 사용되는 변수 값을 확인하는 곳입니다. 값이 비어 있거나 예상과 다르면 브라우저 요청에 그 값이 실렸는지부터 거슬러 올라가세요. 요청 데이터는 맞지만 클라이언트가 처리하지 않았다면 요청 형식과 클라이언트의 인식 조건을 점검합니다.

5단계. 태그 실행과 목적지 응답을 확인합니다

Tags 탭에서 해당 이벤트에 기대한 태그가 Fired 또는 Not Fired 중 어디에 표시되는지 확인합니다. Not Fired라면 이벤트 이름, 트리거 조건, 예외 조건과 변수 값을 대조하세요. Fired라면 태그 상세 화면에서 생성된 외부 요청과 응답 상태를 확인합니다. 태그가 실행됐다는 사실만으로 목적지에 데이터가 정상 반영됐다고 결론 내릴 수는 없습니다. Console 탭에 오류가 있는지도 확인하고, GA4 수집 여부는 해당 속성의 DebugView 등 목적지 서비스에서도 별도로 검증하세요.

핵심 기준: 브라우저 요청, 서버의 클라이언트 처리, 서버 태그의 외부 요청은 서로 다른 단계입니다. 각 단계의 확인 화면에서 실제 요청과 응답을 대조해야 합니다.

화면별로 무엇을 확인할까

확인 위치 확인할 내용 문제일 때 볼 곳
웹 Preview 브라우저 이벤트와 웹 태그 발동 트리거, 변수, 태그 설정
Network sGTM 주소로 보낸 요청과 상태 전송 주소, 요청 매개변수
서버 Preview Request 수신 요청과 요청을 가져간 클라이언트 클라이언트 인식 조건, 요청 형식
서버 Preview Tags 서버 태그 발동 및 외부 응답 트리거, 변수, 태그·목적지 설정

증상별로 원인을 좁히는 법

서버 Preview의 요청과 이벤트 데이터, 태그 실행 상태, 외부 요청 응답을 확인하는 항목들이 정리되어 있다.
  • 서버 Preview에 요청이 전혀 없음: 웹 태그 발동 여부와 전송 대상 URL을 확인하고, Preview와 테스트를 같은 브라우저에서 했는지 점검합니다.
  • 요청은 있지만 이벤트 데이터가 기대와 다름: Request와 Event Data를 비교하고, 클라이언트가 요청을 가져갔는지 및 브라우저가 필요한 매개변수를 보냈는지 확인합니다.
  • 이벤트 데이터는 맞지만 서버 태그가 실행되지 않음: Tags의 Not Fired 상태에서 트리거·예외 조건과 변수 값을 확인합니다.
  • 태그는 실행되지만 목적지에서 확인되지 않음: Outgoing HTTP Request와 응답 상태·내용을 확인한 뒤 목적지의 디버그 화면이나 수집 설정을 따로 점검합니다.

서버 태그가 외부 요청을 보내지 못하거나 응답 오류가 기록되면 서버 Preview의 Console과 Request 상세 내용을 함께 보세요. 호스팅 환경의 로그나 프록시를 쓰는 구성이라면 해당 구간의 네트워크 로그도 필요할 수 있습니다. 원인을 찾기 전에 여러 설정을 동시에 바꾸면 재현 결과를 비교하기 어려우므로, 한 번에 하나씩 수정하고 같은 이벤트를 다시 발생시키는 편이 좋습니다.

배포 전 마지막 점검

브라우저 요청과 서버 Preview의 이벤트·태그를 대조하고 목적지 응답을 확인하는 화면.
  1. 테스트 조건 기록: 브라우저, 테스트 페이지, 수행 행동, 기대 이벤트 이름을 정합니다.
  2. 요청 흐름 대조: Network에서 보낸 요청과 서버 Preview에서 받은 요청이 일치하는지 확인합니다.
  3. 이벤트와 태그 확인: 클라이언트, Event Data, 변수, 태그 발동 상태를 순서대로 확인합니다.
  4. 목적지 검증: 외부 요청과 응답을 확인하고 목적지의 디버그 화면에서도 이벤트를 확인합니다.
  5. 변경 후 재시험: 수정한 조건으로 같은 경로를 다시 실행하고, 의도한 이벤트만 적절히 발생하는지 확인합니다.

Preview에서 정상으로 보이는 것은 현재 작업공간 설정을 시험했다는 뜻입니다. 변경 사항을 실제 트래픽에 적용하려면 배포 절차가 별도로 필요하므로, 검증 기록과 변경 범위를 확인한 뒤 승인된 방식으로 게시하세요. Google의 서버 컨테이너 Preview 공식 안내에는 Request, Tags, Variables, Event Data, Console에서 확인할 내용이 설명되어 있습니다. 브라우저에서 서버로 요청이 전달되는지 점검할 때는 서버 측 태깅 테스트 안내도 참고할 수 있습니다.

주의: Preview는 디버깅 세션에서 발생한 요청을 살피는 도구입니다. Preview에서 태그가 실행된 것과 광고·분석 플랫폼에 최종 데이터가 반영된 것은 구분해 검증하세요.

자주 묻는 질문

Q. 웹 GTM Preview에서는 태그가 실행되는데 서버 Preview에는 요청이 없어요.

웹 태그의 발동과 서버 컨테이너 수신은 별도입니다. Network에서 요청이 실제로 sGTM 주소로 나가는지 확인하고, 서버 Preview와 테스트가 같은 브라우저 세션인지 점검하세요. 요청 URL이나 도메인 설정도 대조합니다.

Q. 서버 Preview에 요청이 보이는데 서버 태그는 실행되지 않습니다.

Request에서 클라이언트가 요청을 가져갔는지 확인한 뒤 Event Data와 Variables의 값을 살펴보세요. 이벤트 이름이나 트리거 조건이 실제 값과 다르거나 예외 조건이 참이면 태그가 실행되지 않을 수 있습니다.

Q. 태그가 Fired라면 GA4나 광고 플랫폼에도 수집된 건가요?

반드시 그렇지는 않습니다. Fired는 서버 컨테이너에서 태그가 실행되었다는 의미입니다. Outgoing HTTP Request와 응답을 확인하고 GA4 DebugView 등 목적지의 디버깅 도구에서도 이벤트를 검증하세요.

Q. 한 요청 아래 이벤트가 여러 개 표시되는 이유는 무엇인가요?

GA4는 하나의 요청에 여러 이벤트를 묶어 보낼 수 있습니다. 서버 Preview에서는 상위 요청과 그 아래 개별 이벤트를 구분해 확인하고, 브라우저 Network의 요청과 비교하세요.

참고자료

관련 글 보기