일일 및 월간 활성 사용자(Daily Active Users 및 Monthly Active Users) 계산

한눈에 보기: 캠페인에 대한 중요한 인사이트를 얻기 위해 일일 및 월간 활성 사용자를 계산하는 방법을 알아보세요.

개요

일일 활성 사용자(DAU) 및 월간 활성 사용자(MAU)는 앱 참여도와 전반적인 사용자 행동을 이해하는 데 있어 핵심 지표입니다. 이 데이터는 사용자의 충성도, 캠페인 성과 및 시간 경과에 따른 성장 추세를 포함하여 활성 사용자 기반을 이해하는 데 유용한 인사이트를 제공합니다.

이 문서에서는 사용자 유입 및 리타겟팅 트래픽을 나타내는 두 개의 Data Locker 로데이터 테이블인 sessionssessions_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 및 리타겟팅 사용자를 선택합니다.

활성 사용자를 완벽하게 포함하려면 테이블 sessionssessions_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를 두 가지 방식으로 표시합니다.

  1. 지난 31일 동안 활성 사용자 – 지난 31일 동안 고유 활성 사용자 수.
  2. 캘린더 월 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 및 리타겟팅 사용자를 선택합니다.

활성 사용자를 완벽하게 포함하려면 테이블 sessionssessions_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;