이 글은 데이터리안 홈페이지에서도 보실 수 있습니다.
범위 리텐션(Range Retention)은 클래식 리텐션을 유연하게 확장한 개념입니다. 클래식 리텐션에서는 분석을 특정 일/주/월 단위로(이 중에서도 일 단위의 분석을 지난 문서에서 살펴봤었죠) 한정짓는 느낌이라면 범위 리텐션은 구간을 유연하게 나눈다는 점만 다릅니다. 범위를 지정하는게 특징이기 때문에 Bracket Retention이라고도 합니다.
지금까지 얘기한 리텐션 모아보기 👇
12월 1일에 서비스에 가입한 사용자 A, B, C, D, E의 방문로그를 아래와 같이 가정합시다. 이 데이터를 3일씩 묶어서 범위 리텐션을 계산해보겠습니다.
사용자 | 12-01 (Day 0) | 12-02 (Day 1) | 12-03 (Day 2) | 12-04 (Day 3) | 12-05 (Day 4) | 12-06 (Day 5) | 12-07 (Day 6) |
---|---|---|---|---|---|---|---|
A | 방문 | 방문 | 방문 | 방문 | 방문 | 방문 | 방문 |
B | 방문 | 방문 | 방문 | ||||
C | 방문 | 방문 | 방문 | ||||
D | 방문 | 방문 | |||||
E | 방문 | 방문 |
아래의 기준으로 데이터를 묶어봅시다.
12-01 (Day 0) | 12-02 ~ 12-04 (Day 1~3) | 12-05 ~ 12-07 (Day 4~6) | |
---|---|---|---|
기간 내 방문유저수 | 5 | 3 | 3 |
범위 리텐션 % | 100% | 60% | 60% |
Day 1~3 구간 동안에는 사용자 A, B, C가 방문했고 Day 4~6 기간에는 사용자 A, D, E가 방문했습니다. Day 4~6 구간보다 Day 1~3 동안에 훨씬 많은 방문이 발생했지만 이러한 특성은 데이터를 요약하면서 사라지고 두 구간 모두 범위 리텐션은 60%로 계산됩니다.
이렇게 기간을 묶어서 계산하기 때문에 범위 리텐션 계산 방식은 노이즈에 강합니다. 우연히 하루정도 접속을 안 했다고 하더라도 리텐션에 영향을 주지 않기 때문입니다. 주로 서비스 사용주기가 길거나 주기적인 서비스에서 많이 사용합니다.
클래식 리텐션, 롤링 리텐션, 범위 리텐션 계산 결과를 하나의 차트로 그려보겠습니다. 같은 데이터를 이용하더라도 계산 방식에 따라서 이렇게 리텐션이 달라질 수 있습니다.
사용자의 이용 패턴이 바뀐 것도 아니고, 로그의 수집 형식이 달라진 것도 아니고 계산하는 하는 방법만 달라졌는데 리텐션 값이 이렇게 다른 것을 보면서 몇 가지 주의해야 할 점을 이야기하고 싶습니다.
✨ 막간을 이용한 광고 타임 ✨
데이터 분석을 위한 SQL 캠프에서는 리텐션에 대해서 더 자세하게 이야기하고, SQL 쿼리로 다양한 타입의 리텐션을 직접 계산하고 분석해 볼 예정입니다. 클래식 리텐션, 롤링 리텐션, 범위 리텐션을 SQL로 한 번에 추출해보고 싶은 분들은 주목해주세요!
리텐션 계산을 위해 필요한 SQL 기능은 아래 세 가지인데요.
이번에 여는 2022년 2월 SQL 입문 캠프에서는 1번, 2번 기능을 배우고, 나중에 열릴 심화 캠프에서 3번 기능을 마저 배운 다음 리텐션 계산을 해 볼 예정입니다. 캠프 신청 방법은 여기를 참고해주세요!
혹시 캠프 신청 기간이 지나서 이 글을 발견하셨다면 datarian2020@gmail.com
으로 문의메일 남겨주세요 :D