클래식 N일 리텐션
N-Day Retention
N일 리텐션(N-Day Retention)은 유저가 최초 가입 후 '정확히 N일째 되는 날' 앱에 재방문한 비율을 측정하는 지표입니다. 매일 반복해서 사용하는 데일리 앱(소셜, 게임, 메신저 등)의 핵심 습관형성 주기를 파악하는 데 필수적입니다.
📖 개념 정의 및 실무 적용
클래식 N일 리텐션은 유저가 제품의 핵심 가치를 경험하고 일상적인 습관으로 정착했는지를 평가하는 가장 전통적이면서도 강력한 지표입니다. DAU가 중요한 소셜 미디어, 모바일 게임, 커뮤니케이션 앱에서 유저 이탈 시점을 정확히 포착하는 비효율 방지 솔루션으로 활용됩니다.
이 지표를 통해 특정 마케팅 채널로 유입된 코호트의 질적 차이를 비교하고, 온보딩 프로세스 개선 전후의 성과를 정밀하게 진단할 수 있습니다. 단순한 방문 여부가 아니라 정확히 특정 일자에 재방문했는지를 엄격하게 따지므로 데일리 헤비 유저와 라이트 유저를 구분하는 기준이 됩니다.
SELECT DATEDIFF(day, u.signup_date, e.event_date) AS day_number, COUNT(DISTINCT u.user_id) AS retained_users FROM users u JOIN events e ON u.user_id = e.user_id WHERE e.event_date >= u.signup_date GROUP BY DATEDIFF(day, u.signup_date, e.event_date) ORDER BY day_number;
⚡ 5분 만에 적용하는 실행 스텝
단계: 유저 테이블에서 최초 가입일(signup_date) 데이터를 정의하고 추출합니다.
단계: 이벤트 로그 테이블에서 유저의 활성 이벤트 발생일(event_date)과 조인합니다.
단계: 이벤트 발생일과 가입일의 날짜 차이(DATEDIFF)를 계산하여 N일 차 숫자로 변환합니다.
단계: N일 차별 고유 유저 수(DISTINCT user_id)를 집계하여 전체 가입자 수로 나누어 리텐션 퍼센트를 산출합니다.
🚀 실무자만 아는 한 끗 차이 Pro Tip
⚠️ 흔히 하는 실수 & 주의사항 (삽질 방지)
❓ 자주 묻는 질문 (FAQ)
클래식 리텐션과 언바운디드(Unbounded) 리텐션은 실무에서 어떻게 구분해서 써야 하나요?
클래식 리텐션은 매일 습관적으로 접속해야 하는 메신저나 게임 등 데일리 앱에 적합하며, 언바운디드 리텐션은 주기적으로 접속해도 되는 커머스나 금융 앱에 더 적합합니다.
Day 0 리텐션은 항상 100%가 나와야 하나요?
가입 당일(Day 0)에 앱 내에서 이벤트를 발생시키고 바로 이탈하거나 집계 시각 이슈가 있는 경우 100% 미만으로 나올 수 있으나, 일반적으로 온보딩 완료 직후 이벤트를 잡는다면 100%에 수렴해야 정상입니다.