전환율, 제대로 계산하는 네 가지 단계

– 실무 전환율 분석, 어디서부터 꼬이는지 아시나요?

by 도란기록

이번 주 회의에서 누군가 말했습니다. “이번에 한 프로모션 있잖아, 전환율 너무 낮지 않아?.”

순간 고개를 갸웃하게 됐습니다. 체감상 성과가 나쁘지 않았는데, 왜 그런 걸까?

그 한마디가 트리거가 되어 익숙하지만 왠지 늘 애매한 그 지표. ‘전환율’을 정리해보고자 합니다.


전환율이라는 단어는 자주 쓰이지만, 막상 실무에서 정확하게 계산하고 해석하는 일은 생각보다 쉽지 않습니다.

그 이유는 간단합니다. 전환율은 공식보다 맥락이 더 중요하기 때문입니다.

그래서 이번 글에서는, 실무에서 전환율을 정확히 계산하기 위한 4단계 분석 절차를 함께 정리해 보려 합니다.



1단계. 분석을 시작하기 전에 확인해야 할 것


전환율을 계산하기 전, 반드시 아래 세 가지를 먼저 정리해야 합니다.

- 전환이란 무엇입니까? (예: 결제, 가입, 다운로드, 무료 → 유료 전환 등)

- 유입은 누구를 의미합니까? (전체 방문자, 클릭 사용자, 특정 이벤트 참여자 등)

- 분석 기준 시점은 어떻게 됩니까? (유입일 기준? 전환일 기준?)


이 질문이 정리되지 않으면,
전환율 수치는 의미를 잃게 됩니다.
분모와 분자의 정의부터 정확히 해야, 지표로서의 기능이 존재합니다.


2단계. 데이터 추출


실제 데이터를 통해 살펴보겠습니다.

만약에 전환 = 구매자수 / 방문자수라고 정의하고 우리가 실행한 캠페인 별로 전환율을 구한다고 하면 전환에 대한 쿼리는 아래와 같습니다

(데이터 업로드 없이 쿼리로 설명하기 위해서 직관적인 컬럼명을 사용했습니다)


[쿼리]

SELECT campaign_id

, COUNT(DISTINCT user_id) AS visitors

, COUNT(DISTINCT CASE WHEN action = 'purchase' THEN user_id END) AS conversions

, COUNT(DISTINCT CASE WHEN action = 'purchase' THEN user_id END) * 1.0 /

COUNT(DISTINCT user_id) AS conversion_rate

FROM logs

WHERE event_date BETWEEN '2025-04-25' AND '2025-04-27'

GROUP BY campaign_id;


위 쿼리는 유입과 전환이 동일 시점에 발생할때는 적합합니다, 예를 들어 오늘 4월 25일에 유입된 고객이 당일, 혹은 27일 안에 구매한 경우에는 잘 동작합니다.


그런데 서비스가 구독형 서비스이고 무료 혜택을 받은 고객들의 유료 전환은 조금 다릅니다(생산성 툴이나 ott와 같은..). 예를 들어 4월 1일 무료 가입 , 4월 30일 유료 결제인 경우에는, 위 로그 기반 전환율 쿼리로는 흐름을 제대로 파악할 수 없습니다


이런 경우에는 무료 가입자 코호트를 기준으로 묶고, 전환을 가입일별로 트래킹 하는 방법이 좋습니다.


SELECT free_signup_date

, COUNT(DISTINCT user_id) AS free_users

, COUNT(DISTINCT CASE WHEN paid_date IS NOT NULL THEN user_id END) AS paid_users

, COUNT(DISTINCT CASE WHEN paid_date IS NOT NULL THEN user_id END) * 1.0 /

COUNT(DISTINCT user_id) AS paid_conversion_rate

FROM

(

SELECT user_id

, MIN(CASE WHEN action = 'free_signup' THEN event_date END) AS free_signup_date

, MIN(CASE WHEN action = 'purchase' THEN event_date END) AS paid_date

FROM logs

GROUP BY user_id

)

GROUP BY free_signup_date;


위 쿼리는 언제 무료 가입(free_signup_date)이 일어났는지를 기준으로 유료 구매(action = 'purchase')가 발생한 날을 전환일로 정의하여 무료 가입일 기준으로 트래킹하는 방식입니다.


3단계. 전환율이 꼬이는 주요 원인들


사실 전환에 대한 정의는 업종마다, 회사마다 조금씩 다를 수 있습니다(30일 후에 유료 상태이면 유료 전환으로 치는 경우도 있고, 실 과금 발생 이후만 전환으로 집계하는 경우도 있고, 단순 방문/구매만을 전환으로 정의하는 경우도 있겠습니다)

그렇기에 전환에 대한 명확한 정의는 더욱 중요하며, 그렇지 않을 때 꼬이는 경우가 종종 있습니다.


전환이 꼬이는 대표적인 이유는 아래 세 가지가 있습니다


첫째, 전환의 정의가 불명확할때 → 어떤 상황에서는 단순한 결제 완료를 전환으로 보지만, 무료 체험 등록만 해도 전환으로 집계하기도 합니다. 이렇게 경우에 따라 잘못된 정의를 피하기 위해서는 우리 조직의 기존 분석 건들도 찾아보고 특히 실적들에 대해서 캐치하고 있는 자세가 중요합니다.


둘째, 유입 시점과 전환 시점이 엇갈릴 때 → 위 예시와 같이 무료 프로모션처럼 시차가 있는 경우, 전환 시점의 기준이 특히 중요해집니다. (4월 말에 유입된 고객이 5월에 결제했는데, 이를 4월 실적으로 넣는다면 잘못된 판단이 나올 수 있습니다)


셋째, 중복 유입이 제거되지 않았을 때 → 동일 사용자가 여러 번 방문한 경우, 단순 로그 수를 기준으로 유입을 집계하면 분모가 부풀려져 전환율이 낮게 나올 수 있습니다.

위에 예시와 같이 단일 상품에 대한 유니크 카운팅의 경우 실수할 확률이 적으나, 한 고객이 여러개의 상품을 구독/구매하고 또 그 상품마다 프로모션이 제각각인 경우에는, 중복 유입에 대한 부분을 더 신경써서 고려하여 쿼리를 작성하는 것이 좋습니다


4단계. 해석이 숫자를 완성합니다


전환율은 수치지만, 그 수치를 해석하는 것은 결국 사람의 몫입니다.
예를 들어, 단순히 전환율이 낮다고 해서 성과가 나쁘다고 단정지을 수는 없습니다. 오히려 고가의 프리미엄 상품의 경우 구매 전 고민이 많으니 유입 대비 전환율은 낮으나, 고객 생애가치(LTV)측면에서는 클 수도 있고요.

따라서 나온 전환율 결과를 업종 (쇼핑몰 같은 즉시 구매가 가능한 업이라면 좀 더 무게를 두고, 구독형 SaaS나 교육 플랫폼과 같은 고관여 + 장기검토 서비스는 LTV , 트렌드 비교와 같이 접근)에 따라 해석하고, 숨은 흐름을 읽는 것이 더 중요할 때가 많은 것 같습니다.


전환율 하나를 예시로 말해보았는데, 결국 숫자가 말해주는 것은 일종의 '결과' 입니다. 그 결과를 해석하고 기저에 있는 맥락을 읽는 것이, 좋은 분석가이자 숫자가 아닌 이야기를 만들어 내는 사람의 역할이 아닐까요?






keyword
이전 06화각자의 일 같지만, 결국은 같이 하는 일이니까