N일 리텐션
N-day Retention
지표
가입한 날로부터 정확히 N일째 되는 하루에 다시 들어온 사용자의 비율로, 매일 쓰는 제품에 습관이 붙었는지 볼 때 씁니다.
등장 배경
쓰던 사람이 계속 쓰는지 알고 싶다는 질문은 오래됐지만, 숫자로 옮기려 하면 늘 같은 자리에서 막혔습니다. 돌아왔다는 것을 언제 확인할지 아무도 정해 두지 않았기 때문입니다. 어떤 담당자는 가입 후 일주일 안에 한 번이라도 들어왔으면 남은 사람으로 셌고, 다른 담당자는 일주일이 지난 시점에 여전히 쓰고 있어야 남은 사람으로 셌습니다. 같은 사용자 500명을 놓고 45퍼센트와 22퍼센트가 동시에 나왔습니다.
그래서 회의는 제품 이야기가 아니라 숫자의 출처를 다투는 자리가 됐습니다. 한쪽이 "지난달보다 리텐션이 올랐습니다" 라고 하면 다른 쪽이 "그건 어떻게 세신 건가요" 하고 되물었고, 정의를 맞추는 데 회의 절반이 지나갔습니다.
N일 리텐션은 이 모호함을 재는 날짜 하나를 못 박아 없앴습니다. 기간 안의 아무 날이 아니라 가입 후 7일째, 30일째처럼 딱 하루만 봅니다. 그 하루에 들어왔으면 1, 아니면 0입니다. 해석의 여지를 없앤 대신 기준이 엄격해져 숫자는 가장 낮게 나옵니다. 매일 열리는 제품이 되려 할 때 어디서 먼저 무너지는지를 잡아내는 것이 이 지표의 역할입니다.
계산 방법
같은 시기에 가입한 사람을 한 덩어리로 묶고, 그중 가입일로부터 정확히 N일째 되는 날 제품에 들어온 사람 수를 그 덩어리 전체 인원으로 나눕니다.
같은 시기에 들어온 사람들을 묶은 덩어리를 코호트라고 부릅니다. 9월 첫째 주에 가입한 500명 같은 단위입니다. 신규와 기존 사용자를 섞어 세면 숫자가 무엇을 뜻하는지 아무도 설명하지 못합니다.
계산은 네 단계입니다.
- 분모가 될 코호트를 정합니다. 9월 1일 하루 동안 가입한 500명처럼 시작일이 같은 사람들을 묶습니다.
- 돌아왔다는 것의 기준을 정합니다. 로그인만 해도 되는지, 문서를 한 번 열어야 하는지, 편집까지 해야 하는지에 따라 같은 제품에서 숫자가 두 배 차이로 벌어집니다. 페이지덱은 문서를 열거나 고친 것을 기준으로 씁니다.
- N을 정합니다. 흔히 쓰는 값은 1일·7일·30일이고, 하루 뒤·한 주 뒤·한 달 뒤에 각각 얼마나 남는지를 봅니다.
- 그 하루에 들어온 사람 수를 코호트 인원으로 나눕니다. 500명 중 7일째에 160명이 들어왔으면 32퍼센트입니다.
여기서 가장 자주 헷갈리는 것이 4번입니다. 7일 리텐션은 1일째부터 7일째까지의 누적이 아니라 7일째 하루만 봅니다. 2일·3일·5일째에 매일 들어왔더라도 7일째에 들어오지 않았으면 0으로 잡힙니다. 그래서 같은 코호트를 재도 N일 리텐션은 다른 방식보다 항상 낮게 나옵니다.
간격은 제품을 원래 얼마나 자주 쓰는 물건인지에 맞춥니다. 협업 문서 툴처럼 일하는 날마다 여는 제품은 일 단위가 맞지만, 1년에 한두 번 쓰는 항공권 예약 서비스를 일 단위로 재면 거의 모든 날이 0입니다. 그런 제품에서는 N을 30일이나 90일로 늘리거나 아예 다른 방식으로 셉니다.
좋은 수준의 기준
숫자 하나만 놓고 높다 낮다를 말할 수 없습니다. 제품마다 쓰는 주기가 다르고 돌아왔다의 기준도 회사마다 달라서, 남의 30퍼센트와 우리 30퍼센트가 같은 것을 가리키지 않습니다. 대신 보는 것은 같은 코호트를 여러 N으로 이어 그렸을 때 나오는 곡선의 모양입니다.
1일·7일·30일을 60·33·30처럼 이어 그렸을 때 떨어지다가 어느 선에서 멈추면, 그 30퍼센트가 이 제품을 계속 쓸 이유를 찾은 사람들의 몫입니다. 반대로 45·14·2처럼 바닥까지 내려가면 아무도 붙들 이유를 못 찾았다는 뜻이고, 이 상태에서는 신규 유입을 아무리 늘려도 같은 속도로 빠져나갑니다. 그래서 실무에서는 값의 크기보다 곡선이 평평해졌는지를 봅니다.
개선 여부는 한 코호트의 등락이 아니라 여러 코호트의 같은 N을 견줘 판단합니다. 6월 가입자의 7일 리텐션이 24퍼센트였고 9월 가입자가 31퍼센트라면 그사이에 무언가 나아진 것입니다. 같은 시기에 들어온 집단끼리 묶어 비교하는 방법 전체를 코호트 분석이라고 부릅니다.
새 기능을 연 직후에 숫자가 튀어 오르는 것은 한 번 걸러 봅니다. 새로워서 잠깐 좋아 보이는 착시를 신기 효과라고 하는데, 2주쯤 지나면 원래 자리로 돌아오는 경우가 많습니다.
실무 용례
"D7이 32퍼센트에서 24퍼센트로 떨어졌어요. 8월 코호트부터 그렇습니다."
가입 후 7일째 리텐션을 줄여 부르는 말이고, 8월에 들어온 사람들부터 무언가 달라졌으니 그때 바뀐 것을 찾자는 뜻입니다.
"D1은 괜찮은데 D7에서 꺾여요. 첫 주에 붙잡을 이유가 없는 거죠."
하루 뒤에는 돌아오는데 일주일을 못 넘긴다는 말이고, 문제를 가입 직후가 아니라 첫 주 경험에서 찾자는 제안입니다.
"우리 제품은 매일 쓰는 게 아니라서 N일로 보면 다 0으로 나와요."
재는 간격이 제품 주기와 맞지 않으니 다른 방식으로 세자는 말입니다.
페이지덱에서는 지현이 월요일마다 코호트 표를 열어 D1·D7·D30 세 줄을 봅니다. 숫자가 눈에 띄게 움직이면 그 코호트가 가입한 주에 무엇이 바뀌었는지부터 되짚습니다. 가입 화면 문구를 고쳤는지, 광고를 새로 돌렸는지, 그 주에 장애가 있었는지를 봅니다.
D7이 떨어진 주에 지현이 찾아낸 것은 대개 제품 안이 아니라 유입 쪽이었습니다. 새 광고로 들어온 사람들이 협업이 아니라 개인 메모 용도로 가입했고, 혼자 문서 하나를 쓴 뒤 일주일 뒤에는 돌아오지 않았습니다. 이런 주에는 제품 대신 광고 문구를 고칩니다.
흔한 오해
7일째에 안 들어왔다는 이유로 그 사람을 떠난 사용자로 읽는 일이 가장 많습니다. 0으로 잡히니 표에서는 이탈과 같은 칸에 들어가 그렇게 읽기 쉽습니다. 하지만 이 지표가 세는 것은 딱 그 하루의 출석이라, 6일째와 8일째에 들어온 사람도 0으로 남습니다. 이걸 이탈로 읽으면 멀쩡히 쓰는 사용자에게 복귀 유도 메일이 나가고, 실제로 떠난 사람이 얼마인지도 부풀려 잡게 됩니다. 떠났는지를 알고 싶으면 처른처럼 떠나는 쪽에서 세는 지표를 따로 봅니다.
다른 회사가 공개한 수치와 나란히 놓고 우열을 가리는 것도 흔합니다. 같은 이름의 지표니 비교해도 될 것 같지만, 상대는 로그인만 해도 돌아온 것으로 셌고 우리는 문서 편집까지 해야 셀 수 있습니다. 기준이 다른 두 숫자를 견주면 잘하고 있는데 못하는 것처럼 보이고, 그 오판 위에서 다음 분기 우선순위가 정해집니다. 비교는 우리 코호트끼리만 합니다.
자주 헷갈리는 용어
| 용어 | 언제 돌아온 것으로 세는가 | N일 리텐션과의 차이 |
|---|---|---|
| 롤링 리텐션 | N일이 지난 뒤 한 번이라도 들어왔으면 | 같은 코호트를 재도 항상 더 높게 나옵니다. 가끔 쓰는 제품에 맞고, 두 값을 나란히 놓고 비교하면 안 됩니다 |
같이 보면 좋은 페이지
마지막 업데이트 2026-09-16