구매 데이터를 이용한 고객 세분화 기법 - RFM

조회수 3232

오늘은 저와 관계는 조금 멀지만, 마케팅에 관련된 것들을 말씀드려볼 생각인데요. 전반적인 마케팅 관련 분야는 저의 전문이 아니기도 하고 또 주위에 수많은 전문가분이 계실 테니 저는 제가 자신있어하는 부분인 데이터 관점만 똑 떼어내서 이야기를 진행해 볼까 합니다.


시작에 앞서, 근래의 마케팅은 모든 고객에게 일관된 전략을 수립하고 운영하기보다는 고객을 세분화하고 그 구분에 따라 최적의 정책을 만들어 나가는 방향으로 진행되고 있으며 이것들을 여러분들도 많이 들어본 타겟 마케팅 이라고 부르고 있는 것 같습니다. 타겟 마케팅은 고객사가 고객을 좀 더 잘 이해하고 이를 통해 최소의 비용으로 최대의 효과를 일으키려는 목적이 있습니다. 하지만 이를 너무 세세하게 구분한다면 이 과정에서도 많은 자원이 소모됩니다. 그러기에 같은 정책을 실행해야 하는 그룹을 그리 복잡하지 않은 방법을 통해 효율적으로 생성하는 것이 타겟 마케팅의 핵심이라고 보입니다.


이렇게 타겟을 만들고자 할 때 여러분들이 자주 듣는 말은 "고객을 segment로 나눠서 각종 지표를 만들어 볼까요?", "cohort 분석이 필요해 보여요!" 일 것 같은데요. segment와 cohort는 고객을 세분화한다는 유사한 개념이어서 혼용되고 있긴한데 엄밀히 나눠본다면 segment는 성별, 연령, 거주지 등의 속성을 기반으로 집단을 분류하는 것을 뜻하고 cohort는 디테일이 추가되어 특정 기간, 특정 이벤트(behavior)를 공통으로 수행한 동질 그룹으로 분류하는 것을 의미합니다. 


'서울 지역에서 지난 1/4분기 동안 화장품10만 원 이상 구매한 20대 수도권 지역 여성'과 같이 타겟을 분류한다면 cohort에 해당한다고 보시면 될 것 같습니다. 


여기까지 서론이 좀 길었는데요. 이제 본격적으로 cohort 기반의 고객 분석 모델 중 가장 많이 사용하고 있는 RFM(Recency, Frequency, Monetary)에 대하여 간략하게 설명하고 이를 위한 분석 환경을 꾸미는 과정을 설명을 드려보겠습니다.

안녕하십니까?


오늘은 뜬금없이 마케팅에 관련된 것들을 말씀 드려볼 생각인데요.

전반적인 마케팅 관련분야는 저의 전문이 아니기도하고 또 주위에 수많은 고수 분들이 계실테니

저는 제가 자신있어하는 부분인 데이터 관점만 똑 떼어내서 이야기를 진행해 볼까 합니다.



시작에 앞서...

근래의 마케팅은 모든 고객에게 일관된 전략을 수립하고 운영하기 보다는 

고객을 세분화하고 그 구분에 따라 최적의 정책을 만들어 나가는 방향으로 진행되고 있으며 

이것들을 여러분들도 많이 들어본 타겟 마케팅 이라고 부르고 있는 것 같습니다.


고객사가 고객을 좀 더 잘 이해하고 이를 통해 최소의 비용으로 최대의 효과를 일으키려는 목적이지만

또 너무 세세하게 구분한다면 이 과정에서도 많은 자원이 소모되기 때문에

같은 정책을 실행 해야하는 그룹을 그리 복잡하지 않은 방법을 통해 효율적으로 생성하는 것이 

이 과정의 핵심이라고 보여 집니다.


이 때 여러분들께서 자주 듣는 말이 

"고객을 segment로 나눠서 각종 지표를 만들어 볼까요?"

"cohort 분석이 필요해 보여요!"

일 것 같은데요.


segment와 cohort는 고객을 세분화 한다는 유사한 개념이어서 혼용되고 있긴한데 

엄밀히 나눠본다면

segment는 성별, 연령, 거주지 등의 속성을 기반으로 집단을 분류하는 것을 뜻하고

cohort는 디테일이 추가되어  특정 기간, 특정 이벤트(behavior)를 공통적으로 수행한 

동질 그룹으로 분류하는 것을 의미 합니다.


많은 분들께서 수행하고 있는 타겟팅 업무는 대부분 cohort에 해당될 것 같습니다.

예) "서울 지역에서 지난 1/4분기 동안 화장품을 10만원 이상 구매한 20대 수도권 지역 여성"


여기까지 서론이 좀 길었는데요, 

이제 본격적으로 cohort 기반의 고객분석모델 중 가장 많이 사용하고 있는 

RFM(Recency, Frequency, Monetary)에 대하여

간략하게 설명하고 이를 위한 분석환경을 꾸미는 과정을 설명 드려보겠습니다.




RFM 모델 만들어 보기

RFM은 얼마나 최근에(R),  얼마나 자주(F), 얼마나 많이(M) 구매활동을 했는가에 대한 정보를 만들고

이를 바탕으로 고객의 상태를 세분화하는 모델 입니다.


우선 R, F, M 모델을 만들기 위한 기초데이터를 만들어 봅니다.

준비물은 구매이력 데이터 입니다.



RFM 모델 만들어 보기

RFM은 얼마나 최근에(R),  얼마나 자주(F), 얼마나 많이(M) 구매 활동을 했는가에 대한 정보를 만들고 이를 바탕으로 고객의 상태를 세분화하는 모델입니다. 우선 R, F, M 모델을 만들기 위한 기초 데이터를 만들어 봅니다. 준비물은 구매 이력 데이터입니다.


select    
     user_id

     ,max(order_day) as r_factor #얼마나 최근에
     , count(order_id) as f_factor #얼마나 자주
     , sum(order_price) as m_factor #얼마나 많이
from
     order_history_table
where
     order_day between 
20210101 and 20210331
group by
     user_id


최근 구매한 일자, 지정된 기간에 몇 번이나 그리고 얼마나 많이 구매했는가를 만들었습니다.


[RFM 기초 데이터 - 최근 구매일, 구매횟수, 구매총합]


다음으로는 이 기초 자료를 기반으로 R의 등급, F의 등급, M의 등급을 생성하는 과정입니다. 이때 등급을 생성하기 위한 모형을 고객사의 특성에 맞추는 과정이 필요할 때도 있습니다. 참고로, 많은 현업에서 대부분 5분위 혹은 10분위로 나누고 있습니다. 저는 5분위로 나누어 등급을 책정하겠습니다.


select
     user_id
     , ntile(5) over (order by r_factor) as r_score
     , ntile(5) over (order by f_factor) as f_score
     , ntile(5) over (order by m_factor) as m_score
from (
     select
         user_id
         , max(order_day) as r_factor #얼마나 최근에
         , count(order_id) as f_factor #얼마나 자주
        , sum(order_price) as f_factor #얼마나 많이
     from
         order_history_table
     where
         order_day between 20210101 and 20210331
     group by
         user_id
 ) rfm_factor_table   


모든 고객을 분포에 따라 R 5등급, F 5등급, M 5등급 나누었습니다.


[고객별 RFM Score]


여기까지만 해도 다양한 고객 분석에 활용이 가능합니다. 


[RFM Score 별 주문수, 매출 분포]


예를 들어, RFM 등급을 통해 F와 M이 높은데 R이 낮아 이탈할 가능성이 높은 VIP 고객에게 come-back 메일을 보낸다거나 R이 높고 F와 M이 낮은 신규고객에게는 welcome 쿠폰을 발행하여 구매를 유도하는 식의 객단가를 높이는 전략을 그려볼 수 있게 됩니다.


또 양념을 더 쳐서 고객사의 특성에 맞춰 하나의 지표로 변환하여 

customer_rank_score = (r_score * r_weight) + (f_score * f_weight) + (m_score * m_weight) 

고객의 레벨을 부여하는 등 더 통상적인 구분을 만들어내기도 합니다.

예) 14점 이상은 VIP 


[고객 등급별 매출, ARPPU 분포] 


여기에 ML/AI 기반 기술을 연계하여 이탈/등급 변경 확률 계산, LTV 예측 등 각종 Insight를 도출하는 모델을 추가하고 있으며 이러한 환경을 좀 더 쉽게 구축할 수 있는 빅데이터 플랫폼을 개발하고 있기도 합니다. (이는 해외의 많은 CDP, CRM, 데이터 회사의 세일즈 포인트이기도 합니다.)


[고객의 잠재적 RFM 스코어 및 이탈률 계산] 



이처럼 RFM모델은 비교적 간단하게 만들어 볼 수도 있고 또 복잡하지 않아 전문적인 지식이 없어도 쉽게 이해하고 여러 방식으로 활용할 수 있어 지금까지도 널리 활용되고 있습니다. 


구매 이력을 갖고 계신다면 아마 10분 이내에 위와 같은 데이터 및 시각화 자료를 만들 수 있을 정도로 간단하고 또 어려움 없이 설명할 수 있는 분류 기법이기에 소개해 드려 봤습니다. 


앞으로도 종종 데이터 기반 사업, 기술에 대한 여러 가지를 말씀드리면서 많은 분들께서 데이터에 친숙해지고 점차 data-driven을 넘어 data-informed하고 나아가 data-inspired 될 수 있었으면 합니다.





무료 인사이트 리포트와 최신 마케팅 트렌드 자료를 받아보고 싶다면
다이티 뉴스레터를 구독해보세요!