This document discusses daily active users (DAU) and monthly active users (MAU) as metrics for measuring user engagement on a site or app. It defines DAU and MAU, explains that DAU/MAU shows what percentage of monthly users are active on a given day, and that a higher ratio generally indicates more user loyalty and stickiness. The document also provides tips on calculating DAU/MAU ratios from Google Analytics data over a rolling 28-day period, and shows examples of plotting and comparing these metrics over time.
2. Some metrics
Page metrics
time on page
exit rate
scroll-to-bottom
Session metrics
visit duration
pageviews per visit
User metrics
sessions per user
# multi-session users
More compound metrics
Return visits within x days
DAU/MAU and Average Active Days
3. What is DAU/MAU ?
Definition:
DAU (Daily Active Users)
MAU (Monthly Active Users)
Hence:
DAU / MAU = percentage of monthly active users that we see active this day
4. What does it say?
https://mixpanel.com/help/platform/tutorials/dau-mau
DAU/MAU is a common metric used to measure stickiness (i.e. how engaged your users are).
It's derived by dividing DAU (Daily Active Users) by MAU (Monthly Active Users).
http://www.startupdefinition.com/dau-over-mau
The ratio of Daily Active Users to Monthly Active Users. This metric is used to measure the
depth of engagement of a company's users.
5. High = good (mostly)
Same users visit often
Loyal visitors
Sticky Site
For games, content-sites, community sites, auction sites.. when you want habit or loyalty, you
want high DAU/MAU rates.
Low DAU/MAU rates?
Customer service pages, .. ? ..
6. Average DAU/MAU and ”AAD”
http://techcrunch.com/2009/10/29/how-to-measure-the-true-stickiness-and-success-of-a-facebook-app/
[An Average] [..] DAU/MAU ratio of 50% would mean that the average user of your app is
using it 15 out of 30 days that month. [ correction mine ]
The sum of all DAU/MAU ratio’s in a period: Let’s call that “Average Active Days”: AAD
AAD / [number of days] = Average DAU/MAU
sum(DAU day 1, .., DAU day n) / MAU = 15
sum(DAU day 1 / MAU, … DAU day n / MAU) = 15
sum(DAU day 1 / MAU, … DAU day n / MAU) / n = 15/30 = 50%
7. So, how to calculate in Google Analytics?
Static (once for a period)
period = 28 days (4 whole weeks)
Query 1: users per day (28 rows)
Query 2: users per period (1 row)
DAU / MAU for each day = Q1 day 1 / Q2 … Q1 day n / Q2
AAD = sum(Q1) / Q2
8. So, how to calculate in Google Analytics?
Rolling (useful for segmented traffic (e.g. New Users), or to correct for period before peaks:
period = 28 days (4 whole weeks)
Query 1 28x (for every day in period): users per day (28 rows per query)
use only 1 row per query
Query 2 28x (for every day in period): users per period (1 row per query)
9. Automate it (in R)
library(rga)
i <- "12345" # Google Analytics View ID
mau <- ga$getData(i, start.date = s, end.date = e,
metrics = "ga:users", dimensions = "",
samplingLevel = "HIGHER_PRECISION")
dau <- ga$getData(i, start.date = s, end.date = e,
metrics = "ga:users", dimensions = ”ga:date",
samplingLevel = "HIGHER_PRECISION")
10. Automation is useful for rolling..
dau.rolling <- data.frame()
for (day in seq(from = period.end – 27, to = period.end, by=1) {
q <- ga$getData(i, start.date = day, end.date = day + 27,
metrics = "ga:users", dimensions = "ga:date"
segment = "gaid:-101") #multi-session users (built-in)
# add the row we want
dau.rolling <- rbind(dau.rolling, q[ which(q$date == day),])
}
11. Plot it in ggplot
Multi-Session users compared
to ALL traffic.
Logically, this differs.
Also plotted: the Average
DAU/MAU (which is AAD)
Source: not-so-sticky website
Missing: absolute numbers
12. All sessions vs Customers: Big difference
(Same site, all users vs. UID view)
14. Comments / Discussion
Would YOU use DAU/MAU? Is it useful?
How would you communicate what it means?
Useful segments to compare?
BTW: script available for R-lovers, ask me @zjuul