Created
March 23, 2020 18:11
-
-
Save johngruen/4991d754b29c0b451a24a9ca36d9198c to your computer and use it in GitHub Desktop.
Mau/dau/engagement query
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
WITH dates_list AS ( | |
Select * | |
FROM UNNEST(GENERATE_DATE_ARRAY('2020-01-01', CURRENT_DATE())) AS dates | |
), | |
usage_dates AS ( | |
SELECT | |
EXTRACT(date from timestamp) AS date, | |
jsonPayload.fields.fxa_uid AS users | |
FROM | |
`moz-fx-guardian-prod-bfc7.log_storage.stdout` | |
WHERE | |
resource.labels.container_name = 'guardian' | |
AND jsonPayload.type = 'browser.oauth.proxy-token-created' | |
AND jsonPayload.fields.unlimited = @unlimited | |
GROUP BY | |
1,2 | |
ORDER BY | |
2 Desc | |
), | |
dau_calcs AS ( | |
SELECT | |
dates_list.dates as dau_date, | |
COUNT(distinct users) as dau, | |
FROM dates_list | |
INNER JOIN usage_dates | |
ON (usage_dates.date = dates_list.dates) | |
GROUP BY 1 | |
), | |
mau_calcs AS ( | |
SELECT | |
dates_list.dates as mau_date, | |
COUNT(distinct users) as mau, | |
FROM dates_list | |
INNER JOIN usage_dates | |
ON (usage_dates.date <= dates_list.dates) and (usage_dates.date >= date_sub(dates_list.dates, interval 28 day)) | |
GROUP by 1 | |
) | |
SELECT | |
mau_date as date, | |
mau, | |
dau, | |
ROUND(dau_calcs.dau / mau_calcs.mau, 3) as engagement_ratio | |
from mau_calcs | |
INNER JOIN dau_calcs | |
ON (dau_calcs.dau_date = mau_calcs.mau_date) | |
ORDER BY 1 ASC |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment