[통계] AARRR: Activation

jul ee·2025년 4월 23일

데이터 성장기

목록 보기
61/139

Activation: 프로덕트의 핵심 가치를 경험하는 단계

Activation(활성화)은 서비스별로 정의는 다를 수 있지만, 일반적으로 Acquisition 단계에서 유입된 사용자가 제품의 핵심 기능을 직접 경험했는지를 확인하는 과정이다.

가입만 하고 떠나는 사용자와 실제로 서비스를 써보는 사용자를 구분할 수 있는 지표이기도 하다.

일반적으로 회원가입 이후 7일 이내의 행동 분석을 통해 제품의 핵심 가치를 얼마나 빠르게 전달했는지를 측정하며, 전환율(CVR)과 같은 지표를 사용한다.


Activation이 중요한 이유

  • 많은 사용자가 가입 이후 아무 행동 없이 이탈하는 경우가 많다.
  • 서비스를 한 번이라도 경험한 사용자는 유지율(Retention)이 높아질 가능성이 크다.

따라서 Activation을 제대로 분석하면 다음 단계인 Retention, Referral, Revenue로 이어지는 핵심 전환점이 된다.

💡 체류 시간(TS, Time spent)
: 프로덕트에서 소요한 시간 = 마지막 페이지 접속 시간 - 첫페이지 접속 시간

💡 전환율(CVR, Conversion Ratio)
: 프로덕트가 제공하는 가치에 도달한 비율 = (상품 구매 수) / (서비스 총 방문자 수)

CVR은 일반적으로 Acquisition 이후 Revenue 사이의 핵심 전환율 지표로 사용되며, Activation 단계에서는 '핵심 기능 경험율'처럼 별도의 정의를 사용하는 경우가 많다.



1.가상의 Activation 데이터 생성

사용자가 회원가입 후 며칠 내에 검색을 했는지를 분석하기 위해, 아래와 같이 데이터를 구성했다.

  • signup_date: 회원가입 날짜
  • first_search_date: 첫 검색 날짜
  • purchase_amount: 추후 구매 분석을 위한 금액 정보
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# 가상의 데이터 생성
np.random.seed(42)
num_users = 100

data = {
    'user_id': range(1, num_users + 1),
    'signup_date': pd.date_range(start='2024-10-01', periods=num_users, freq='D'),
    'first_search_date': pd.date_range(start='2024-10-02', periods=num_users, freq='D') +
                         pd.to_timedelta(np.random.randint(0, 10, size=num_users), unit='D'),
    'purchase_amount': np.random.randint(0, 100000, size=num_users)
}

df = pd.DataFrame(data)
| user_id | signup_date | first_search_date | purchase_amount |
|---------|-------------|-------------------|------------------|
| 1       | 2024-10-01  | 2024-10-08        | 78603            |
| 2       | 2024-10-02  | 2024-10-06        | 52256            |
| 3       | 2024-10-03  | 2024-10-11        | 89135            |


2. Activation 지표 계산

정량적인 Activation 지표를 만들기 위해서는 명확한 기준이 필요하다.

해당 예시에서는 "가입 후 7일 이내에 첫 검색을 했는가?"를 기준으로 Activation 여부를 판단한다. Activation의 기준은 ‘회원가입 후 7일 이내 첫 검색 여부’로 설정한다.

  • is_activated : 조건: 첫 검색이 회원가입 후 7일 이내면 활성화로 간주
  • total_users : 총 사용자수
  • activated_users: 활성화된 사용자수
  • Activation Rate: 활성화 %

Activation Rate = (7일 이내 검색한 사용자 수) / (전체 사용자 수)

# 가입일로부터 7일 이내 첫 검색 시 True로 간주
df['is_activated'] = (df['first_search_date'] - df['signup_date']).dt.days <= 7

total_users = len(df)
activated_users = df['is_activated'].sum()
activation_rate = activated_users / total_users

print(f"총 사용자 수: {total_users}")
print(f"Activation된 사용자 수: {activated_users}")
print(f"Activation Rate: {activation_rate:.2%}")
총 사용자 수: 100
Activation된 사용자 수: 62
Activation Rate: 62.00%
  • 전체 사용자 중 62%가 제품을 실제로 경험한 활성 사용자로 판단된다.
  • 반대로 38%는 유입되었지만 아무 행동 없이 이탈한 상태다.

이탈률을 줄이고 활성화 비율을 높이기 위해 초기 온보딩이나 안내 메세지를 개선 등을 고려해 볼 수 있다.



3. Activation 현황 시각화

plt.figure(figsize=(8, 5))
df['is_activated'].value_counts().plot(kind='bar', color=['skyblue', 'orange'])
plt.title('Activation Status')
plt.xticks(ticks=[0, 1], labels=['Not Activated', 'Activated'], rotation=0)
plt.xlabel('Activation Status')
plt.ylabel('Number of Users')
plt.show()

시각화를 통해 비활성 사용자 비중을 직관적으로 파악할 수 있고, Activation된 사용자만을 타겟으로 후속 마케팅을 시행할 수도 있다.



4. Activation 여부에 따른 구매 금액 분석

Activation된 사용자와 아닌 사용자 간 구매 행동 차이를 분석하여, Activation의 기준이 실제 전환율에 의미 있는지를 확인해야 한다.

# 사용자 그룹 분리
activated_df = df[df['is_activated'] == True]
non_activated_df = df[df['is_activated'] == False]

# 평균 구매 금액 비교
avg_purchase_activated = activated_df['purchase_amount'].mean()
avg_purchase_non_activated = non_activated_df['purchase_amount'].mean()

print(f"Activation된 사용자의 평균 구매 금액: {avg_purchase_activated:.2f} 원")
print(f"Activation되지 않은 사용자의 평균 구매 금액: {avg_purchase_non_activated:.2f} 원")
Activation된 사용자의 평균 구매 금액: 55826.39 원
Activation되지 않은 사용자의 평균 구매 금액: 55457.42 원

두 그룹 간 구매 금액 차이는 크지 않지만, Activation된 사용자가 더 높은 평균 구매액을 기록했다.

단일 지표보다는 다른 전환 행동(장바구니 추가, 첫 구매 등)과 병행하여 분석하면 더 의미 있는 기준을 만들 수 있다.




지금까지 가입 후 첫 행동(검색)을 기준으로 Activation을 정의했고, 활성 사용자 비율을 계산하고 행동 차이를 분석해 보았다. Activation 단계는 단지 가입 유저 수를 세는 것이 아니라, 제품의 진짜 가치를 경험한 사용자 비율을 측정하는 것이 핵심이다.

서비스 특성에 따라 Activation의 기준은 달라질 수 있다. 하지만 어떤 기준이든, 그 정의가 명확하고 전환 행동과 연결될수록 실질적인 인사이트를 제공하게 된다.


다음 글에서 Retention, Revenue와 연결해 추가 분석을 이어갈 예정이다.
profile
AI에 관심을 가지고, 데이터로 가치를 만들어 나가는 과정을 기록합니다.

0개의 댓글