320x100
728x90
두 개념 모두 사용자 여정(User Journey)에 기반하고 있지만, 집중하는 관점이 다름
1. AARRR 프레임워크
1.1. 사용 분야
- 스타트업 성장 전략
- 제품 초기 단계에서의 사용자 분석
- 퍼널 분석(Funnel Analysis)
- 그로스해킹(Growth Hacking)
1.2. 구성 단계 (5단계)
AARRR은 다음과 같은 순서로 구성됩니다.
- Acquisition (획득)
- 사용자가 어떻게 서비스를 알게 되었는가
- 예: 광고 클릭, 검색 유입, SNS 유입
- Activation (활성화)
- 사용자가 첫 긍정적 경험을 했는가
- 예: 회원가입 후 첫 사용, 첫 클릭, 튜토리얼 완료
- Retention (유지)
- 사용자가 지속적으로 재방문/재사용 하는가
- 예: 1주일 후에도 재방문, 푸시 알림 클릭
- Referral (추천)
- 사용자가 다른 사람에게 서비스를 추천하는가
- 예: 친구 초대, 리뷰 작성, 공유
- Revenue (수익)
- 서비스가 수익을 창출하는가
- 예: 유료 전환, 광고 수익, 상품 구매
2. RARRA 프레임워크
2.1. 사용 분야
- 제품이 어느 정도 시장에 안착한 후, 충성도 높은 사용자 기반을 키울 때
- 리텐션 중심 전략 수립
- 기존 고객 강화와 추천 유도에 초점
2.2. 구성 단계 (5단계)
RARRA는 다음과 같은 순서로 구성됩니다.
- Retention (유지)
- 사용자가 계속 제품을 사용하는가
- AARRR보다 리텐션을 가장 먼저 고려
- Activation (활성화)
- 사용자가 빠르게 가치를 느끼는가
- 첫 사용자 경험 개선
- Referral (추천)
- 만족한 사용자가 다른 사용자 유입을 유도하는가
- 자연 유입 증가
- Revenue (수익)
- 추천과 지속 사용으로 인해 수익이 발생하는가
- 단순 유료화가 아닌, 가치 기반 지불 유도
- 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. 실무 팁
- Mixpanel/Amplitude에서는 SQL 없이도 위 KPI들을 GUI로 쉽게 설정하고 대시보드화 가능
- GA4 + BigQuery 연동하면 웹/앱 데이터를 SQL로 바로 분석 가능
- Firebase는 이벤트 기반 앱 분석 + 푸시 알림까지 통합 운영 가능
- 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
- 단계 예시:
- signup
- onboarding_complete
- visit
- purchase
- 주의: 단계별 사용자 수가 감소하는 구조
3. Superset에서 대시보드 만들기 단계 요약
- 데이터 연결
- PostgreSQL / MySQL / BigQuery / SQLite 등 데이터베이스 연결
- 데이터셋 등록
- user_events 테이블을 데이터셋으로 등록
- 차트 생성
- 차트 → 새로 만들기 → 데이터셋 선택 → 차트 유형 선택
- 필터/조건 지정
- 기간, 이벤트 타입, 유입 경로 등
- 대시보드 구성
- 여러 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 | 디바이스 기반 분석 |
'데이터 분석가:Applied Data Analytics' 카테고리의 다른 글
Carrying Capacity(CC) (0) | 2025.04.08 |
---|---|
『100가지 비즈니스 모델 요약 정리』 (0) | 2025.04.08 |
Power BI (0) | 2025.03.31 |
보고서 vs 대시보드 (0) | 2025.03.31 |
Main Quest06_Project_Tableau 태블로 시각화 6-6 (1) | 2025.03.30 |