Popex404#6 Flow Active Users - Comparison of Users Type
    Updated 2023-04-14
    -- SQL Template for Retention learned at Covalent Alchemist Data BootCamp

    --------------------------------------------------------------------------------------------- NFT
    With NFT_Retention_mau_dau as (
    With daily_active_users as (
    SELECT date_trunc('month', day) as date, avg(active_addresses) as avg_dau
    FROM (
    SELECT date_trunc('day', block_timestamp) as day, count (distinct buyer) AS active_addresses
    FROM flow.core.ez_nft_sales
    GROUP BY day
    )
    GROUP BY date
    ),
    monthly_active_users as (
    SELECT date_trunc('month', block_timestamp) as date, count(distinct buyer) AS mau
    FROM flow.core.ez_nft_sales
    GROUP BY date
    )
    SELECT daily.date as date, (daily.avg_dau/monthly.mau)*100 as stickiness_ratio_mau_dau
    FROM daily_active_users daily
    LEFT JOIN monthly_active_users monthly
    ON daily.date = monthly.date
    ORDER BY date),

    NFT_Retention_mau_wau as (
    -- Have the same name as daily but the data here is weekly
    With daily_active_users as (
    SELECT date_trunc('month', day) as date, avg(active_addresses) as avg_dau
    FROM (
    SELECT date_trunc('week', block_timestamp) as day, count (distinct buyer) AS active_addresses
    FROM flow.core.ez_nft_sales
    GROUP BY day
    )
    GROUP BY date
    ),
    monthly_active_users as (
    Run a query to Download Data