huny.log

기술 포스트 · 퍼포먼스 마케팅

ROAS 보고서가 늘 거짓말하는 이유 — last-click·view-through·incremental 3대장

Meta 광고 매니저는 ROAS 5를 보여주는데 BI 대시보드는 ROAS 1.4입니다. 어느 쪽이 진짜냐고요? 사실 둘 다 다른 질문에 답하고 있어요. 마케터가 ROAS 보고서를 읽는 법.

“Meta는 ROAS 5라는데 우리 BI 대시보드는 ROAS 1.4야. 누가 거짓말이지?” — 매주 한 번쯤은 듣는 회의실 단골 멘트입니다. 사실 둘 다 거짓말은 아니에요. 그냥 다른 질문에 답하고 있을 뿐이죠. 이 글은 ROAS의 세 가지 얼굴 — last-click, view-through, incremental — 을 정리하고, 마케터가 보고서를 읽을 때 머릿속에서 어떤 변환을 해야 하는지 다룹니다.

last-click ROAS와 incremental ROAS의 차이를 막대그래프로 비교한 인포그래픽
플랫폼 대시보드 ROAS 5는 'last-click' 기준일 가능성이 높다. 그 광고가 진짜로 더 만들어낸 매출(=incremental)은 흔히 그 절반 이하다.

ROAS 한 단어, 세 가지 얼굴

ROAS = Return on Ad Spend = 광고비당 매출. 공식은 단순한데, 분자에 어떤 매출을 넣느냐에 따라 의미가 천지차이입니다.

종류분자(매출) 정의답하는 질문
Last-click ROAS그 광고를 마지막으로 클릭한 후 산 매출”이 광고를 클릭해서 산 사람은 얼마치 샀나?”
View-through ROAS클릭 안 했어도 노출 후 N일 안에 산 매출”이 광고를 보고 N일 안에 산 사람은 얼마치 샀나?”
Incremental ROAS광고가 없었다면 안 샀을 매출만”이 광고가 진짜로 만들어낸 매출은 얼마인가?”

세 번째가 우리가 정말 알고 싶은 답이에요. 그런데 플랫폼 대시보드(Meta, Google Ads)는 거의 다 1번 또는 1+2번을 보여줍니다. 이 차이를 모르면 ROAS 5라는 숫자에 그냥 속아요.

Last-click ROAS의 함정 — “이미 살 사람”의 클릭

검색광고에서 가장 흔한 함정. 이미 우리 브랜드를 알고 있는 사람이 검색 → 광고 클릭 → 구매하면 last-click ROAS는 매우 높게 잡힙니다. 그런데 그 사람이 광고를 안 클릭했어도 자연검색 결과를 클릭해서 샀을 거예요. 그 매출은 incremental이 아닙니다.

브랜드 키워드(“나이키 운동화”)의 검색광고가 ROAS 20이라고 보고되면, 진짜 incremental은 그 중 30~50% 정도가 보통입니다. 나머지는 자연검색이 가져갔을 매출이에요.

# 간단한 last-click vs incremental 비교 추정
import numpy as np
# Meta 캠페인 1주
last_click_revenue = 50_000_000 # last-click 매출 5천만
view_through_revenue = 18_000_000 # view-through (1일 윈도우)
ad_spend = 10_000_000 # 광고비 1천만
# 만약 holdout 실험 결과 incremental ratio가 0.45
incrementality_ratio = 0.45 # ← lift study에서 측정
last_click_roas = last_click_revenue / ad_spend # 5.0
view_through_roas = (last_click_revenue + view_through_revenue) / ad_spend # 6.8
incremental_roas = (last_click_revenue * incrementality_ratio) / ad_spend # 2.25
print(f"Last-click ROAS: {last_click_roas:.2f}")
print(f"View-through ROAS: {view_through_roas:.2f}")
print(f"Incremental ROAS: {incremental_roas:.2f}")

같은 캠페인을 두고 “5.0이다 / 6.8이다 / 2.25다” 세 답이 다 나오는 게 ROAS의 본질이에요.

View-through 함정 — “어차피 봤을 광고”

View-through는 “클릭은 안 했지만 광고를 보고 N일 안에 산 사람”의 매출까지 광고 공으로 잡습니다. 문제는 그 사람이 그 광고를 안 봤어도 샀을 가능성이 매우 높다는 거예요. 페이스북·인스타에 한 번이라도 광고를 띄운 사람이라면 그 1주일 안에 거의 다 view-through에 잡힙니다.

특히 1일 view-through 윈도우는 거의 “어차피 살 사람 = 광고로 잡혔다”는 식으로 해석되기 쉬워요. 클릭(action)이 아니라 노출(passive)이 기준이라, 이 매출은 크게 부풀어 보입니다.

Incremental ROAS — 진짜 효과를 분리하는 3가지 방법

1) Holdout test (랜덤 통제 그룹)

가장 깔끔한 방법. 광고 노출 대상의 5~10%를 무작위로 빼서, 그들에게는 해당 광고를 노출하지 않습니다. 일정 기간 후 두 그룹의 매출 차이가 incremental.

2) Geo-lift (도시 단위 실험)

지난 글에서 다룬 방법. 도시·지역을 treatment / control로 갈라 광고 ON/OFF. TV·OOH 같은 사용자 식별 불가 채널의 incrementality는 사실상 이 방법밖에 없어요.

3) Ghost ads (조용한 카운터팩추얼)

원래는 광고가 노출됐어야 할 자리에, “광고를 본 척만 하고 실제로는 안 보여주는” 그림자 노출을 기록. 그 그룹의 매출 vs 진짜 노출 그룹 매출을 비교. 구현이 어려워서 대형 광고주(Meta, Google 자체 시스템)에서만 주로 사용.

마케터가 ROAS 보고서 읽는 4단계 체크리스트

데이터팀에서 ROAS 8이라는 슬라이드를 가져왔다고 합시다. 마케터가 머릿속에서 돌릴 변환:

Step 1 — 어떤 ROAS인지 확인

last-click? view-through? lift-adjusted? 이걸 안 쓰여 있으면 거의 99% last-click 또는 last-click + view-through입니다.

Step 2 — 채널 특성 보정

채널last-click → incremental 평균 보정
브랜드 검색× 0.3 ~ 0.5
일반 검색× 0.6 ~ 0.8
리타겟팅× 0.3 ~ 0.5
신규 유저 prospecting× 0.7 ~ 1.0
유튜브·디스플레이× 0.4 ~ 0.7 (view-through 비중 큼)

이 표는 업계 평균치예요. 본인 브랜드 incrementality를 lift study로 한 번 측정해두면, 다음부턴 그 보정 비율을 적용해 “플랫폼 ROAS 8 → 진짜 ~3.5” 식으로 빠르게 변환 가능.

Step 3 — view-through 비중 확인

전체 ROAS에서 view-through 매출이 30% 이상이면 빨간불. 1일 view-through 비중까지 확인.

Step 4 — Lift study 결과와 대조

지난 분기에 lift study로 측정한 incrementality 비율이 있으면, 그걸 곱해서 진짜 ROAS 추정.

의사결정 시나리오 — “이 채널 끌까, 더 부을까”

CMO가 “Meta 광고비 +30%로 늘릴까?”라고 물었을 때, 마케터의 답은 incremental ROAS와 saturation 곡선이 같이 있어야 합리적이에요. 다음 두 시나리오를 비교해보면 차이가 분명해집니다.

시나리오 A — 잘못된 의사결정

  • 플랫폼 대시보드: Meta ROAS 5.0
  • “광고비 +30% 하면 매출도 +30%일 거야”
  • 광고비 3,000만 → 3,900만, 추가 매출 기대 1,500만
  • 실제 incremental ratio 0.4를 모르고 결정
  • 진짜 incremental ROAS는 2.0
  • 추가 incremental 매출 = 900만 × 1 (saturation 무시) ≈ 600만
  • 광고비 +900만 vs 진짜 매출 +600만 = 손실

시나리오 B — 옳은 의사결정

  • 같은 플랫폼 ROAS 5.0
  • 자체 lift study로 incremental ratio 0.4 확인 → 진짜 ROAS 2.0
  • saturation 곡선 보니 현재 elbow 근처 — 한계 ROAS는 1.5 이하
  • “Meta는 보류, 그 예산을 신규 채널(틱톡 prospecting)로 — 거기 incrementality는 0.85로 추정”
  • 같은 광고비로 incremental 매출 1.5배 회수

ROAS 한 숫자만 보면 시나리오 A로 가기 쉽고, incrementality × saturation 두 단계 보정을 하면 시나리오 B로 갑니다. 차이가 만드는 게 손실 vs 이익 정도가 아니라, 어느 채널을 키울지의 방향 자체예요.

자주 묻는 질문

Q1. lift study 한 번 하면 그 비율을 영원히 쓸 수 있나?

아니에요. incrementality 비율은 시즌·캠페인 종류·타겟 조정에 따라 ±20~30% 변합니다. 분기에 한 번은 다시 측정하세요. 특히 새 크리에이티브 도입, 신규 타겟 확장, 시즌 변동 시점에는 결과가 의외로 크게 달라져요.

Q2. 신뢰구간이 0을 가로지르는 lift 결과는 어떻게 보고해야 하나?

“통계적으로 0과 구분 안 됨”이라고 명확히 보고. 평균값만 가져가면 다음 분기 의사결정에서 “지난 분기 lift 측정 결과 +6%였다” 같은 인용으로 흘러가 버립니다. 신뢰구간이 0을 포함하면 “이 캠페인의 incremental 효과는 측정 한계 아래”라고 적어두세요.

Q3. 작은 캠페인은 lift study가 어차피 의미 없다?

맞습니다. lift study는 통계적 검정력 확보가 필요해서 일정 규모(예: 월 광고비 3,000만 원 이상) 캠페인에 적합. 작은 캠페인은 비슷한 카테고리 캠페인의 lift 비율을 “빌려와서” 보정하는 게 현실적이에요.

마치며

ROAS는 마케터의 모국어 같은 단어이지만, 그 안에 세 얼굴이 들어 있어요. 어떤 ROAS인지를 묻는 습관을 들이면 보고서를 읽는 정확도가 다른 차원으로 올라갑니다. 그리고 한 분기에 한 번은 자체 lift study를 해서 본인 브랜드의 incrementality 비율을 직접 측정하세요. 이 한 가지 숫자가 다음 분기 모든 의사결정의 기준이 됩니다.

다음 글에서는 CAC와 LTV를 베이지안으로 추정해 신규 채널의 손익분기를 가늠하는 법을 다뤄볼게요.

참고

퍼포먼스 마케팅 카테고리의 다른 글

전체 보기 →