CSV에서 고객 생애 가치를 계산하는 방법 (단계별 가이드)

거래 CSV에서 고객 평생 가치를 계산하려면 평균 주문 가치, 구매 빈도, 고객 수명을 구해야 합니다. 이 세 가지를 곱한 다음 매출총이익률을 적용하세요. 산식 자체는 간단합니다. 하지만 어떤 고객을 이탈 고객으로 간주할지, 과거를 볼지 미래를 예측할지 등의 판단 기준에 따라 결과의 유용성이 결정됩니다.
두 팀이 동일한 파일에 동일한 공식을 적용하더라도 3배나 차이 나는 두 가지 결과를 얻을 수 있습니다. 둘 다 틀린 것은 아닙니다. 자신도 모르게 서로 다른 질문에 답했을 뿐입니다.
이 가이드에서는 필요한 입력 데이터, 3단계로 진행되는 수동 계산 방법, 그리고 스프레드시트 방식이 한계에 부딪히는 지점을 다룹니다.
시작하기 전에 필요한 것
거래 수준의 내보내기 데이터가 필요합니다. 즉, 고객 식별자, 주문 날짜, 주문 가치가 포함된 주문당 1개 행의 데이터여야 합니다. 월별 요약 데이터는 사용할 수 없습니다. 평생 가치는 근본적으로 개별 고객이 시간이 지남에 따라 어떻게 행동하는지를 다루기 때문입니다.
공식을 적용하기 전에 두 가지 결정을 내려야 하며, 이 결정은 그 어떤 계산보다 결과값에 더 큰 영향을 미칩니다.
과거 기준 또는 예측 기준. 과거 기준의 고객 평생 가치는 고객이 지금까지 실제로 지출한 금액을 합산합니다. 예측 기준은 향후 지출할 금액을 추정합니다. 과거 기준은 근거가 확실하지만 항상 과소평가되는 경향이 있으며, 예측 기준은 예산 수립에 더 유용하지만 전적으로 리텐션 가정에 의존합니다.
이탈 기준 정의. 구독 서비스의 경우 해지일로 쉽게 정의할 수 있습니다. 반면 거래 기반 비즈니스는 해지 이벤트가 없으므로 규칙을 정해야 합니다. 예를 들어, 12개월 동안 구매하지 않은 고객은 이탈한 것으로 간주하는 식입니다. 기준 기간을 정하고 이를 명시해 두세요.
잘 정리된 결과는 다음과 같은 형태를 띱니다. 총 지출액, 주문 횟수, 최초 및 최종 주문일, 세그먼트 라벨이 포함된 고객별 테이블을 얻게 됩니다. 그 옆에는 마진 가정이 명시된 대표 수치가 함께 표시됩니다.
수동으로 계산하는 방법
옵션 1: 평균 주문 가치 및 구매 빈도 계산하기
거래 파일을 고객 식별자별로 그룹화합니다. 각 고객별로 주문 가치를 합산하고 주문 횟수를 셉니다. 평균 주문 가치는 전체 고객의 총 매출을 총 주문 횟수로 나눈 값입니다. 구매 빈도는 해당 기간의 총 주문 횟수를 고유 고객 수로 나눈 값입니다.
여기서 주의할 함정은 기간입니다. 12개월 동안 측정된 빈도와 전체 이력에 걸쳐 측정된 빈도는 서로 다른 수치이며, 이를 하나의 공식에 혼용하면 무의미한 결과가 나옵니다. 먼저 분석 기간을 확정하고 이를 일관되게 적용해야 합니다.
옵션 2: 리텐션 곡선 추가하기
고객 수명은 대부분의 사람들이 대략적으로 짐작하는 입력값입니다. 하지만 확실한 근거를 가지려면 자체 데이터를 활용해야 합니다. 고객을 획득 월별로 그룹화한 다음, 이후 각 월에 얼마나 많은 고객이 여전히 활성 상태였는지 집계해 보세요.
이를 통해 리텐션 곡선을 얻을 수 있습니다. 평균 수명은 대략 이 곡선 아래의 면적, 즉 스프레드시트에서는 월별 리텐션율의 합계와 같습니다. 예를 들어 100명의 고객이 3개월 동안 각각 80%, 65%, 55%의 리텐션율을 유지한다면, 임의의 숫자를 가정하는 대신 매월 누적된 수명을 계산하는 것입니다. 코호트 리텐션 차트를 시각화하는 방법은 코호트 리텐션 차트 작성 방법 가이드를 참고하시고, 개념적인 부분은 코호트 분석이란 무엇인가에서 확인하실 수 있습니다.
옵션 3: LTV 및 LTV:CAC 비율로 변환하기
평균 주문 가치, 구매 빈도, 고객 수명을 곱한 다음 매출총이익률을 곱합니다. 매출 기준의 평생 가치는 마진이 낮은 제품과 높은 제품을 동일하게 취급하기 때문에 수치가 왜곡되어 실제보다 과도하게 높게 나타날 수 있습니다.
그런 다음 고객 획득 비용(CAC)으로 나눕니다. 이 비율이 바로 우리가 이 수치를 구하는 목적입니다. 평생 가치 단독 수치는 단순한 정보에 불과하지만, 고객을 획득하기 위해 지불한 비용 대비 평생 가치는 의사결정의 기준이 됩니다.
수동 방식이 한계에 부딪히는 지점
세분화(Segmentation) 단계에서 한계가 드러납니다. 단일 통합 수치는 가장 성과가 좋은 코호트와 나쁜 코호트를 평균화하여 아무런 통찰도 주지 못하는 무의미한 숫자로 만듭니다. 유용한 데이터는 채널별, 요금제별 또는 획득 월별로 세분화된 데이터입니다. 세그먼트가 추가될 때마다 필터링된 하위 데이터 세트에 맞춰 전체 공식 체인을 다시 구축해야 합니다. 확인해 볼 가치가 있는 세그먼트는 대개 인내심 한계를 넘어설 정도로 많기 때문에, 대부분은 확인하지 않은 채 넘어가게 됩니다.
두 번째 문제는 반복 작업입니다. 다음 분기 파일은 행이 더 늘어나고 열 이름이 바뀌는 경우가 많습니다. 반나절 동안 공들여 만든 리텐션 그리드의 범위를 확장하고 공식을 다시 확인해야 합니다. 누락된 범위는 결과물에 시각적으로 드러나지 않기 때문에 매우 위험합니다.
또한 가정이 눈에 보이지 않습니다. 6개월이 지난 후 파일에 표시된 숫자를 보면, 그것이 매출 기준인지 마진 기준인지, 혹은 어떤 이탈 기준 기간을 사용했는지 아무도 기억하지 못합니다. 이로 인해 오래되고 부정확한 수치가 이사회 보고서에 그대로 올라가게 됩니다.
더 미묘한 문제도 있습니다. 모델을 다시 구축하는 데 많은 비용이 들기 때문에, 보통 한 번 계산해 두고 일 년 내내 인용하는 경향이 있습니다. 하지만 평생 가치는 고정된 상수가 아닙니다. 가격 책정이 변경되거나, 획득 채널 믹스가 더 저렴한 채널로 이동하거나, 제품 변경으로 인해 리텐션이 달라질 때마다 수치는 변합니다. 지난 봄에 계산된 수치는 이미 존재하지 않는 과거의 비즈니스 상태를 나타내고 있을 수 있습니다.
Powerdrill Bloom으로 고객 평생 가치를 계산하는 방법
1단계: 데이터 업로드하기
거래 CSV를 직접 업로드합니다. Powerdrill Bloom이 열의 프로필을 분석하므로, 그룹화 작업을 시작하기 전에 사용할 수 있는 고객 식별자와 정제된 날짜 열이 있는지 바로 확인할 수 있습니다.
2단계: 자연어로 계산 방식 설명하기
동료에게 설명하듯 규칙을 입력하세요. "12개월 동안 구매가 없는 고객은 이탈로 간주하고, 이 매출총이익률을 적용하여 획득 채널별 평생 가치를 계산해 줘"와 같이 요청할 수 있습니다. 그런 다음 상위 25%와 하위 25% 분위 간에 수치가 어떻게 다른지, 또는 획득 코호트별로 수치가 어떻게 변화했는지 등 중요한 후속 질문을 던져보세요.
3단계: 차트, 보고서 또는 프레젠테이션 내보내기
세그먼트별 테이블, 그 바탕이 되는 리텐션 곡선, 또는 수치와 함께 가정이 기록된 서면 요약본을 내보낼 수 있습니다.
매 분기마다 모델을 다시 구축하는 것보다 이 방식이 더 나은 이유
| 스프레드시트 방식 | Powerdrill Bloom | |
|---|---|---|
| 채널별 세분화 | 세그먼트별로 공식 체인 재구축 | 요청에 추가하기만 하면 됨 |
| 이탈 기준 기간 변경 | 리텐션 그리드 재작업 | 새로운 기준 기간으로 다시 질문 |
| 가정 기록 | 수동 메모 (누락되는 경우가 많음) | 요청 사항에 명시됨 |
| 다음 분기 파일 | 범위 확장 및 공식 재확인 | 업로드 후 다시 질문 |
두 번째 행이야말로 분석을 통해 얻는 인사이트를 바꾸는 핵심입니다. 12개월 이탈 기준과 6개월 이탈 기준은 매우 다른 평생 가치 결과를 낳을 수 있습니다. 이를 정직하게 다루는 방법은 두 가지 기준을 모두 적용해 보고 결론이 유지되는지 확인하는 것입니다. 스프레드시트에서는 아무도 이 작업을 두 번 하려 하지 않습니다.
자주 하는 실수들
마진 대신 매출 사용하기. 매출 기준의 평생 가치는 모든 비즈니스를 실제보다 좋게 보이게 만들며, 획득 비용과의 비교를 심각하게 왜곡합니다.
모든 고객을 하나의 수치로 통합하기. 서로 다른 세그먼트가 섞여 있는 고객 기반의 평균값은 실제 그 어떤 고객도 대변하지 못합니다. 결론을 내리기 전에 반드시 세분화하세요.
고객 수명 짐작하기. "대략 2년 정도"는 가장 흔하게 사용되지만 가장 근거가 빈약한 입력값입니다. 리텐션 곡선이 짧더라도 자체 리텐션 곡선에서 수명을 도출해 내세요.
생존자 편향(Survivor effect) 무시하기. 과거 기준의 평생 가치는 이미 존재하는 고객만을 대상으로 하므로 장기 고객 쪽으로 수치가 왜곡됩니다. 코호트 기반 계산을 통해 이를 방지할 수 있습니다.
CAC 없이 보고하기. 고객 획득 비용이 $90인지 $800인지 알지 못한다면, 평생 가치가 $900라는 숫자는 아무런 의미가 없습니다.
수치가 영구적이라고 생각하기. 가격 책정, 제품 또는 획득 채널 믹스가 크게 변경될 때마다 다시 계산해야 합니다. 작년 수치를 그대로 가져다 쓰는 것은 소수점만 붙여놓은 추측에 불과합니다.
결론
CSV에서 고객 평생 가치를 계산하는 과정은 3단계로 이루어집니다. 평균 주문 가치 및 빈도 구하기, 자체 코호트 기반의 리텐션 곡선 도출하기, 그리고 마진 및 획득 비용 대비 비율 계산하기입니다. 스프레드시트에서도 이 작업은 가능하지만, 데이터를 세분화하거나 다른 이탈 기준 기간을 테스트해야 하는 순간 한계에 부딪히게 됩니다.
회의에서 누군가 요구할 때만 겨우 모델을 다시 구축하고 있다면, 내보낸 거래 데이터에 Powerdrill Bloom을 적용해 보세요. 당사의 CSV AI assistant 페이지에서 전반적인 워크플로우를 확인하실 수 있으며, CSV를 차트로 변환하기에서 시각적 결과물에 대해 알아보실 수 있습니다.
자주 묻는 질문
고객 평생 가치 계산 공식은 무엇인가요?
평균 주문 가치, 구매 빈도, 평균 고객 수명을 곱한 다음 매출총이익률을 곱합니다. 마진 대신 매출을 사용하면 결과가 부풀려져 획득 비용과의 비교 신뢰도가 떨어집니다.
Excel에서 고객 평생 가치를 어떻게 계산하나요?
거래 파일을 고객 식별자별로 그룹화하여 주문 횟수와 합계를 구합니다. 코호트 리텐션 그리드를 구축하여 수명을 도출한 다음, 이 세 가지 입력값을 결합합니다. 리텐션 그리드를 만드는 과정은 꽤 번거로우며, 기준 기간이 바뀔 때마다 다시 구축해야 합니다.
과거 기준 LTV와 예측 기준 LTV의 차이점은 무엇인가요?
과거 기준은 고객이 이미 지출한 금액을 합산하므로 항상 과소평가되지만 근거를 대기 쉽습니다. 예측 기준은 리텐션 가정을 바탕으로 향후 지출을 추정하므로 계획 수립에 더 유용하지만 오류가 발생할 가능성이 더 큽니다.
적절한 LTV 대 CAC 비율은 얼마인가요?
흔히 목표치로 3 대 1을 언급하지만, 이는 마진 구조와 회수 기간에 따라 다릅니다. 더 유용한 질문은 고객이 획득 비용을 회수하는 데 몇 개월이 걸리는가입니다.
최근에 구매하지 않은 고객은 어떻게 처리하나요?
이탈 기준 기간을 정의하고 이를 일관되게 적용하세요. 거래 기반 비즈니스의 경우 12개월 동안 구매가 없는 것을 일반적인 규칙으로 삼습니다. 기준 기간을 변경하면 평생 가치가 크게 달라질 수 있으므로 수치 옆에 해당 기간을 함께 기록해 두세요.