RFM 분석
한 줄 정의
고객을 얼마나 최근에(Recency), 얼마나 자주(Frequency), 얼마나 많이(Monetary) 샀는지 세 가지로 점수를 매겨 나누는 고객 세분화 방법입니다. 카탈로그 같은 직접 마케팅 업계에서 널리 쓰이기 시작했습니다.
계산식
R(최근성) = 기준일 − 마지막 구매일 (일 수가 작을수록 좋음)
F(빈도) = 정해진 기간 안의 구매 횟수
M(금액) = 정해진 기간 안의 구매 금액 합계
→ R·F·M 각각을 구간으로 나눠 점수를 매기고, 세 점수 조합으로 세그먼트를 정함
점수 구간은 정해진 표준이 없습니다. Optimove는 지표마다 4개 구간(4×4×4 = 64개 조합, 3개 구간이면 27개)을 권하고, 위키백과는 1~10점 척도나 "90일 이내 / 91~365일 / 365일 초과" 같은 범주 방식을 소개합니다. 자료마다 1점이 최고인 곳도, 최저인 곳도 있으니 보고서에 방향을 적어 둡니다.
예시 (기준일 2026년 10월 31일, 최근 12개월 데이터, 3점이 가장 좋음):
| 점수 | R (마지막 구매 후) | F (구매 횟수) | M (구매 금액) |
|---|---|---|---|
| 3 | 30일 이내 | 5회 이상 | 50만 원 이상 |
| 2 | 31~90일 | 2~4회 | 15만~50만 원 미만 |
| 1 | 91일 이상 | 1회 | 15만 원 미만 |
| 고객 | 마지막 구매 | 횟수 | 금액 | R-F-M | 해석 |
|---|---|---|---|---|---|
| A | 12일 전 | 8회 | 72만 원 | 3-3-3 | 최우수 고객 |
| B | 45일 전 | 3회 | 21만 원 | 2-2-2 | 중간층 |
| C | 200일 전 | 6회 | 64만 원 | 1-3-3 | 우수 고객이었는데 뜸해짐(이탈 위험) |
| D | 5일 전 | 1회 | 9만 원 | 3-1-1 | 막 들어온 신규 |
검산: A의 1회 평균 구매액은 M ÷ F = 72만 ÷ 8 = 9만 원입니다(Optimove 설명처럼 M을 F로 나누면 평균 구매 금액). C는 R만 1점이고 F·M이 3점이라, 점수 합(7점)만 보면 B(6점)보다 높지만 지금 가장 먼저 붙잡아야 할 고객입니다. 그래서 합계보다 조합으로 봅니다.
쉽게 풀어 말할 때
"단골인지 아닌지를 세 가지로 봐요. 최근에 왔나, 자주 오나, 많이 쓰나. 셋 다 높으면 VIP고, 예전엔 자주 많이 샀는데 요즘 안 오면 '떠나려는 단골'이라 먼저 연락해야 하는 분이에요."
업계 말로 말할 때
- "RFM 돌려 보니까 1-3-3 세그가 지난 분기보다 늘었어요. 윈백 메시지 먼저 이쪽으로 나가겠습니다."
- "3-1-1은 첫 구매 고객이라 할인보다 2회차 구매 유도 시나리오로 보내는 게 맞을 것 같아요."
- "M 구간은 객단가가 업종마다 달라서, 저희 데이터 분위수로 다시 끊었습니다."
실무 팁
- 기준일과 기간을 먼저 고정합니다. R은 기준일에 따라, F·M은 집계 기간(최근 6개월? 12개월?)에 따라 값이 바뀝니다. 매번 같은 기준으로 돌려야 세그먼트 이동을 비교할 수 있습니다.
- 합계 점수 하나로 줄이지 않습니다. 3-1-1(신규)과 1-3-1(오래된 소액 단골)은 둘 다 5점이지만 보낼 메시지가 완전히 다릅니다. 조합을 몇 개 그룹(최우수, 신규, 이탈 위험 등)으로 묶어 이름을 붙여 씁니다.
- 과거 기반이라는 한계를 압니다. Optimove는 RFM이 세 변수만 보고 과거 행동에 기반해 미래 반응을 정확히 예측하지 못할 수 있다고 지적하고, 위키백과는 우연히 좋아 보이는 세그먼트가 있을 수 있으니 다른 데이터로 검증하라고 권합니다. 캠페인 결과로 세그먼트별 반응률을 꼭 확인합니다.
헷갈리기 쉬운 말
확인 퀴즈
위 예시 기준표(3점이 가장 좋음)로 볼 때, 마지막 구매가 150일 전이고 최근 12개월 동안 7회, 80만 원을 산 고객의 R-F-M은?
정답과 풀이 보기
정답: 2번. 150일은 91일 이상이라 R = 1, 7회는 5회 이상이라 F = 3, 80만 원은 50만 원 이상이라 M = 3입니다. 1번과 4번은 R을 잘못 매긴 경우이고, 3번은 점수 방향을 거꾸로 읽은 경우입니다.