Classic Retention은 일/주/월간 특정일을 단위로 계산을 했다면 Range Retention은 날짜를 구간별로 묶어 Retention 계산을 진행한다.
Day 0 ~ Day N가 있을 [0, N]을 나누는 M개의 partition에 대해 각 partition에 해당하는 날에 방문하였으면 Retention 계산에 포함시킨다. 이때, 각 Partition은 동일한 길이의 기간으로 정한다.
유저 | Day 0 | Day 1 | Day 2 | Day 3 | Day 4 | Day 5 | Day 6 |
---|---|---|---|---|---|---|---|
A | O | O | O | O | O | O | |
B | O | O | |||||
C | O | O |
이 사례에서 Day 0를 제외하고 2일씩 구간을 나누어 보면 다음과 같이 계산된다.
Day 0 | Day 1~2 | Day 3~4 | Day 5~6 | |
---|---|---|---|---|
기간내 방문자 수 | 3 | 2 | 2 | 1 |
Range Retention(%) | 100 | 66.6 | 66.6 | 33.3 |
기간을 묶어 계산하기 때문에 Range Retention은 Noise에 강하다고 볼 수 있다. 이용자가 하루정도 쉬더라도 Retention에 영향을 미치지 않기 때문이다. 그래서 서비스의 이용주기가 길거나 규칙적인 경우 사용한다.