데이터 분석가:Applied Data Analytics

AARRR vs RARRA

데이터분석 2025. 4. 4. 10:31
320x100
728x90

 

 

두 개념 모두 사용자 여정(User Journey)에 기반하고 있지만, 집중하는 관점이 다름

1. AARRR 프레임워크

1.1. 사용 분야

  • 스타트업 성장 전략
  • 제품 초기 단계에서의 사용자 분석
  • 퍼널 분석(Funnel Analysis)
  • 그로스해킹(Growth Hacking)

1.2. 구성 단계 (5단계)

AARRR은 다음과 같은 순서로 구성됩니다.

  1. Acquisition (획득)
    • 사용자가 어떻게 서비스를 알게 되었는가
    • 예: 광고 클릭, 검색 유입, SNS 유입
  2. Activation (활성화)
    • 사용자가 첫 긍정적 경험을 했는가
    • 예: 회원가입 후 첫 사용, 첫 클릭, 튜토리얼 완료
  3. Retention (유지)
    • 사용자가 지속적으로 재방문/재사용 하는가
    • 예: 1주일 후에도 재방문, 푸시 알림 클릭
  4. Referral (추천)
    • 사용자가 다른 사람에게 서비스를 추천하는가
    • 예: 친구 초대, 리뷰 작성, 공유
  5. Revenue (수익)
    • 서비스가 수익을 창출하는가
    • 예: 유료 전환, 광고 수익, 상품 구매

2. RARRA 프레임워크

2.1. 사용 분야

  • 제품이 어느 정도 시장에 안착한 후, 충성도 높은 사용자 기반을 키울 때
  • 리텐션 중심 전략 수립
  • 기존 고객 강화와 추천 유도에 초점

2.2. 구성 단계 (5단계)

RARRA는 다음과 같은 순서로 구성됩니다.

  1. Retention (유지)
    • 사용자가 계속 제품을 사용하는가
    • AARRR보다 리텐션을 가장 먼저 고려
  2. Activation (활성화)
    • 사용자가 빠르게 가치를 느끼는가
    • 첫 사용자 경험 개선
  3. Referral (추천)
    • 만족한 사용자가 다른 사용자 유입을 유도하는가
    • 자연 유입 증가
  4. Revenue (수익)
    • 추천과 지속 사용으로 인해 수익이 발생하는가
    • 단순 유료화가 아닌, 가치 기반 지불 유도
  5. Acquisition (획득)
    • 추천 및 자연 유입을 바탕으로 효율적인 신규 사용자 획득
    • 마케팅 비용 최소화

3. AARRR vs. RARRA 비교 표

구분 AARRR RARRA
주 사용 시기 제품 초기 성장 단계 제품이 시장에 안착한 후
핵심 목표 사용자 획득 중심 성장 사용자 유지 중심 성장
시작 단계 Acquisition (유입) Retention (유지)
사용자 흐름 유입 → 활성화 → 유지 → 추천 → 수익 유지 → 활성화 → 추천 → 수익 → 유입
마케팅 전략 퍼포먼스 마케팅 중심 바이럴/제품 중심 성장 전략
장점 빠른 유입 증가 및 실험 가능 고객 충성도 강화 및 자연 성장
단점 유입에 치중, 이탈률 높을 수 있음 초기 성과 도출까지 시간이 걸림

단계별 KPI(핵심성과지표) 예시

1. AARRR 단계별 KPI 예시

단계 설명 주요 KPI 지표
Acquisition (획득) 사용자가 어떻게 유입되었는지 - 방문자 수- 신규 가입자 수- 유입 채널별 전환율- 광고 클릭률 (CTR)- SEO 트래픽
Activation (활성화) 첫 사용 시 긍정적 경험을 했는지 - 가입 후 첫 실행 비율- 튜토리얼 완료율- 첫 로그인 후 주요 기능 사용률- Onboarding 완료율
Retention (유지) 재방문 또는 지속 사용 여부 - DAU/WAU/MAU- 리텐션율 (1일/7일/30일)- 세션 지속 시간- 이탈률 (Churn Rate)
Referral (추천) 다른 사람에게 추천하는지 - NPS (순추천지수)- 초대 코드 사용 수- 공유 수 (SNS, 메신저 등)- 사용자 리뷰 수
Revenue (수익) 수익이 발생하는지 - ARPU (가입자당 평균 매출)- LTV (고객 생애 가치)- 결제 전환율- 반복 결제율

 


2. RARRA 단계별 KPI 예시

단계 설명 주요 KPI 지표
Retention (유지) 기존 사용자가 계속 사용 중인지 - 리텐션율 (1일/7일/30일)- DAU/MAU 비율- 세션 빈도- 사용자의 활동 주기
Activation (활성화) 제품을 빠르게 이해하고 사용하는지 - 첫 기능 사용까지 소요 시간- Onboarding 완료율- 신규 사용자 첫 주간 활동률- 기능 활성화율
Referral (추천) 사용자가 자발적으로 퍼뜨리는지 - NPS 점수- 사용자 추천률- 초대 링크 클릭 수- 바이럴 루프 비율 (1명이 초대한 사용자 수)
Revenue (수익) 지속 사용/추천으로 인한 매출 - 구독 전환률- 반복 결제율- Upselling 전환율- LTV
Acquisition (획득) 바이럴 및 자연유입으로 확보되는 유입 - 오가닉 유입률- 추천 유입 비율- CAC (고객 획득 비용) 감소율- 마케팅 비용 대비 유입 수

 


3. KPI 핵심 차이 요약

구분 AARRR RARRA
KPI 초점 처음부터 끝까지 퍼널 전환율 추적 재사용 + 추천 중심 전환 유도
주요 지표 유입 수, 첫 사용 전환율, 유료 전환율 등 리텐션율, 추천 활동 수, LTV 중심
마케팅 측정 광고성과, 유입수 기반 자연유입, 추천 기반 성장률
지표 운영 전략 채널별 퍼포먼스 측정과 실험 중심 제품 자체의 충성도 및 경험 최적화 중심

그럼 KPI를 실제 측정할 수 있는 도구들과 SQL로 계산하는 방법 은 뭘까?


1. KPI 측정 도구별 요약

도구 주요 특징 활용 가능 KPI 비고
Google Analytics (GA4) 웹/앱 방문자 분석 유입, 활성화, 세션, 이탈률 웹 서비스 기반에 적합
Mixpanel 이벤트 기반 사용자 행동 분석 클릭, 전환 퍼널, 리텐션 분석 AARRR 전반 분석에 유리
Amplitude 행동 기반 분석 및 사용자 세그먼트 활성화, 리텐션, LTV RARRA에 최적화된 도구
Firebase 모바일 앱 분석 세션, 푸시 반응률, 전환 앱 기반 서비스에 강점
Looker, Superset, Metabase BI 도구, SQL 기반 시각화 SQL로 정의한 모든 KPI 자체 DB와 연동 필요
BigQuery 대규모 데이터 쿼리 및 분석 모든 KPI 직접 계산 가능 GA, Firebase 데이터도 연동 가능

2. 주요 KPI SQL 기반 계산 예시

모든 예시는 user_events라는 테이블을 기준으로 구성하고, 아래 필드를 포함한다고 가정

  • user_id, event_type, event_timestamp, referrer, revenue

2.1. Acquisition: 유입 사용자 수

SELECT
  COUNT(DISTINCT user_id) AS new_users,
  DATE(event_timestamp) AS date
FROM user_events
WHERE event_type = 'visit'
GROUP BY date
ORDER BY date;

2.2. Activation: 온보딩 완료율

sql

SELECT
  COUNT(DISTINCT CASE WHEN event_type = 'onboarding_complete' THEN user_id END) * 1.0 /
  COUNT(DISTINCT user_id) AS activation_rate
FROM user_events
WHERE DATE(event_timestamp) BETWEEN '2025-03-01' AND '2025-03-31';

2.3. Retention: 7일 후 재방문율 (Day-1 Cohort)

sql

WITH first_visits AS (
  SELECT user_id, MIN(DATE(event_timestamp)) AS signup_date
  FROM user_events
  WHERE event_type = 'signup'
  GROUP BY user_id
),
day7_returns AS (
  SELECT DISTINCT e.user_id
  FROM user_events e
  JOIN first_visits f ON e.user_id = f.user_id
  WHERE DATE(e.event_timestamp) = DATE_ADD(f.signup_date, INTERVAL 7 DAY)
)
SELECT
  COUNT(DISTINCT day7_returns.user_id) * 1.0 /
  COUNT(DISTINCT first_visits.user_id) AS day7_retention_rate
FROM first_visits
LEFT JOIN day7_returns ON first_visits.user_id = day7_returns.user_id;

2.4. Referral: 추천 코드 사용자 수

sql

SELECT
  COUNT(DISTINCT user_id) AS referred_users
FROM user_events
WHERE event_type = 'signup'
  AND referrer IS NOT NULL;

2.5. Revenue: 사용자별 평균 매출 (ARPU)

sql

SELECT
  SUM(revenue) / COUNT(DISTINCT user_id) AS ARPU
FROM user_events
WHERE revenue > 0;

3. 실무 팁

  1. Mixpanel/Amplitude에서는 SQL 없이도 위 KPI들을 GUI로 쉽게 설정하고 대시보드화 가능
  2. GA4 + BigQuery 연동하면 웹/앱 데이터를 SQL로 바로 분석 가능
  3. Firebase는 이벤트 기반 앱 분석 + 푸시 알림까지 통합 운영 가능
  4. SQL 지표는 BI 도구와 연계하면 Superset/Looker에서 시각화 가능

KPI별로 SQL 분석을 하기 위한 Table 구조 설계 예시와, 그 데이터를 바탕으로 Apache Superset에서 대시보드를 만드는 예시

1. KPI 분석용 테이블 구조 설계 예시

아래는 AARRR / RARRA 분석에 공통적으로 활용 가능한 기본 테이블 구조 예시.
대부분의 KPI는 이 구조만으로도 계산 가능.

1.1. user_events 테이블

컬럼 이름 타입 설명
event_id STRING 이벤트 고유 ID
user_id STRING 사용자 고유 ID
event_type STRING 발생한 이벤트 유형 (signup, visit, onboarding_complete, purchase, referral, ...)
event_timestamp DATETIME 이벤트 발생 시각
referrer STRING 추천한 사용자 ID (Referral 시 사용)
revenue FLOAT 수익이 발생한 경우 해당 금액
device STRING 디바이스 정보
channel STRING 유입 경로 (organic, ad, email, social, ...)

장점: 이 테이블 하나로 거의 모든 KPI를 계산 가능
확장 가능: 세부 이벤트 속성은 JSON 형태로 저장 가능 (event_properties 컬럼 추가)


2. Superset에서 KPI 대시보드 구성 예시

Superset에서는 위와 같은 테이블을 데이터셋으로 등록한 후, 다음과 같은 차트를 만들 수 있어.


2.1. Acquisition 차트: 유입 사용자 수 추이

  • 차트 유형: Line Chart
  • Metrics: COUNT_DISTINCT(user_id)
  • Time Column: event_timestamp
  • Filter: event_type = 'visit'
  • Granularity: Day or Week

2.2. Activation 차트: 온보딩 완료율

  • 차트 유형: KPI (Big Number with Trendline)
  • Metric:
  • COUNT(DISTINCT CASE WHEN event_type = 'onboarding_complete' THEN user_id END) /
    COUNT(DISTINCT CASE WHEN event_type = 'signup' THEN user_id END)
  • Filter: 최근 30일

2.3. Retention 차트: 주간 리텐션 Cohort

  • 차트 유형: Cohort Chart
  • Event: visit
  • User ID Column: user_id
  • Time: event_timestamp
  • Group by: 가입 주차 기준으로 재방문한 주차 표시

2.4. Referral 차트: 추천 사용자 수 추이

  • 차트 유형: Bar Chart
  • Metrics: COUNT_DISTINCT(user_id)
  • Filters: referrer IS NOT NULL
  • Time Column: event_timestamp

2.5. Revenue 차트: ARPU (가입자당 평균 수익)

  • 차트 유형: KPI (Big Number)
  • Metric:
  • SUM(revenue) / COUNT(DISTINCT user_id)

2.6. 사용자 퍼널 (Funnel 차트)

  • 차트 유형: Funnel
  • 단계 예시:
    1. signup
    2. onboarding_complete
    3. visit
    4. purchase
  • 주의: 단계별 사용자 수가 감소하는 구조

3. Superset에서 대시보드 만들기 단계 요약

  1. 데이터 연결
    • PostgreSQL / MySQL / BigQuery / SQLite 등 데이터베이스 연결
  2. 데이터셋 등록
    • user_events 테이블을 데이터셋으로 등록
  3. 차트 생성
    • 차트 → 새로 만들기 → 데이터셋 선택 → 차트 유형 선택
  4. 필터/조건 지정
    • 기간, 이벤트 타입, 유입 경로 등
  5. 대시보드 구성
    • 여러 KPI 차트를 배치해서 하나의 페이지로 구성

4. 보너스: Superset KPI 대시보드 구성 예시 (섹션 구성)

섹션 이름 포함 차트 예시
Acquisition 일별 신규 유입 추이, 유입 채널 비율
Activation 온보딩 완료율, 첫 사용 전환율
Retention 리텐션 Cohort, DAU/MAU 추이
Referral 추천 사용자 수, NPS 추이
Revenue ARPU, LTV 추이, 결제 사용자 비율
Funnels 사용자 전환 퍼널 차트

아래는 Superset에서 사용하는 SQL 쿼리나 필터 조건

1. Retention 분석 SQL 쿼리

1.1. retention_1 / retention_7 비율

sql
복사편집
SELECT
  COUNT(CASE WHEN retention_1 = TRUE THEN userid END) * 1.0 / COUNT(*) AS retention_1_rate,
  COUNT(CASE WHEN retention_7 = TRUE THEN userid END) * 1.0 / COUNT(*) AS retention_7_rate
FROM cookie_cats_Data_final;

1.2. version 별 리텐션 비교

sql
복사편집
SELECT
  version,
  COUNT(CASE WHEN retention_1 = TRUE THEN userid END) * 1.0 / COUNT(*) AS retention_1_rate,
  COUNT(CASE WHEN retention_7 = TRUE THEN userid END) * 1.0 / COUNT(*) AS retention_7_rate
FROM cookie_cats_Data_final
GROUP BY version;


2. Activation 분석 SQL 쿼리

2.1. 평균 sum_gamerounds (첫 활성화 지표로 활용)

sql
복사편집
SELECT
  AVG(sum_gamerounds) AS avg_gamerounds,
  AVG(log_sum_gamerounds) AS avg_log_gamerounds
FROM cookie_cats_Data_final;

2.2. 유저 활동 시간대별 활성화 지표

sql
복사편집
SELECT
  activity_time,
  AVG(sum_gamerounds) AS avg_gamerounds
FROM cookie_cats_Data_final
GROUP BY activity_time
ORDER BY avg_gamerounds DESC;


3. Revenue 분석 SQL 쿼리

3.1. ARPU (사용자당 평균 매출)

sql
복사편집
SELECT
  SUM(total_revenue) / COUNT(*) AS ARPU
FROM cookie_cats_Data_final;

3.2. 유료 사용자 전환율

sql
복사편집
SELECT
  COUNT(CASE WHEN paid_user = TRUE THEN userid END) * 1.0 / COUNT(*) AS paid_user_rate
FROM cookie_cats_Data_final;


4. Superset 필터 조건 예시

Superset에서 차트를 만들 때 아래 조건들을 필터로 지정하면 분석에 유용.

필터 항목 조건 예시 설명
version gate_30, gate_40 A/B 테스트 그룹 비교
paid_user TRUE 또는 FALSE 유료 사용자 필터링
retention_1 TRUE 다음날 방문한 사용자만
activity_time night, morning, afternoon 시간대별 분석
device_type mobile, desktop, tablet 디바이스 기반 분석