LTV
한국말로 옮기면 “고객 평생 가치”라 표현한다. 한 명의 고객이 기업과 거래를 시작한 다음 이를 멈출 때까지의 기간을 “고객 라이프 사이클”이라고 한다. LTV는 한 명의 고객이 “고객 라이프 사이클 기간 동안 기업에 얼마만큼의 이익을 가져왔는가”를 정량적으로 합한 것입니다.
LTV가 높다는 것은 고객이 장기적으로 기업의 제품을 계속 선택하고 있다는 것이다. 즉, 기업은 자사 제품을 지속해서 이용하는 충성도 높은 고객들이 있고, 이들과 좋은 관계를 유지하고 있다는 말이 된다. 한편, LTV는 소비가 빈번하게 일어나는 업계에서는 중요한 지표지만 부동산 등 자주 구매할 수 없는 고가의 상품을 파는 업계에서는 사용하지 않습니다.
LTV 가 왜 중요한가?
신규 고객에게 브랜드를 알리고, 새로운 고객이 상품을 구매하게 하려면 할 일이 많고 시간과 비용도 많이 듭니다. 반면에 기존 고객 유지 비용은 신규 고객 1명을 유치하는 것의 5분의 1 정도입니다. 따라서 기존 고객 유지는 경영 측면에서 매우 큰 과제가 된다. 기존 고객과의 관계를 더 좋게 만들고 이를 확대해 나아가는 데 있어 LTV 분석은 필수라고 볼 수 있다.
LTV 산출 방법
LTV 산출을 위한 대표적인 계산식은 아래와 같이 여러 개가 있다
•
이익×거래 기간(라이프타임)×할인율(현재 가치 계수)
•
고객의 연간 거래액 × 수익률 × 고객 지속 연수
•
고객의 평균 구매 단가 × 평균 구매 횟수
•
(매출액 – 매출 원가) ÷ 구매자 수
•
(평균 구매 단가 × 구매 빈도 × 계속 구매 기간) -(신규 획득 비용) + 고객 유지 비용)
LTV 정의를 고려할 때 고객 1명에 대한 LTV를 산출하는 것이 기본입니다. 하지만 각각의 고객에 대해 개별적으로 구매 금액이나 비용을 계산하는 것은 현실적이지 않습니다. 따라서 전체 고객에 대한 수치에서 “고객 1인당 평균값”을 구하여 LTV를 따져야 합니다.
신규 고객 획득 비용 파악과 연관
LTV는 “신규 고객당 획득 비용(CPA)”과도 관련이 있습니다. CPA 상한값을 “목표 CPA”라고 부르는데, 다음과 같은 수식으로 계산할 수 있습니다.
•
상한 CPA(목표 CPA) = LTV × 매출 총이익
LTV를 높이려면?
세 가지 목표를 세워서 마케팅을 진행한다.
1) 객단가를 올린다
묶음 판매, 대용량 사이즈 추가, 고품질 상품 투입, 선물이나 옵션 등 새로운 가치를 추가하는 쪽으로 객단가를 높입니다. 기존에는 상품 가격 인상으로 객단가를 올렸는데, 이는 기존 고객이 기업에서 멀어지게 할 위험을 키울 수 있습니다. 상품을 업데이트하고, 각각의 기호에 맞는 제안을 하는 것이 고객의 구매 의욕을 높이는 데 효과적입니다.
2) 구매 빈도를 높인다
고객이 더 자주 구매하게 하려면 적절한 후속 조치가 필요합니다. 고객과의 접촉이 늘수록 고객 충성도가 높아지기 때문입니다. SNS로 정보를 알리면서 느슨한 관계를 지속하고, 적절한 타이밍에 상품 보충이나 교체 등의 추천을 합니다. 느슨한 접촉을 유지하는 것은 고객의 구매 행동을 끌어내기 위한 전략입니다.
3) 계속 이용하도록 한다
객단가와 구매 빈도가 높아지면 자연스럽게 고객이 기업의 상품을 계속 이용하는 것으로 이어집니다. 여기서 고객 이탈을 효과적으로 막으려면 “단골 한정” 상품이나 할인을 제공해 고객에게 어필해야 합니다.
→ 다만 LTV를 높이려고 “비용을 너무 많이 들이지 않는 것”도 고려해야 한다.
RFM
RFM은 고객 세분화 모형 중 실무에서 자주 사용하는 모형으로 R,F,M은 각각 다음을 의미한다.
•
Recency : 최근에 구매했는지
•
Frequency : 자주 구매했는지
•
Monetary : 얼마나 구매했는지
몇 단계로 나누는지 , 어떤 기준으로 단계를 나누는지 정해진 것은 없고, 상황에 맞게 기준을 세우면 된다. 단계는 3단계로 나누기도 하고, 5단계로 나누기도 한다. ‘ 최근에 구매했는지’ 같은 것도 한 달 이내를 최근으로 볼 것인지, 세 달 이내를 최근으로 볼 것인지도 서비스 특성에 따라 다르게 정한다.
먼저, RFM을 간단하게 각각 2단계로 나눠서 계산을 해본다. 기준은 아래와 같다.
•
Recency : 한 달 이내에 구매기록이 있으면 1점 없으면 0점(현재는 2022년 1월 1일로 가정)
•
Frequency : 5회 미만 구매 시 0점, 5회 이상 구매 시 1점
•
Monetary : 500달러 미만 구매시 0점, 500달러 이상 구매시 1점
먼저, records 테이블을 이용해서 customer_stats를 만들려면 어떻게 쿼리를 작성할까?
< 필요한 열은 다음과 같다>
1) customer_id
2) last_order_date : 고객의 마지막 주문 날짜 —> recency 활용 가능
3) cnt_orders : 고객의 총 주문 횟수 —> frequency 활용 가능
4) sum_sales : 고객의 총 주문금액 —> monetary 활용 가능
SELECT customer_id,
MAX(order_date) AS last_order_date,
COUNT(order_id) AS cnt_orders,
SUM(sales) AS sum_sales
FROM records
GROUP BY customer_id
SQL
복사
CASE
customer_stats 테이블의 last_order_date 열을 이용해서 각 고객의 recency 값을 계산해보자.
last_order_date 열과, recency 점수 열을 출력해달라. 조건 계산에는 case 문을 사용한다.
SELECT last_order_date,
CASE WHEN last_order_date >= '2021-12-01' THEN 1 ELSE 0 END AS recency
FROM cutomer_stats
SQL
복사
customer_stats 테이블의 cnt_orders 열을 이용해서 각 고객의 freqency 값을 계산해보자.
cnt_orders 열과, freqency점수 열을 출력해달라. 조건 계산에는 case문을 사용한다.
SELECT cnt_orders,
CASE WHEN cnt_orders < 5 THEN 0 ELSE 1 END AS freqency
FROM customer_stats
SQL
복사
customer_stats 테이블의 sum_sales 열을 이용해서 각 고객의 monetary 값을 계산해보자.
sum_sales열과 monetary 열을 출력해달라. 조건 계산에는 case 문을 사용한다.
SELECT sum_sales,
CASE WHEN sum_sales < 500 THEN 0 ELSE 1 END AS monetary
FROM customer_stats
SQL
복사