Что такое Sessions per User (SPU)?
Среднее число сессий на активного пользователя за период.
Формула
SPU = Sessions / Active UsersКак считать
Делим количество сессий на число уникальных активных пользователей.
Зачем нужна
Показывает глубину использования продукта и частоту возвращений.
SQL-запрос
WITH sessions AS (
SELECT COUNT(*) AS sessions_cnt
FROM events
WHERE event_name = 'session_start'
AND event_timestamp >= CURRENT_DATE - INTERVAL '30 day'
),
active AS (
SELECT COUNT(DISTINCT user_id) AS active_users
FROM events
WHERE event_name IN ('session_start', 'app_open', 'feature_use')
AND event_timestamp >= CURRENT_DATE - INTERVAL '30 day'
)
SELECT
sessions_cnt,
active_users,
ROUND(sessions_cnt::decimal / NULLIF(active_users, 0), 3) AS sessions_per_user
FROM sessions, active;