사용가이드

서비스 고착도 (DAU/MAU) 한 번에 계산하기

사용자가 얼마나 자주 우리 서비스를 사용하고 있을까요?

September 8, 2022
Lea Lim
DAU/MAU = (일일 활성 사용자 수 / 월 활성 사용자 수) *100


alt text



DAU나 MAU를 비교하고 두 지표의 비율을 계산하면 서비스의 고착도를 더 자세하게 들여다볼 수 있습니다. 이 비율이 높을수록 사용자가 서비스를 더 자주 사용한다는 것을 나타냅니다.

DAU/MAU 지표를 계산하기 전에 DAUMAU 를 먼저 계산해주세요.

Notes: 대부분의 앱이나 소프트웨어의 서비스 고착도는 평균 10% 미만입니다. 업종이나 제품에 따라 비율은 다를 수 있으니 참고해 주세요!


이번 템플릿에서는 가상 B2B SaaS 스타트업인 Awesome Company의 데이터베이스를 활용하여 데이터보드를 만들어보겠습니다. DAUMAU 템플릿에서 구한 숫자를 활용해서 두 지표의 비율을 계산할 수 있습니다.

아웃코드에서는 10분 만에 DAU/MAU와 필요한 설명이 담겨있는 데이터보드를 만들 수 있습니다.

샘플 MySQL 데이터베이스


Awesome Company의 MySQL 데이터베이스는 이렇게 구성되어 있습니다.

alt text

DAU/MAU를 계산하기 위해서는 아래의 데이터가 필요합니다.

  • log-in date
  • user id
SQL에서 DAU/MAU를 계산하는 법

DAU를 측정하기 위해서는 login_history 테이블의 user_id와 created_at가 필요합니다.

이렇게 만들어진 데이터보드는 팀원들과도 공유할 수 있습니다.

아래 쿼리를 복사 붙여넣기하여 사용해보세요!

WITH daily
AS
  (
           SELECT   date_format(created_at, "%Y-%m-%d") AS day,
                    date_format(created_at, "%M %Y")    AS month,
                    count(*)                            AS dau
           FROM     login_history
           GROUP BY date_format(created_at, "%Y-%m-%d"),
                    date_format(created_at, "%M %Y")), monthly
AS
  (
           SELECT   date_format(created_at, "%M %Y") AS month,
                    count(user_id)                   AS mau
           FROM     login_history
           GROUP BY date_format(created_at, "%M %Y"))
  SELECT daily.day,
         daily.dau,
         monthly.mau,
                concat(round(daily.dau / monthly.mau * 100, 1), '%') AS 'DAU/MAU'
  FROM   daily
  JOIN   monthly
  ON     daily.month = monthly.monthorder BY daily.day DESC;

데이터를 더 활용하고 싶으신가요?
  • 서비스 고착도를 찾는 것도 의미 있지만, 비율이 감소 또는 증가하고 있는 이유를 찾아내는 것이 더 중요합니다.
  • 데이터를 어떻게 더 효율적으로 활용할 수 있는지, 여기서 사용사례들을 확인해보세요
팀원과 공유하고 워크플로우 자동화하기

아웃코드를 통해 실시간으로 필요한 데이터와 지표를 확인하고 분석할 수 있습니다.

  • 데이터보드와 테이블을 팀원들과 공유해 보세요.
  • 아웃코드의 간편한 자동화 기능을 통해 실시간 DAU/MAU를 슬랙이나 이메일로 받아보세요.