CahtGPT로 프로덕트 리텐션 구하기-2

스타트업에서 PO로 일하며, 모바일 커머스 앱을 만들고 있어요.

by 그로쓰 코코넛


저번 글에서 우리는 핵심 지표인 2가지를 구했어요. 해당 지표는 리텐션을 구하기 위해서 꼭 필요해요.

[핵심 액션]
[핵심 행동의 자연 발생 주기]


아직 2가지 지표가 확인되지 않았다면 구해보지 않았다면 저번 글을 읽어주세요


이전 글 보러 가기��: https://brunch.co.kr/@growthcoconut/5



3단계: 주기에 따른 핵심 액션 유저 구하기 (With.Mysql)


자, 이제 3번째 단계는 주기에 따라 핵심 액션을 발생시킨 유저의 수를 파악하는 단계예요.


예를 들어 핵심 행동은 '결제'이고 자연 발생 주기가 '30일'이라고 한다면, 한 달마다 결제를 한 유저의 수를 구하는 거예요.


데이터를 구하기 위해서 다음과 같은 쿼리를 입력했어요.


SELECT
count ( DISTINCT ( {#유저번호} )) as user_count,
PERIOD_DIFF(DATE_FORMAT( {#가입일} , '%Y%m'), DATE_FORMAT( {#결제일} , '%Y%m')) as cycle
from {#테이블명}
group by cycle ;


이 쿼리는 고객의 가입일과 결제일 사이의 시간 차이를 기반으로, 각 기간 동안 결제를 진행한 고객의 수를 파악하는 쿼리예요. 이 쿼리는 두 부분으로 구성되어 있고, 하나씩 살펴볼게요.


(1) 고유 고객 수 계산하기: count (DISTINCT ( {#유저번호} )) as user_count

여기서는 각 기간 동안 결제를 한 고유한 고객의 수를 세고 있습니다.
DISTINCT라는 단어는 중복을 제거한다는 의미인데요, 이를 통해 같은 고객이 여러 번 결제를 해도 한 번으로만 카운트됩니다.


---

(2) 월별 차이 계산하기: PERIOD_DIFF(DATE_FORMAT( {#가입일} , '%Y%m'), DATE_FORMAT( {#결제일} , '%Y%m')) as cycle

이 부분은 고객의 가입일과 결제일 사이의 월별 차이를 계산하는 부분입니다.
PERIOD_DIFF(기준일, 비교 일자) 함수로 두 날짜 사이의 월 차이를 구하고 있어요

DATE_FORMAT 함수를 사용해서 날짜를 '년월' 형식으로 변환했어요.

이렇게 하면 고객이 가입한 후 얼마나 지나서 결제를 했는지 월 단위로 알 수 있습니다.


---

(3) 월별로 데이터 묶기: 마지막으로 group by cycle 라는 부분은

월별 차이(cycle )를 기준으로 데이터를 그룹화하고, 각 그룹별로 유니크한 사용자 수(user_count)를 집계하는 역할을 합니다.


그럼 아래와 같은 데이터를 얻을 수 있게 되어요!

스크린샷 2024-01-20 오후 5.44.42.png



4단계: 데이터 시각화 하기(With.ChatGPT)


드디어 마지막 단계인 그래프 그리기 단계입니다.

3단계에서 구한 데이터를 csv 로 추출하고 chatGPT에게 그래프를 그려달라고 시켜볼게요.


명령어에는 x축과 y축 그리고 값에 대한 정의를 하고, 격자선에 대한 요구를 작성했어요

x축: 주기

y축: 1000을 100% 라고 했을 때의 유저 수의 % 비율

값: 유저 수

y축의 격자선: 10% 단위로 설정


Plot a line graph using the following data, with the y-axis set to the % ratio of 1000 to 100% and the x-axis set to cycle. Set the value to uesr_count and the data units for the y-axis to %. The base for 100% is 1000. Draw the grid lines in 10% increments.


-> 짜란! 드디어 우리가 구하던 리텐션 그래프를 그렸어요

스크린샷 2024-01-20 오후 5.23.15.png



지금까지 리텐션 분석에 대한 여정을 함께 해주셨는데요!

요약해 보자면 이번 과정은 핵심 행동인 '결제'에 초점을 맞추고, 주기별로 결제를 한 유저의 수를 파악하는 것이었어요. 생각보다 간단하죠?


처음 접하시는 분들에겐 조금 복잡하고 어려울 수 있을 것 같지만 프로덕트를 개선하기 위해서 꼭 필요한 작업이라고 생각해요.


다음 글에서는 리텐션 그래프를 코호트별로 나눠서 구하는 과정을 공유하기 위해 돌아오겠습니다!

keyword
작가의 이전글업무 효율 높이는 ChatGPT 활용방법(1)