한눈에 보기: 캠페인에 대한 중요한 인사이트를 얻기 위해 일일 및 월간 활성 사용자를 계산하는 방법을 알아보세요.
개요
일일 활성 사용자(DAU) 및 월간 활성 사용자(MAU)는 앱 참여도와 전반적인 사용자 행동을 이해하는 데 있어 핵심 지표입니다. 이 데이터는 사용자의 충성도, 캠페인 성과 및 시간 경과에 따른 성장 추세를 포함하여 활성 사용자 기반을 이해하는 데 유용한 인사이트를 제공합니다.
이 문서에서는 사용자 유입 및 리타겟팅 트래픽을 나타내는 두 개의 Data Locker 로데이터 테이블인 sessions 및 sessions_retargeting에 쿼리를 실행하여 DAU 및 MAU를 계산하는 방법을 설명합니다.
참고
2025년 2월부터 앱스플라이어의 활동 대시보드는 통합(UA 및 리타겟팅) 데이터를 표시합니다. 승인된 알고리즘 조정으로 인해 로데이터와 대시보드 숫자 사이에 약간의 차이가 있을 수 있습니다.
활성 고유 사용자 쿼리 실행
고유 사용자 수를 계산하려면 advertising_id을 쿼리의 기본 식별자로 사용하세요. advertising_id를 사용할 수 없는 경우, appsflyer_id으로 대체하세요. 이 방법은 첫 인스톨 모드로 구성된 앱에만 적용됩니다.
이 모드를 사용하지 않는 앱의 경우 count(distinct appsflyer_id)을 적용하는 것이 좋습니다.
일일 활성 사용자(DAU) 계산
아래 쿼리를 사용하여 하루 동안의 고유 사용자 수를 계산합니다.
DAU용 쿼리 – 사용자 유입(UA)
지정된 날짜의 활성 UA 사용자를 선택합니다.
WITH sessions_cleaned AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND SUBSTR(event_time, 1, 10) = 'YYYY-MM-DD' -- Target date
)
SELECT COUNT(DISTINCT user_id) AS dau_ua
FROM sessions_cleaned;
DAU용 쿼리 – 리타겟팅
지정된 날짜의 활성 리타겟팅 사용자를 선택합니다.
WITH sessions_retargeting_cleaned AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions_retargeting
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND SUBSTR(event_time, 1, 10) = 'YYYY-MM-DD' -- Target date
)
SELECT COUNT(DISTINCT user_id) AS dau_retargeting
FROM sessions_retargeting_cleaned;
DAU용 쿼리 – 통합(UA 및 리타겟팅)
지정된 날짜에 활성 UA 및 리타겟팅 사용자를 선택합니다.
활성 사용자를 완벽하게 포함하려면
테이블 sessions 와sessions_retargeting를
통합해야 합니다. 필드가 다음과 같이 정렬되어 있는지 확인하세요.
app_id, event_time,
advertising_id, 그리고 appsflyer_id. 필요에 따라
스키마를 정상화하여 두 테이블이 일관된
열 이름을 갖도록 하십시오.
WITH ua_sessions AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND SUBSTR(event_time, 1, 10) = 'YYYY-MM-DD' -- Target date
AND is_primary_attribution = TRUE
),
retargeting_sessions AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions_retargeting
WHERE app_id = 'your.app.id.here' -- Same app
AND SUBSTR(event_time, 1, 10) = 'YYYY-MM-DD' -- Same date
),
all_sessions AS (
SELECT * FROM ua_sessions
UNION ALL
SELECT * FROM retargeting_sessions
)
SELECT COUNT(DISTINCT user_id) AS dau_unified
FROM all_sessions;
월간 활성 유저 (MAU) 계산 방법
AppsFlyer 대시보드는 MAU를 두 가지 방식으로 표시합니다.
- 지난 31일 동안 활성 사용자 – 지난 31일 동안 고유 활성 사용자 수.
- 캘린더 월 MAU – 특정 달력월 내에서의 고유 활성 사용자 수.
아래 쿼리는 첫 번째 유형의 MAU를 계산하는 방법을 보여줍니다. 달력월 MAU를 계산하려면 원하는 달과 일치하도록 날짜 범위를 조정합니다.
MAU에 대한 쿼리 – 사용자 유입UA)
지정된 월 동안 활성 UA 사용자를 선택합니다.
WITH sessions_cleaned AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND DATE_DIFF('day', TRY_CAST(SUBSTR(event_time, 1, 10) AS DATE), DATE('YYYY-MM-DD')) <= 31 -- Replace with target end date
)
SELECT COUNT(DISTINCT user_id) AS mau_ua
FROM sessions_cleaned;
MAU에 대한 쿼리 – 리타겟팅
지정된 월 동안 활성 리타겟팅 사용자를 선택합니다.
WITH sessions_cleaned AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions_retargeting
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND DATE_DIFF('day', TRY_CAST(SUBSTR(event_time, 1, 10) AS DATE), DATE('YYYY-MM-DD')) <= 31 -- Replace with target end date
)
SELECT COUNT(DISTINCT user_id) AS mau_retargeting
FROM sessions_cleaned;
MAU에 대한 쿼리 – 통합(UA & 리타겟팅)
지정된 월 동안 활성 UA 및 리타겟팅 사용자를 선택합니다.
활성 사용자를 완벽하게 포함하려면
테이블 sessions 와sessions_retargeting를
통합해야 합니다. 필드가 다음과 같이 정렬되어 있는지 확인하세요.
app_id, event_time,
advertising_id, 그리고 appsflyer_id. 필요에 따라
스키마를 정상화하여 두 테이블이 일관된
열 이름을 갖도록 하십시오.
WITH ua_sessions AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions
WHERE app_id = 'your.app.id.here' -- Replace with your app ID
AND DATE_DIFF('day', TRY_CAST(SUBSTR(event_time, 1, 10) AS DATE), DATE('YYYY-MM-DD')) <= 31 -- Replace with target end date
AND is_primary_attribution = TRUE
),
retargeting_sessions AS (
SELECT DISTINCT
app_id,
COALESCE(advertising_id, appsflyer_id) AS user_id
FROM sessions_retargeting
WHERE app_id = 'your.app.id.here' -- Same app
AND DATE_DIFF('day', TRY_CAST(SUBSTR(event_time, 1, 10) AS DATE), DATE('YYYY-MM-DD')) <= 31 -- Replace with target end date
),
all_sessions AS (
SELECT * FROM ua_sessions
UNION ALL
SELECT * FROM retargeting_sessions
)
SELECT COUNT(DISTINCT user_id) AS mau_unified
FROM all_sessions;