GA4 UTM 파라미터 설정 가이드 — 광고 트래픽이 'Direct'로 잡히는 이유와 해결법
GA4, GTM, UTM 세 도구가 어떻게 맞물리는지 한 번에 정리한다. UTM 없이 광고를 돌리면 왜 'Direct'로 잡히는지, 올바른 세팅 방법은 무엇인지 설명한다.
UTM을 빠뜨리면 광고비를 쓰고도 어디서 전환이 났는지 알 수 없다. GA4, GTM, UTM 세 도구가 어떻게 맞물리는지 모르면, 리포트는 숫자가 가득해도 의미가 없다. 이 글은 그 구조를 한 번에 정리한다.
광고를 돌리고 GA4를 열었더니 유입 대부분이 'Direct'로 찍혀 있던 경험, 한 번쯤 있을 것이다. UTM이 없어서다.
GA4, GTM, UTM — 각자의 역할
Photo by KOBU Agency on Unsplash
세 도구는 역할이 다르다. 헷갈리면 설정이 꼬인다.
- GA4: 데이터를 수집·저장·분석하는 플랫폼. 어디서 왔고, 뭘 했고, 어떤 결과가 났는지를 기록한다.
- GTM: GA4 태그를 포함한 모든 마케팅 태그를 코드 배포 없이 심는 컨테이너. 개발자에게 매번 부탁하지 않아도 된다.
- UTM: URL에 붙이는 파라미터. 트래픽이 어떤 채널·캠페인·소재에서 왔는지 GA4에 알려주는 식별자다.
핵심 관계: GTM이 GA4를 심고, UTM이 GA4에게 "이 방문자는 어디서 왔다"고 알려준다. 셋 중 하나라도 빠지면 데이터에 구멍이 생긴다.
UTM 없으면 GA4는 틀린 답을 낸다
GA4는 트래픽 출처를 직접 파악할 수 없다. URL에 UTM이 없으면 https 리퍼러가 사라지는 순간 Direct로 처리한다.
이게 문제가 되는 구체적인 상황:
- 카카오톡·슬랙 링크 공유: 앱 내 브라우저는 리퍼러를 전달하지 않는다. UTM 없으면 전부 Direct.
- 이메일 뉴스레터: 이메일 클라이언트에서 리퍼러 헤더가 전달되지 않는다.
- 유료 광고: 구글 광고는 auto-tagging으로
gclid를 붙이지만, 메타·카카오 광고는 UTM을 직접 붙여야 한다.
국내 스타트업에서 흔히 보는 패턴: 카카오 광고에 월 300만 원을 쓰는데, GA4 리포트에서 카카오 채널 비중이 5% 미만으로 잡힌다. 나머지가 Direct나 Organic에 흡수돼 있다.
UTM 파라미터 실전 구조
UTM은 기본 5개 파라미터로 구성된다. 실무에서 필수는 3개다. (GA4는 utm_id, utm_source_platform 등 추가 확장 파라미터도 지원하지만, 일반 캠페인 추적에는 아래 5개로 충분하다.)
https://example.com/lp
?utm_source=kakao ← 채널 (kakao, instagram, newsletter)
&utm_medium=cpc ← 매체 유형 (cpc, email, social)
&utm_campaign=spring2026 ← 캠페인명
&utm_content=banner_v2 ← 소재 구분 (선택)
&utm_term=그로스마케팅 ← 검색어 (선택, 검색광고용)
명명 규칙이 없으면 GA4 리포트가 파편화된다. Kakao, kakao, KAKAO는 GA4에서 세 개의 다른 소스로 분류된다. 팀 내 UTM 네이밍 컨벤션 문서를 스프레드시트 한 장으로라도 만들어두는 것이 필수다.
GTM으로 GA4 태그 배포하는 흐름
GTM을 쓰면 개발 배포 없이 GA4 설정을 관리할 수 있다.
- GTM 컨테이너 생성 → 스니펫을
<head>에 삽입 (이것만 개발팀에 요청) - Google 태그 추가 (구버전 GTM에서는 'GA4 구성 태그'로 표시됨) → 측정 ID(
G-XXXXXXXX) 입력 - 트리거 설정 →
All Pages로 모든 페이지에서 발동 - 미리보기 모드로 검증 → GTM 내 Preview에서 태그가 발동되는지 확인
- 게시(Publish) → 라이브 반영
GTM에서 GA4 태그가 올바르게 붙은 뒤, UTM 파라미터가 있는 URL로 랜딩하면 GA4 Acquisition 리포트에서 해당 소스·캠페인이 잡힌다.
자주 하는 실수
① UTM을 GA4 내부 링크에도 붙이는 경우
사이트 내부 링크(/blog → /pricing)에 UTM을 붙이면 세션이 강제 초기화되어 원래 출처 데이터가 덮어씌워진다. UTM은 외부 → 내부 유입 링크에만.
② utm_medium을 채널명으로 쓰는 경우
utm_medium=kakao처럼 쓰면 GA4의 채널 그룹핑이 깨진다. cpc, social, email 등 매체 유형을 써야 GA4가 Default Channel Grouping을 올바르게 분류한다.
③ GTM 미리보기 없이 바로 게시 태그가 중복 발동되거나 발동되지 않는 경우가 많다. 게시 전 반드시 Preview 모드로 실제 페이지에서 확인.
실전 체크리스트
- 모든 외부 유입 URL에 utm_source, utm_medium, utm_campaign 3개 필수 부착
- UTM 네이밍 컨벤션 스프레드시트 팀 공유 (소문자·언더스코어 통일)
- GA4 → Acquisition → Traffic Acquisition에서 'Direct' 비중 20% 초과 시 UTM 누락 채널 점검
- GTM Preview 모드에서 GA4 태그 발동 확인 후 게시
- 카카오·메타 광고 URL에 UTM 파라미터 삽입 여부 캠페인 생성 시 체크
Wrap-up
GA4는 데이터를 모으고, GTM은 태그를 심고, UTM은 데이터에 맥락을 준다. UTM이 없으면 나머지 두 도구가 만들어내는 리포트는 신뢰할 수 없다. 세 도구를 연결하는 구조를 먼저 잡고, 그 다음에 분석을 시작해야 한다.
실제 마케팅 실무 경험을 기반으로 작성했습니다.
이 주제와 관련해 SEO 또는 마케팅 자동화 프로젝트를 진행 중이시라면, 아래 버튼을 통해 문의를 남겨주세요. 검토 후 이메일로 답변드립니다.
이 글이 도움됐다면 공유해주세요
블로그 추천
Claude Code vs Cursor 실전 비교
Claude Code와 Cursor를 직접 써보고 비교한 실전 리뷰. 1인 창업자 관점에서 어떤 AI 코딩 도구가 더 나은지 정리했다.
분석 툴 통합 전략 — 전환율 2.3배 만든 법
Amplitude-Statsig 인수 사례로 본 분석 툴 통합 전략. 마테크 스택을 줄여 전환율 2.3배를 만든 실전 과정과 재현법을 정리했다.
AI 도입 속도, 나는 완전히 틀렸다
AI 도입 속도가 빠를수록 성장한다고 믿었다가 오히려 역효과를 겪었다. 1인 창업자가 직접 데이터로 확인한 실수와 교정 방법을 공유한다.