본문 바로가기

Data_Analysis_TIL

"데이터분석가_넌 누구냐"시리즈_Chapter3 - Cohort, Retention, RFM 분석 기법

개념은 티스토리에, 코드는 기술블로그에: kimsk920825.github.io/

 

0x530x650x610x6E

데이터 분석가의 직무: Query를 통해 데이터를 추출하고, 다른 부서에서 의사결정을 쉽게 할 수 있게 데이터를 시각화 하며 사업분야의 높은 이해도와 함께 데이터로부터 인사이트를 추출해라

kimsk920825.github.io

 

 

요즘 데이터 분석가 채용 공고를 보면

  AARRR, Cohort,Retention, RFM과 같이 데이터를 분석하는 논리적인 기법들을 SQL에 필이 녹일수 있어야 하는 역량을 요구한다.

 

그래서 오늘은 티스토리에는 Cohort, Retention, 그리고 RFM기법에 대한 개념을 정리하고 기술블로그에는 코드를 정리하려고 한다. 

 

--블로그 주소 기재--

코호트 분석(Cohort Analysis)이란? 

: 시간 흐름에 따라 growth와 retention을 측정하는 방법.

: 코호트는 Segment, 그룹을 의미한다. 즉, 코호트 분석은 고객/유저를 서로 겹치지 않게 서로 다른 그룹으로 만들어서 그룹을 시간에 따라서 추적하는 분석 방법이다. 

: 코호트 방법에는 3가지가 있다. Time Cohort, Behavior Cohort, Size Cohort. 여기서는 Time Cohort분석을 이야기 해보려 한다. 

Time 코호트란? 

:제품이나 서비스를 사용한 시기에 따라 고객을 그룹화하는 방법. 

코호트 분석

예를 들면 가입을 기준으로 한다면 1월에 가입한 사람들, 2월에 가입한 사람들로 묶을 수 있다. 

이렇게 묶고서 1월에 첫 가입한 사람들이 지속적으로 2월, 3월, 4월 지속적으로 유저로 남아있는지 계산을 하는 것이 코호트 분석이다. 

즉, 고객이 우리 회사의 상품이나 서비스를 쓰기 시작한 후부터 이후 고객의 행동이 어떻게 바뀌는지 쭉 트래킹하는 기법이다. 

 

코호트

 

우리가 코호트분석을 하면 최종적으로 만들 표는 위와같이 생겼다. 

코호트 분석은 기본적으로 피봇테이블 형태를 가지고 있다. 

사진은 캐글에서 Retail 구매 데이터를 다운로드 해서 Google SQL로 추출한 다음 Excel로 시각화 했다. 

 

 

 

코호트 분석 내 업무에 적용하기

코호트분석

코호트 분석을 내 업무에 적용하기 위해선 비즈니스 특성에 맞게 주기를 정해야 한다. 

앱 설치같은 경우에는 Daily로 기록을 트랙킹 하고, 

요일별로 사용패턴이 있는 모델은 Weekly로 Cohort기준으로

넷플릭스와 같이 구독 갱신 사업을 하는 모델은 월별로 Cohort를 사용하고

여행은 자주 가는 것이 아니기때문에 3개월 6개월 단위로 Cohort를 잡아야 한다. 

 

더 자세한 사항은 기술 블로그에 서술해두었다. 

 

분석에서 리텐션(Retention)이란?

리텐션은 위 코호트에서 설명했던 고객 유지율을 말한다. 리텐션에는 클래식 리텐션, Range 리텐션, 롤링 리텐션이 있다. 

 

완벽한 리텐션 지표는 없다. 목적과 상황에 맞게 리텐션 산출을 달리 사용해야한다.

클래식 리텐션 = Day N 리텐션

: N일 뒤에 다시 돌아온 유저의 비율

클래식 리텐션 (Day N리텐션) = D+N일 뒤에 방문한 사람 수 / D+0에 방문한 사람 수.

장점: 개념이 간단하기 때문에 계산하기 쉽다. 

단점: 일별 이벤트에 영향을 많이 받는다. 

 

Range 리텐션

: 다음 Period에 다시 돌아온 유저의 비율. Period의 일반적인 기준은 주 혹은 월 단위. 기준 Period 단위 내에 다시온 사람은 카운트 하지 않는다. 

Range 리텐션 = Next Period에 방문한 사람 수 / 최초의 Period에 방문한 사람 수. 

장점: 개념이 간단하고 설명하기 쉽다. 

클래식 리텐션에서 발생할 수 있는 일별 노이즈를 줄일 수 있다. 

단점: Period 기간만큼 시간이 지나야 지표를 확인할 수 있다. 

유의할 점: Period를 비즈니스에 맞게 정하는 것이 중요하다. 이 프로젝트  코호트 분석에 썼던 리텐션이 Range 리텐션이다. 

 

롤링 리텐션 = 리턴 리텐션

: 일정 기간 이후에 리턴한 유저의 비율.

만약 7일 롤링 리텐션을 잡으면 7일 이후에 7일 이전에 왔던 유저/고객이 몇프로 돌아왔는지를 계산한다. 

롤링 리텐션 = N일 이후 방문한 사람 수 / D0에 방문한 사람 수 

 

장점: 이탈에 대한 정보를 얻을 수 있다. (100% - 이탈율)

계산이 빠르다 (첫 번째 방문 일자, 마지막 방문 일자로만 계산) 

단점: 충성고객과 N일 이후 한 번만 온 사람을 같게 취급한다. 

 

기존 리텐션 지표의 보조로 사용되는 경우가 많다.

 

RFM

Recency: 얼마나 최근에 구매했는지

Frequency: 얼마나 자주 구매했는지 

Monetary: 얼마나 많은 금액을 구매 했는지

 

STEP 1. 고객 별로 R/F/M 수치 산출

 

고객 ID

Recency

Frequency

Monetary

32054

4 days

1

500,000

10545

370

30

1,500,000

87952

61 days

4

200,000

 

STEP 2. R/F/M 각각에 대해 등급 만들어주기. 

 

고객 ID

Recency

Frequency

Monetary

Recency 점수

Frequency 점수

Monetary 점수

32054

4 days

1

500,000

4

1

3

10545

370

30

1,500,000

1

4

4

87952

61 days

4

200,000

3

2

2

 

Recency는 숫자가 클수록 낮은 점수를 줘야한다. 

STEP 3. RFM 그룹과 RFM 점수 산출.

RFM그룹으로 세그먼트를 나눈다.

RFM 점수를 구해 각 고객별로 최종 점수를 구해준다. 

 

고객 ID

Recency

Frequency

Monetary

Recency 점수

Frequency 점수

Monetary 점수

RFM 그룹

RFM 점수

32054

4 days

1

500,000

4

1

3

413

8

10545

370

30

1,500,000

1

4

4

144

9

87952

61 days

4

200,000

3

2

2

322

7

 

RFM그룹이 413이란 뜻은 가장 최근에 왔었지만 찾아온 빈도는 낮고 반면  돈은 많이 쓴 고객

RFM그룹이 144란 뜻은 자주 많이 샀는데 온지 오래된 고객 .

RFM그룹이 322란 뜻은 꽤 최근에 약간 자주, 금액은 그리 크지 않게 구매하는 고객.

 

RFM 점수 >=9: 골드 / 5 <= RFM 점수 <9: 실버 / RFM점수 <5: 브론즈

단점: 점수 또는 등급으로 나누면 점수가 가지고 있는 의미가 희석될 수 있다. 같은 골드라고 할지라도 144인 골드는 이탈고객이기 포함되기 때문에 churn rate 관리 대상이다. 

고객 ID

Recency

Frequency

Monetary

Recency 점수

Frequency 점수

Monetary 점수

RFM 그룹

RFM 점수

커스텀 등급

32054

4 days

1

500,000

4

1

3

413

8

실버

10545

370

30

1,500,000

1

4

4

144

9

골드

87952

61 days

4

200,000

3

2

2

322

7

브론즈

 

step 4.커뮤니케이션 그룹과 그룹에 맞는 메시지 정하기. 

 

Recency

Frequency

Monetary

4

4

4

3

3

3

2

2

2

1

1

1

 

VVIP

최근에, 가장 자주, 가장 많이 금액을 쓰는 그룹을 잘 지켜야 하는 고객. 가치 있고 중요한 고객이라는 점을 지속적으로 전달.



Recency

Frequency

Monetary

4

4

4

3

3

3

2

2

2

1

1

1

 

중요 신규 고객

구매 횟수는 적지만, 최근에 큰 금액을 쓴 그룹 신규 중에서도 VIP가 될 가능성이 높은 고객. 

중요 신규 고객이 이후에 어떤 그룹으로 이동했는지 분석도 유의미. 



Recency

Frequency

Monetary

4

4

4

3

3

3

2

2

2

1

1

1

 

Low-Spending 충성 고객

최근에 자주 구매하지만 적은 금액을 소비하는 그룹.

브랜드 로열티는 있는 상태

크로스셀과 업셀로 Spend-Level을 높일 필요가 있음. 



Recency

Frequency

Monetary

4

4

4

3

3

3

2

2

2

1

1

1

 

이탈한 충성고객

자주, 많은 금액을 소비했는데 이용한지 오래된 그룹. 이탈했지만 다시 데려오는 시도를 해볼만한 고객. 

 

구매가 없을 때는 M에 매출 대신 인게이지먼트 지표를 활용해라.  (방문 페이지수, 총 시청시간, 사이트 체류시간) 또는 R과 F만 사용해도 유의미하다.