데이터로그😎

[AARRR] #3.Retention (유지율) 본문

#2. Data Analysis/#2.1. 분석 방법

[AARRR] #3.Retention (유지율)

지지킴 2025. 3. 19. 17:41

0. 이전 포스트

이전에는 AARRR의 두 번째 단계인 Activation, 활성화에 대해 다뤘습니다. 금일 포스트에서는 세 번째 단계인 Retention을 다뤄보겠습니다.  2025.03.19 - [#2. Data Analysis/#2.1. 분석 방법] - [개념] AARRR #2.Activation (활성화)

 

[개념] AARRR #2.Activation (활성화)

2025.03.18 - [#2. Data Analysis/#2.1. 분석 방법] - [개념] AARRR #1.Acquisition (고객유치) [개념] AARRR #1.Acquisition (고객유치)1. AARRR  AARRR은 유저의 서비스 이용 흐름을 기반으로 하는 지표 관리 기법입니다.AA

fine-1004.tistory.com


1. 리텐션(Retention)의 기본 개념

Retention(유지율)
활성화 단계에서 고객이 경험한 핵심 가치를 꾸준히 경험하고 있는지?
유저가 지속적으로 서비스를 사용하고 있는지?
일정 시간이 지나도 계속해서 돌아오는 유저가 얼마나 되는지?

 

이번에 다룰 주제는 AARRR의 세 번째 단계인 Retention(유지율) 입니다. Activation(활성화) 단계에서 중요한 것은 고객이 우리의 핵심 가치를 경험하게 하는 것이었습니다. 고객이 우리의 핵심 가치를 경험했다면 그 다음 해야할 일은 무엇일까요? 핵심 가치를 계속 경험하며 우리 서비스를 꾸준히 사용하도록 만들어야 합니다.

 

리텐션 단계는 활성화 단계에서 고객이 경험한 핵심 가치를 꾸준히 경험하게 하고 이와 관련된 지표를 정의/관리하는 단계입니다. 리텐션은 제품-시장 적합성(PMF)을 평가하는 지표로서 사용되며 서비스의 성공을 예측할 수 있는 지표입니다. 리텐션이 저조하더라도 고객 유치, 활성화 지표가  나쁘지 않다면 어느 정도까진 성장 곡선을 그릴 수 있습니다. 유입 고객이 많고 우리의 핵심 가치까지 이르는 고객들이 적당히 있기 때문이죠. 그러나 이 고객들을 계속 유지하지 못한다면 계속된 성장은 어렵습니다. 고객이 다시 돌아오지 않을테니까요.

 

리텐션은 단편적인 기능, 단계를 개선함으로써 변화를 가져오기도 어렵고, 결과를 확인하기까지 비교적 오랜 시간이 걸리기 때문에 AARRR 중에서도 개선이 어려운 영역으로 꼽힙니다. 참을성을 요하는 지표인 것 같네요..😅

 

1.1 리텐션 측정 기준

리텐션은 일반적으로 접속을 기준으로 측정합니다 (반드시 그래야하는 것은 아닙니다). 접속, 로그인을 기준으로 리텐션을 측정하는 이유는 사용자가 서비스에 진입하는 것이 유의미한 행동이며, 이러한 행동이 반복되는지 살펴보는 것이 중요하기 때문입니다. 리텐션이 아니더라도 주요 이벤트는 시간 흐름에 따라 반복 여부를 살펴보는 것이 의미가 있습니다.


2. 리텐션 측정의 3가지 방법

2.1. 클래식 리텐션 (Classic Retention)

2.1.1. 개념

[클래식 리텐션] 
특정한 날에 특정 유저군의 몇 %가 다시 접속했는지?
Day N 유저/Day 0에 처음 서비스 이용한 사람

클래식 리텐션은 가장 일반적인 리텐션 측정 방법으로 'Day N 리텐션'이라고도 불립니다.  측정하고자 하는 이벤트가 처음 발생한 날짜(Day 0)를 기준으로, 정해진 시간 간격이 지난 이후(Day 7, Day 14...Day N)에 다시 돌아와서 서비스를 이용하는 비율을 측정하는 방법입니다.  예를 들어 측정하고자 하는 이벤트가 접속인 경우, 처음 접속해 서비스를 이용한 날짜를 Day0으로 잡고 7일 후(Day7), 14일 후(Day14) 등 특정 날짜별로 몇명이 다시 접속했는지 체크하는 것이죠.

 

(그림1) 클래식 리텐션 (출처: 책 그로스해킹 - 양승화님)

 

위의 그림을 예시로 클래식 리텐션을 확인해보겠습니다. 측정 기준은 접속입니다. 사용자1~10까지 10명의 사용자가 같은 날 처음 서비스에 접속했습니다(Day 0). 특정 시간이 지난 이후 몇 퍼센트의 유저가 다시 돌아와 서비스를 이용하는지는 다음과 같습니다. 7일 후엔 10명 중 6명이, 14일 후엔 4명이, 28일 후엔 2명이 사용하여 클래식 리텐션이 60% -> 40% -> 20% 로 하향 곡선을 그리고 있습니다.

  • 클래식 리텐션
    • Day 7 = 6/10 = 60%
    • Day 14  = 4/10 = 40%
    • Day 28 = 2/10 = 20%

2.1.2. 특징

위의 예시를 통해 클래식 리텐션을 산출해보았습니다. 클래식 리텐션은 개념도 쉽고 계산도 간단하다는 장점이 있습니다. 그러나 클래식 리텐션은 특정일의 노이즈에 민감하다는 한계가 있습니다. 그림 1에서 사용자 5는 Day 0에 처음 접속하여 Day 28까지 총 18번을 접속했습니다. 그러나 Day7,14 그리고 Day 28에는 접속하지 않았기 때문에 해당일을 기준으로 한 클래식 리텐션 계산시엔 이용자에 포함되지 않아 수치는 낮아집니다.

 

클래식 리텐션은 특정 날짜의 일시적인 트래픽 급증(프로모션, 광고 효과)이나 일시적인 감소(서버 장애, 주말, 공휴일)에 따라 리텐션 값이 크게 변할 수 있어 왜곡 가능성이 있습니다. 이는 특정일에 접속했는지 여부는 고려하지만 그때까지 꾸준히 반복적으로 접속했는지는 고려하지 않는 클래식 리텐션의 한계를 보여줍니다. 이러한 노이즈를 줄이기 위한 방안으로 여러가지의 DayN 리텐션을 측정하여 평균값을 계산할 수도 있습니다.

 

나의 피트니스 기록

 

클래식 리텐션은 매일 접속해서 사용할 것으로 기대되는 서비스에서 활용하기 적절합니다. 알람, 캘린더, 피트니스, 음악 스트리밍 어플과 같이 짧은 주기로 반복 사용하는 서비스에 적합합니다. 저는 애플 피트니스 어플을 매일 사용합니다. 위의 사진처럼 운동 상태가 기록되는 어플인데요, 해당 서비스의 클래식 리텐션을 구할 때는 '접속' 보다는 '목표 달성 여부'를 기준으로 리텐션을 계산해볼 수도 있지 않을까요?

 

여기서 더 나아가 피트니스 어플에서 클래식 리텐션이 낮다면 그 이유가 무엇일지 생각해 수 있겠습니다. 개인이 설정한 운동 목표가 너무 높거나 목표 달성 시 보상 체계가 제대로 잡혀있지 않다거나 동기 부여가 없을 수 있겠죠. 이러한 문제를 개선하기위해 사용자의 운동량을 고려한 적당한 목표를 제안하거나 목표 달성 시 포인트를 제공하여 보상 체계를 강화하거나 운동 동기부여를 위해 친구와 기록을 공유하는 시스템을 도입하여 리텐션을 높일 수도 있겠습니다.


2.2. 범위 리텐션 (Range Retention)

2.2.1. 개념

[범위 리텐션] 특정 기간에 특정 유저군의 몇 %가 한 번이라도 접속했는지?

(그림2) 범위 리텐션 (출처: 책 그로스해킹 - 양승화님)

 

범위 리텐션은 기본적으로 클래식 리텐션과 동일합니다. 그러나 클래식 리텐션은 개별 날짜를 기준으로 리텐션을 계산한 반면, 범위 리텐션은 특정 기간(7일, 1개월 등)을 기준으로 계산한다는 차이점이 있습니다. 그림 2는 범위 리텐션의 예시입니다. 범위는 아래와 같이 정의할 수 있습니다. 범위 내에 접속한 횟수는 고려하지 않고, 1번이라도 접속했다면 해당 범위에 접속한 것으로 인정합니다. 그림2의 범위 리텐션을 구해보겠습니다. 이때 범위는 1주일을 기준으로 설정했습니다. 범위 리텐션은 Day 0에 가입한 총 유저 대비 특정 기간에 한 번이라도 접속한 유저의 비율로 구할 수 있겠죠.

  • Range 0 (Day0~Day7) = 10/10 = 100%
  • Range 1 (Day8~ Day14) = 8/10 = 80%
  • Range 2 (Day15~Day21) = 6/10 = 60%
  • Range 3 (Day22~Day28) = 4/10 = 40%

2.2.2. 특징

범위 리텐션은 클래식 리텐션과 비슷하기 때문에 단순하고 직관적이라는 장점이 있습니다. 또한 특정한 날을 기준으로 보았던 클래식 리텐션은 노이즈에 민감하다는 단점이 있었는데요, 범위 리텐션은 특정 범위를 기준으로 보기 때문에 노이즈가 크지 않다는 장점이 있습니다. 즉, 우연히 하루정도 접속하지 않았다고 해서 범위 리텐션에 영향을 주지 않습니다. 우연히 접속하지 않은 하루가 포함된 기간 범위 내에 한 번이라도 접속하면 되니까요!

 

그러나 범위 리텐션은 클래식 리텐션과는 반대로 범위 기간이 늘어날 수록 과대 추정(Over-estimated)될 수 있다는 문제가 있습니다. 만약 Range를 30일 단위로 본다면 30일 이내에 한 번이라도 서비스에 접속한 유저는 범위 리텐션에 포함됩니다. 특정 기간 동안 대규모 프로모션이나 마케팅을 통해 한 번 방문한 사용자도 active user로 포함이 되어버리는데, 문제는 해당 유저들이 이후에도 계속 유지될지는 알 수 없습니다.

 

사용 주기가 짧은 서비스에 적합한 클래식 리텐션과는 달리 범위 리텐션은 사용 주기가 길고 주기적인 서비스에 활용될 수 있습니다. 매일 접속하지는 않더라도 주기적으로 사용하는 배달 어플, 은행 어플, OTT 등 해당됩니다.


2.3. 롤링 리텐션 (Rolling Retention)

[롤링 리텐션] 기준일(Day N)을 포함하여 그 이후 한 번이라도 재방문한 유저의 비율

 

롤링 리텐션이 세 가지 리텐션 중 가장 이해가기 어려웠는데요, 쉽게 말씀 드리자면 Day N 이후로도 살아남아있는 유저 비율이라고 생각하면 됩니다. 즉, 마지막 로그인 일시가 Day N 이전인 유저는 모두 이탈했고 Day N을 포함해 그 이후인 유저는 모두 살아남아있다고 생각하는 겁니다. 이는 유저가 최초 로그인 일시~마지막 로그인 일시까지만 활동했다고 가정하는 것이죠.

 

(그림3) 롤링 리텐션 (출처: 책 그로스해킹 - 양승화님)

 

그림3 예시를 보며 같이 공부해보아요!  Day 0에 처음 활동을 시작한 유저들 중 Day 7 이후에도 살아있는 유저 비율을 구해볼까요? Day 0 활동자는 10명입니다. 그리고 Day 7 이후에도 활동한 이력이 있는 유저는 사용자2와 사용자9를 제외한 나머지 8인 입니다. 따라서 Day7 롤링 리텐션은 8/10 = 80% 가 됩니다. Day 14와 Day 28도 구해보겠습니다.

  • Day 14
    • Day 14 이후에도 활동하는 유저 수 = 마지막 로그인이 Day 7 이전인 유저 = 6명 (사용자1,3,4,5,6,8)
    • Day 14 롤링 리텐션 = 6/10 = 60%
  • Day 28
    • Day 28 이후에도 활동하는 유저 수 = 마지막 로그인이 Day 28 이전인 유저 = 2명 (사용자 1,8)
    • Day 14의 롤링 리텐션 = 2/10 = 20%

 

(표1) 리텐션 표 (출처: 데이터리안 / https://datarian.io/blog/rolling-retention)

 

롤링 리텐션을 계산하려면 최초 로그인 + 마지막 로그인 정보가 있어야 합니다. 클래식, 범위 리텐션에 비해 계산에 필요한 데이터가 간단하다는 장점이 있습니다. 그러나 롤링 리텐션은 이상치의 영향이 크고 과대 추정 경향이 있습니다. 왜냐하면 최초 로그인~ 마지막 로그인 기간동안 활동했다고인정하기 때문입니다. 하나의 예시를 더 공부해봅시다.

 

표1을 보면 12/01일에 가입한 유저 5명(A,B,C,D,E)이 있습니다. 이 때 12/03일의 롤링 리텐션을 구해볼까요? A,B,C,D는 12-03일까지 활동했다고 인정됩니다. A의 마지막 로그인 일자는 12/06, B와 C는 12/04, D는 12/06으로 모두 12-03일 이후에도 활동 이력이 있기 때문이죠. 이들은 첫 로그인 일자(12-01)~마지막 로그인 일자까지 활동했다고 인정되는겁니다. 그래서 12-03의 롤링 리텐션은 4/5 = 80%가 됩니다. 여기서 롤링 리텐션의 한계점이 명확히 보입니다. 사용자 D를 보면 12/01에 처음 활동 이후 12/06에 두번째 로그인을 했습니다. 그런데 롤링 리텐션에서는 D가 12/01~12/06까지 모두 활동했다고 인정을 하는겁니다. 이렇게 활동 빈도가 높지 않은 유저도 리텐션에 포함이 되기 때문에 롤링 리텐션은 이상치 영향이 크고 과대 추정 경향이 있다고 볼 수 있습니다.

 

롤링 리텐션은 사용 빈도가 높지 않는 서비스에 유용하게 활용됩니다. 이사, 여행 서비스와 같이 리텐션을 관리해야 하지만 접속 빈도가 드물게 나타나는 서비스에 해당됩니다. 만약 여행 서비스에서 클래식 리텐션을 사용하여 매일 매일의 접속 여부를 확인하고, 리텐션이 낮은 코호트에 푸시 메시지를 보낸다면 오히려 반감을 살 수도 있습니다. 저 역시나 너무 빈번한 여행 서비스의 홍보 메시지로 탈퇴를 해버렸습니다..✈️. 


2.3.1. 세 가지 리텐션 측정 방식 비교

  클래식, 범위 리텐션 범위 리텐션 롤링 리텐션
관점 최초 이벤트가 발생한 이후 시간이 지남에 따라 얼마나 반복적으로 해당 이벤트가 발생하는가?
Day N 이후로도 살아남아있는 유저 비율 측정
필요 데이터 모든 시점 데이터 필요 
최초 로그인+ 마지막 로그인 정보만필요 
특징 과소 추정 과대 추정 과대 추정
사용 서비스 사용 주기가 짧은 서비스
(알람, 캘린더..)
사용 주기가 길고 주기적인 서비스
(배달, 은행, OTT)
사용 빈도가 높지 않은 서비스
(여행, 부동산, 이사)

2.5. 인게이지먼트(Engagement)

Engagement = DAU/MAU

 

위 방법들보다 더욱 간단하게 서비스의 리텐션을 확인하는 방법이 있습니다. 바로 인게이지먼트 지표인데요,  한 달 동안의 Daily Active User 평균을 Monthly Active User로 나눈 값입니다. 이를 통해 유저가 얼마나 서비스를 자주 이용하는지를 측정할 수 있습니다. Engagement는 사용자들이 꾸준히 들어와서 주기적으로 사용하는 서비스에 적합한 지표입니다. 전화, 메신저, SNS 등 클래식 리텐션에 잘 맞는 서비스가 이에 해당합니다.

 

인게이지먼트의 수식을 보다보니 왜 DAU/MAU로 구했는지가 궁금해졌습니다. 생각해보니 한 달 동안 방문하는 유저 중에서 매일 방문하는 유저의 비율을 의미하는 것이었습니다. 한달 동안 우리 서비스를 이용한 총 유저(MAU) 중, 평균적으로 하루에 방문하는 유저의 비율인 것이죠. 예를 들면 30일 한 달 동안의 DAU 평균이 30만명, 한 달동안 총 유저(MAU)가 100만명일 때 Engagment는 30/100= 30%입니다. 이는 한 달 동안 활동한 30만명의 유저들 중에서 하루에 평균적으로 MAU의 30%가 활동한다는 의미입니다.


3. 리텐션 분석 (118쪽)

3.1. 코호트에 따른 차이

퍼널 분석의 전환율과 마찬가지로 리텐션을 분석할 때도 코호트에 따른 차이를 파악하고 그 원인을 규명하는 것이 중요합니다. "우리 서비스의 7일 리텐션은 40%이고, 30일 리텐션은 10% 입니다" 라고 하면 어떤 인사이트도 얻을 수 없으니까요! 리텐션 분석 시 활용할 수 있는 코호트는 다음과 같습니다.

  • 날짜별 코호트
    • 가입 월별, 첫 구매 월별 리텐션을 구할 수 있습니다.
    • 시간의 흐름에 따라 +/-인지 확인이 가능합니다.
  • 유입 채널별 코호트
    • 어떤 채널을 통해 유입된 코호트가 자주 서비스를 사용하는지를 확인할 수 있습니다.

3.2. 리텐션 차트

(그림4) 리텐션 차트 (출처: 책 그로스해킹 - 양승화님) 리

 

리텐션 코호트 분석과 떨어질 수 없는 것이 바로 리텐션 차트입니다. 이는 코호트에 따라 리텐션이 어떻게 움직이는지를 시각화해서 볼 수 있는 차트이고 그림4와 같이 삼각형 모양입니다. 리텐션 차트의 구성요소는 다음과 같습니다.

  • 코호트: 동일 기간 가입, 동일기간 결제로 잡는 경우 많음. (2024.01월 가입자, 2024.02월 가입자..)
  • 볼륨: 각 코호트 크기, 코호트에 속하는 유저수
  • 기간: 유지율을 구분해 보기 위한 날짜 기준. 일/주/월... 사용자들의 평균 방문 주기 고려해 작성
  • 리텐션: 각 코호트별로 집계된 기간별 리텐션

그리고 리텐션 차트를 통해 인사이트를 얻기 위해 다음 질문들에 대한 답을 찾아봐야 합니다.

  • 하나의 코호트 안에서 기간에 따른 리텐션을 봤을 때 추이는 어떠한지? 
    • 리텐션이 급격히 떨어지지 않고 안정되는 지점이 있는지? 대략 어느 정도가 지나야 안정되는지?
  • 서로 다른 코호트의 동일한 기간의 리텐션을 비교하면 어떠한지? 
    • 2020.01월 가입자와 2020.05월 가입자의 M+2 기간의 리텐션은 40%, 52%로 12%의 차이가 있는데 이유가 무엇인지?
  • 기간에 따라 나눈 코호트의 볼륨은 어떻게 달라지고 있는지? 가입자의 증감 추세 및 원인 파악

3.3. 리텐션 개선하기

리텐션은 시점에 따라 크게 2가지로 개선하는 방법을 나눠 생각할 수 있습니다.

 

① 초기에 리텐션이 떨어지는 속도 늦추기

초기에 리텐션이 떨어지는 속도를 늦추는 것은 활성화(Activation) 단계의 영향을 받습니다. 따라서 초기 리텐션 개선을 위해선 서비스 핵심 기능을 사용하는 프로세스를 단계별로 쪼개 살펴보는 것이 좋습니다. 활성화 단계에서 이탈이 많은 경로가 어디인지 살펴보면 초기 유지율이 떨어지는 걸 보완 가능합니다.

 

 리텐션 안정화 이후 기울기를 평평하게 유지하여 일정한 리텐션 유지하기

리텐션 안정화 이후에는 사용자와의 관계 유지가 중요합니다. 정기적 커뮤니케이션 플랜, CRM 마케팅 활동, 주기적인 프로모션이 필요하며 휴면 고객이 복귀할 명분을 만들어주는 리마케팅도 필요합니다. 


4. 정리

리텐션 개선을 위해 중요한 점은 장기적이고 전반적으로 상황을 봐야 한다는 것입니다. 푸시, sms 등을 통해서 일시적인 리텐션과 한 달에 한 번만 활동해도 active user로 집계되는 MAU 수치를 올릴 수는 있습니다. 그러나 과도한 푸시, sms 등을 사용하다보면 서비스와 고객의 커뮤니케이션 피로도가 쌓입니다. 이러한 전략은 단기적으로는 효과가 있을지 몰라도 장기엔 악영향을 미치게 되는 것이죠. 앱 삭제, sns 차단, 회원 탈퇴까지 이를 수 있으니 발송 메시지의 빈도를 조절하여 커뮤니케이션의 피로도를 조절할 필요가 있습니다.

 

AARRR의 세 번째 단계인 Retention을 공부하며 서비스와 데이터의 특징에 따라 서로 다른 리텐션이 적용될 수 있음을 배웠습니다. Activation 단계의 퍼널 분석 전환율과 마찬가지로 리텐션 분석 역시 코호트 분석을 곁들여 봐야 의미가 있음을 깨달으며 다시 한 번 코호트의 중요성을 느꼈습니다. 만약 업무에서 리텐션 분석을 마주치게 된다면 SQL에서 조건에 맞도록 데이터를 처리해야 할테니 쿼리 구조도 한 번 연구해봐야겠습니다. 이만 포스팅 마치겠습니다! 다음엔 AARRR의 네번째 단계인 Revenue로 돌아오겠습니다. 감사합니다.