GA4 수익 데이터 누락 체크리스트: 구매 이벤트 설정했는데, 총수익이 0원이라면?

GA4 수익 데이터 누락(GA4 수익 값이 0으로 표시) 때문에 밤새 “왜 총수익이 안 잡히지?”를 검색해본 적 있으신가요?
연's avatar
Dec 29, 2025
GA4 수익 데이터 누락 체크리스트: 구매 이벤트 설정했는데, 총수익이 0원이라면?

GA4 수익 데이터 누락(GA4 수익 값이 0으로 표시) 때문에 밤새 “왜 총수익이 안 잡히지?”를 검색해본 적 있으신가요? 구매 이벤트는 발생하는데 보고서에서 총수익/구매수익/LTV가 전부 0으로 뜨면, 분석 자체가 멈춰버립니다.

이 상황은 생각보다 흔해요. 그리고 대부분은 “구매 이벤트가 안 들어온다”가 아니라, 구매 이벤트는 들어오는데 ‘수익 계산에 필요한 매개변수(parameter)가 빠지거나 형식이 틀린’ 케이스에서 발생합니다.

그래서 오늘은 감으로 때려 맞추는 대신, GA4 수익 추적이 동작하는 구조를 기준으로 원인을 빠르게 좁히는 체크리스트를 정리해볼게요.


🔎 무엇이 바뀌었나요?

GA4에서 수익(Revenue)은 “보고서에서 자동으로 계산되는 숫자”처럼 보이지만, 실제로는 구매 이벤트(purchase)에 실린 매개변수 값을 토대로 계산됩니다.

특히 아래 두 레벨이 동시에 맞아야 해요.

  • 이벤트 수준 수익(총수익/구매수익/LTV): value + currency로 계산

  • 상품 수준 수익(상품 수익/총 상품 수익): price + currency로 계산

즉, 구매 이벤트는 찍히는데 currency, transaction_id , value, items 같은 필수 값이 누락/오류면, GA4는 수익을 “계산할 재료가 없다”라고 판단하고 0으로 표시하는 거죠.


❓ 마케터가 알아야 하는 이유

첫째, ROAS가 무너집니다. 광고비는 나가는데 GA4 수익이 0이면, 캠페인 성과가 전부 저평가돼요. 최적화(예산 재배분/소재 판단)도 엉뚱한 방향으로 갈 확률이 커집니다.

둘째, 상품별 의사결정이 막힙니다. “어떤 상품이 돈을 벌었는지”가 안 보이면, 베스트셀러/손절 상품/묶음 구성/할인 전략 같은 커머스 액션이 감이 아니라 운이 됩니다.

셋째, LTV 기반 전략이 불가능해집니다. 재구매/리텐션/CRM 시나리오는 결국 “누가 얼마를 썼는지”에서 출발하는데, 수익 데이터가 비면 고객가치 분석 자체가 성립하지 않아요.

마지막으로, 이 문제는 대개 설정 1~2군데만 바로잡으면 끝납니다. 그래서 더더욱 “정확한 체크리스트”가 필요해요.


🔭 요니의 인사이트

  • 수익 누락의 80%는 ‘구매 이벤트는 있는데 매개변수가 불완전’한 케이스에서 시작됩니다.

  • 이벤트 수준(value/currency/transaction_id/items/price)과 상품 수준(item_id/items_name)의 매개변수가 올바르게 설정되어 있는지 확인합니다.

  • valueprice는 “숫자”, currency“3자리 ISO 4217 코드(예: KRW, USD)” 형식이 기본입니다.

  • GTM을 쓰면 웹사이트 데이터 영역(dataLayer 등) + GTM 태그 두 가지 모두에서 구매 이벤트가 올바르게 설정되어 있는지 확인합니다.


✔️ 마케터 실행 전략

1) GA4 DebugView로 “수익 매개변수” 실시간 확인

왜 필요해요?

보고서 반영을 기다리면 원인 파악이 늦어져요. DebugView는 지금 들어오는 이벤트에 어떤 매개변수가 실려 있는지 바로 보여줍니다.

실행 방법

  • DebugView에서 purchase 이벤트를 열고, 아래 값이 실제로 들어오는지 확인

    • 이벤트 수준: transaction_id, value, currency, items , price

    • 상품 수준: item_id 또는 item_name

💡 TIP: 구매 이벤트는 보이는데 items가 비어 있거나, value가 문자열로 들어오면 수익이 0으로 뜰 가능성이 큽니다.


2) 이벤트 수준 수익이 0이면: 필수 이벤트 매개변수부터 고정

왜 필요해요?

총수익/구매수익/LTV는 이벤트 수준 값이 틀어지면 통째로 누락됩니다.

실행 방법(필수 체크)

  • currency: ISO 4217 3자리 코드(예: KRW, USD)로 전달, 소문자로 작성

  • transaction_id: 주문번호/결제ID처럼 중복되지 않는 값

  • value: 숫자만 전달(통화기호 $, ₩, 콤마 제거)

  • items: 상품 배열이 실제로 포함되는지 확인

✅ 체크포인트: value"100.00"처럼 따옴표가 붙어 문자열로 들어오거나, "₩100,000"처럼 기호/콤마가 섞이면 GA4가 정상 계산을 못 하는 경우가 많아요.


3) 상품 수준 수익이 0이면: items 안의 price 구조를 점검

왜 필요해요?

상품 수익/총 상품 수익은 “items 배열”이 핵심입니다. 여기서 자주 터지는 게 price 누락/형식 오류예요.

실행 방법

  • currency: ISO 4217 3자리 코드(예: KRW, USD)로 전달, 소문자로 작성

  • transaction_id: 주문번호/결제ID처럼 중복되지 않는 값

  • items 안에 최소 1개 이상 상품이 담기는지 확인

  • price: 숫자만 전달(통화기호 $, ₩, 콤마 제거)

  • 식별자: item_id 또는 item_name 중 최소 1개는 필수

💡 TIP: 이벤트 수준은 value, 상품 수준은 items[].price가 중심이에요. “value 넣었는데 왜 상품 수익이 0이지?”는 흔한 함정입니다.


4) GTM 사용자는 “웹 데이터 영역 + GTM 태그”를 동시에 점검

왜 필요해요?

웹사이트(dataLayer 등)에는 값이 있는데 GTM에서 다른 변수를 보내거나, 반대로 GTM은 맞는데 원천 데이터가 비어 있는 경우가 많습니다.

실행 방법

  • 웹사이트 데이터 영역에서 purchase 관련 값이 실제로 생성되는지 확인

  • GTM의 GA4 이벤트 태그에서

    • 매개변수명이 정확한지(value/currency/transaction_id/items/price)

    • 어떤 변수를 매핑해서 보내고 있는지 재점검

✅ 체크포인트: “철자 1글자”가 전체 수익을 0으로 만들 수 있어요. 매개변수명은 공식 스펙 그대로 쓰는 게 안전합니다.


GA4 수익은 ‘구매 이벤트’가 아니라 ‘구매 이벤트 안의 매개변수’로 계산됩니다. 한 번만 제대로 잡아두면, 이후 마케팅 의사결정 속도가 달라집니다.


@newnormal_marketing 팔로우하고, 마케터에게 필요한 정보를 얻어가세요!

Share article

오뉴월