Afonso_DiazRetention Rate
Updated 2024-07-30
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
›
⌄
with
main as (
select
block_timestamp,
tx_hash,
origin_from_address as user,
nvl(amount_in_usd, amount_out_usd) as amount_usd,
tx_fee,
iff(block_timestamp::date < '2024-03-14', 'Before fee changes', 'After fee changes') as timespan
from arbitrum.defi.ez_dex_swaps
join arbitrum.core.fact_transactions
using (tx_hash, block_timestamp)
where amount_usd <= 1e6
and platform ilike 'uniswap%'
),
user_activity AS (
SELECT
user,
date_trunc('week', block_timestamp) AS date_start
FROM main
GROUP BY user, date_start
)
SELECT
a.date_start AS start_date,
iff(start_date < '2024-03-14', 'Before fee changes', 'After fee changes') as timespan,
COUNT(DISTINCT a.user) AS active_users,
COUNT(DISTINCT b.user) AS retained_users,
(COUNT(DISTINCT b.user) * 100.0 / COUNT(DISTINCT a.user)) AS retention_rate
FROM user_activity a
LEFT JOIN user_activity b
ON a.user = b.user
AND a.date_start = b.date_start + INTERVAL '1 week'
WHERE start_date >= '2023-12-01'
QueryRunArchived: QueryRun has been archived