2026년 9월 13일·2분 읽기
purchase에 value·currency가 없어 ROAS가 안 나올 때
구매 건수는 찍히는데 수익이 0원이고 광고 보고서의 ROAS는 비어 있습니다. GA4가 매출을 계산하지 않는 진짜 이유와, DebugView로 5분 안에 확인하고 고치는 방법.
증상
광고 대시보드의 ROAS 칸이 비어 있습니다. GA4 보고서에는 구매 건수가 멀쩡하게 찍히는데, 같은 줄의 수익은 0원입니다. "이번 달 캠페인이 얼마를 벌었냐"는 질문에 아무도 답하지 못합니다.
이 상태가 오래가는 이유는 단순합니다. GA4가 이것을 고장으로 취급하지 않기 때문입니다. 경고도, 빨간 배지도 없습니다. 숫자가 0일 뿐입니다.
원인
GA4가 purchase를 매출로 해석하려면 두 개의 매개변수가 함께 와야 합니다. value(금액)와 currency(통화 코드)입니다. 둘 중 하나라도 빠지면 GA4는 이벤트 수만 세고 수익은 계산하지 않습니다.
실제 진단에서 자주 나오는 형태는 세 가지입니다.
| 보낸 값 | GA4의 해석 |
|---|---|
value 없음, currency: "KRW" |
구매 1건, 수익 0 |
value: "39,000원" |
숫자가 아니므로 수익 0 |
value: 39000, currency: "krw" |
통화 코드 미인식, 수익 0 |
세 번째가 특히 억울한 경우입니다. 금액은 제대로 실려 있는데 통화 코드를 소문자로 보냈거나 ₩ 같은 기호를 넣어서 전부 버려집니다. GA4가 받는 것은 ISO 4217 대문자 세 글자 코드뿐입니다.
GA4에서 확인
1) 전부 빠졌는지 본다. 보고서 > 수익 창출 > 전자상거래 구매를 엽니다. 구매 수는 있는데 총수익이 0이면 확정입니다.
2) 일부만 빠졌는지 본다. 더 흔한 쪽은 이쪽입니다. 결제 수단 한 가지, 혹은 모바일 앱 경로에서만 금액이 안 실리는 식입니다. 구매 건수와 수익이 잡힌 건수를 비교하세요. 누락 비율이 20%를 넘으면 지표로 쓸 수 없는 상태로 봅니다.
3) 원인을 눈으로 본다. 관리자 > DebugView를 켜고 테스트 결제를 한 번 한 뒤 purchase 이벤트를 클릭하면, 실제로 전송된 매개변수가 오른쪽 패널에 그대로 나옵니다. value가 없는지, 따옴표가 붙어 있는지가 그 자리에서 보입니다.
수정
GTM을 쓴다면 GA4 이벤트 태그의 이벤트 매개변수에 value와 currency를 추가하고 데이터 영역 변수로 연결합니다. 직접 gtag로 보낸다면 이런 모양이어야 합니다.
gtag("event", "purchase", {
transaction_id: "T-12345",
value: 39000, // 숫자. 쉼표도 '원'도 붙이지 않는다
currency: "KRW", // ISO 4217 대문자 세 글자
items: [{ item_id: "SKU-1", item_name: "베이직 티셔츠", price: 39000, quantity: 1 }],
});
value에는 배송비·세금을 뺀 실제 결제 금액을 넣는 것이 일반적입니다. 사이트가 단일 통화만 쓴다면 currency는 상수로 고정해도 됩니다.
금액이 맞는데도 상품별 매출이 안 보인다면 items 배열을 확인하세요. item_id나 item_name이 비어 있으면 총매출은 나와도 어떤 상품이 팔렸는지는 끝까지 알 수 없습니다.
고친 뒤에는 DebugView로 다시 결제해 보고, 하루 뒤 전자상거래 구매 보고서에 수익이 찍히는지 확인하세요. GA4는 지난 데이터를 다시 계산해 주지 않으므로, 비어 있던 기간의 ROAS는 복구되지 않습니다.
한 줄 요약
purchase는 이벤트를 세는 게 목적이 아니라 금액을 나르는 게 목적입니다. value는 숫자로, currency는 대문자 ISO 코드로, 반드시 같이 — 이 두 개가 맞아야 그때부터 ROAS가 계산됩니다.