GA4는 어떤 광고로 유저가 들어왔는지 알고, Amplitude는 그 유저가 제품 안에서 무엇을 했는지 압니다. 그런데 두 플랫폼이 '같은 사람'을 인식하지 못하면, 진짜 고객 생애 가치(LTV) 분석은 불가능합니다. 이 글은 GA4와 Amplitude 사이의 사용자 ID 연동 아키텍처를 단계별로 설명하며, 2026년 Google Signals 정책 변화와 서버 사이드 태깅(sGTM) 환경까지 반영한 실무 설계 기준을 제시합니다.
마케팅 팀은 GA4에서 특정 캠페인의 회원가입 전환율이 높다고 보고합니다. 하지만 그 유저들이 가입 후 2주 안에 대부분 이탈한다는 사실은 Amplitude 안에만 있습니다. 두 데이터가 연결되지 않으면, 마케팅 팀은 계속 '이탈 유저를 잘 데려오는 광고'에 예산을 쏟게 됩니다.
이것이 데이터 사일로(Data Silo) 문제의 핵심입니다. 단순히 불편한 게 아니라, 잘못된 의사결정을 반복하게 만드는 구조적 함정입니다.
핵심 질문: "이 광고 채널이 LTV 높은 고객을 데려오고 있는가?" — 이 질문에 답하려면 GA4와 Amplitude가 같은 사용자 ID를 공유해야 합니다.
GA4는 기본적으로 브라우저 쿠키에서 생성되는 Client ID(BigQuery 스키마에서는 user_pseudo_id)로 방문자를 구분합니다. 로그인한 사용자에게는 별도로 User ID(user_id)를 부여할 수 있습니다.
비유하자면, Client ID는 '브라우저에 붙인 임시 명찰'이고, User ID는 '회원 번호가 적힌 사원증'입니다. 같은 사람이 크롬과 사파리를 번갈아 쓰면 Client ID는 두 개가 되지만, User ID는 하나입니다.
Amplitude는 한 사람을 세 가지 식별자로 추적합니다.
Device ID: 기기 고유 식별자 (로그인 전 상태 포함)Amplitude ID: Amplitude가 내부적으로 생성하는 자체 IDUser ID: 브랜드가 정의한 회원 고유 ID로그인 전에는 Device ID로 행동을 기록하다가, 로그인 시점에 User ID가 연결되면 이전 익명 행동까지 동일 사용자로 병합합니다. 이 병합 로직을 Identity Merge라고 부릅니다.
두 플랫폼이 같은 사람을 인식하려면, 로그인 완료 시점에 동일한 문자열로 된 비식별 고유 ID를 GA4와 Amplitude 양쪽에 동시에 전달해야 합니다. 이 ID가 '통역사' 역할을 하며 두 데이터베이스를 이어줍니다.
구글은 프라이버시 규제 대응을 이유로 Google Signals를 GA4 보고 식별 방식에서 제외했습니다. 이전까지는 구글 계정 로그인 상태를 활용해 크로스 디바이스 추적이 어느 정도 자동으로 됐지만, 이제는 그 기능이 크게 약화됐습니다.
결론적으로 기업이 직접 수집하고 정의하는 퍼스트 파티 User ID 없이는 정확한 사용자 식별이 불가능한 환경이 됐습니다.
Safari ITP(지능형 추적 방지)와 광고 차단 프로그램으로 인해 브라우저 단 스크립트의 데이터 유실률이 높아졌습니다. 2026년 현재, 서버 사이드 GTM(sGTM) 환경에서 Amplitude Analytics 서버 태그를 매핑하는 방식이 업계 표준으로 자리잡았습니다. 브라우저가 직접 Amplitude 서버를 호출하는 대신, sGTM 서버가 중간에서 데이터를 안전하게 라우팅합니다.
가장 먼저 해야 할 일은 '어떤 ID를 공통 키로 쓸 것인가'를 정의하는 것입니다.
user_id 필드는 최대 256자 이하여야 정상 수집됩니다. UUID 형태(36자)라면 문제없습니다.유저가 로그인하는 순간을 기준으로 다음 흐름을 구성합니다.
dataLayer.push({ user_id: '비식별_고유ID' })를 실행합니다.user_id 필드에 이 값을 매핑합니다.User ID와 이벤트를 서버-투-서버 방식으로 Amplitude에 전달합니다.이 구조에서는 브라우저가 Amplitude SDK를 직접 호출하지 않으므로 광고 차단기의 영향을 받지 않습니다.
GA4의 마케팅 유입 정보(UTM 소스, 매체, 캠페인)를 Amplitude 사용자 프로필에 붙이는 단계입니다.
User ID를 가진 사용자에게 GA4의 획득 채널 정보가 자동으로 매핑됩니다.주의: GA4 스탠다드(무료) 속성의 BigQuery 일일 내보내기는 최대 100만 건 제한이 있습니다. 이를 초과하는 대규모 서비스는 GA4 360 도입 또는 커스텀 파이프라인 설계가 필요합니다.
연동의 진짜 가치는 여기서 나옵니다.
이 루프가 완성되면 '제품 행동 데이터 → 광고 최적화 → 고품질 유저 유입 → 다시 행동 데이터 축적'의 선순환이 만들어집니다.
설계 단계
태깅 단계
dataLayer에 user_id가 푸시되는가?user_id 필드가 올바르게 매핑됐는가?user_id를 수신하는가?검증 단계
user_id가 실시간으로 보이는가?gtag('set', {'user_id': null})와 setUserId(null)이 실행되는가?티빙(TVING) 은 GA4 중심의 유입 분석 한계를 넘기 위해 Amplitude를 도입하고 연동했습니다. 단순 유입 지표 대신 사용자의 콘텐츠 소비 패턴과 알림 반응 데이터를 결합해 리텐션 루프를 정교화했습니다. 이는 '어떤 채널로 들어온 유저가 어떤 콘텐츠를 보고 남는가'라는 LTV 관점의 질문에 답하기 위한 구조입니다.
와이즐리컴퍼니는 Amplitude의 User ID를 기준점으로 삼아 자사 DB의 주문 상태, 제품 재고 테이블과 조인(Join)했습니다. 마케팅 획득 데이터와 오프라인 구매 데이터까지 연결한 옴니채널 분석 인프라를 구축한 사례입니다.
두 사례 모두 공통된 비식별 User ID를 설계 초기부터 정의한 것이 성공의 출발점이었습니다.
Q1. user_id를 GA4 맞춤 측정기준(Custom Dimension)으로 등록해도 되나요?
절대 안 됩니다. 수만 명 이상의 고유 ID를 맞춤 측정기준으로 등록하면 카디널리티 한도를 초과해 GA4 리포트의 다른 중요한 행들이 (other)로 뭉개집니다. user_id는 반드시 GA4가 제공하는 기본 User-ID 기능으로만 설정해야 합니다.
Q2. 로그인하지 않은 익명 방문자는 어떻게 처리하나요?
비로그인 상태에서는 GA4의 Client ID와 Amplitude의 Device ID를 교환하는 방식으로 익명 행동을 기록합니다. 로그인 완료 시점에 User ID가 연결되면, Amplitude의 Identity Merge 로직이 이전 익명 행동을 동일 사용자로 자동 병합합니다.
Q3. sGTM 없이 Amplitude SDK만으로 연동할 수 없나요?
기술적으로는 가능하지만, 2026년 환경에서는 권장하지 않습니다. Safari ITP와 광고 차단기로 인해 브라우저 단 SDK 호출의 데이터 유실률이 높아졌습니다. sGTM을 통한 서버-투-서버 방식이 데이터 무결성 측면에서 훨씬 안정적입니다.
Q4. BigQuery 일일 100만 건 제한에 걸리면 어떻게 되나요?
초과분은 내보내기에서 누락됩니다. 일 방문자가 수십만 명 이상인 서비스라면 GA4 360 도입 또는 서버 사이드에서 직접 이벤트를 BigQuery로 스트리밍하는 커스텀 파이프라인 설계를 병행해야 합니다.
Q5. 공용 PC 환경에서 세션이 꼬이는 문제를 어떻게 방지하나요?
로그아웃 완료 시점에 반드시 두 가지를 동시에 실행해야 합니다. GA4에서는 gtag('set', {'user_id': null}), Amplitude에서는 setUserId(null)을 호출해 식별자를 즉시 초기화합니다. 이 처리가 빠지면 이전 사용자의 행동 데이터가 다음 로그인 사용자의 세션에 오염됩니다.
Device ID)와 로그인 사용자(User ID)를 동일 인물로 병합하는 로직. 가입 전 행동 데이터까지 LTV 분석에 포함시킬 수 있습니다.GA4와 Amplitude의 데이터 단절 문제는 기술적 불편함이 아니라 광고 예산 낭비와 잘못된 성장 전략의 근본 원인입니다. 핵심 요점을 정리하면 다음과 같습니다.
User ID 설계가 필수가 됐습니다.이 아키텍처를 제대로 구축하면 "어떤 광고가 진짜 좋은 고객을 데려오는가"라는 질문에 처음으로 데이터 기반 답을 낼 수 있게 됩니다.
GA4와 Amplitude 연동 아키텍처 설계, 어디서부터 시작해야 할지 막막하신가요?
에이달(ADALL)은 GA4 설정부터 sGTM 구성, Amplitude 연동, BigQuery 파이프라인 설계까지 데이터 기반 마케팅 인프라 전반을 함께 검토합니다. 현재 데이터 구조의 문제점이 무엇인지, 어떤 순서로 개선해야 하는지 구체적인 방향을 잡고 싶다면 무료 컨설팅을 통해 먼저 이야기 나눠보세요.
📞 02-2664-8631 | ✉️ master@adall.co.kr
무료 컨설팅 받아보고 싶다면?
무료 컨설팅 신청하기