SQL 퍼널 분석
깔때기는 정의된 인구가 이정표를 통해 어떻게 진행되는지 측정합니다. SQL는 누가 입장하는지, 단계가 순서대로 진행되어야 하는지, 사용자가 진행해야 하는 시간, 개인 또는 계정을 나타내는 ID, 재시도 및 중복 이벤트가 작동하는 방식 등 제품 정의가 정확한 후에만 간단합니다.
이벤트를 행위자당 한 행으로 줄입니다.
WITH events AS (
SELECT account_id, event_name, timestamp_utc
FROM product_events
WHERE timestamp_utc >= now() - INTERVAL '30 days'
),
signups AS (
SELECT account_id, MIN(timestamp_utc) AS signed_up_at
FROM events WHERE event_name = 'signup_completed'
GROUP BY account_id
),
workspaces AS (
SELECT s.account_id, s.signed_up_at,
MIN(e.timestamp_utc) AS workspace_created_at
FROM signups AS s
LEFT JOIN events AS e ON e.account_id = s.account_id
AND e.event_name = 'workspace_created'
AND e.timestamp_utc >= s.signed_up_at
GROUP BY s.account_id, s.signed_up_at
),
account_steps AS (
SELECT w.account_id, w.signed_up_at, w.workspace_created_at,
MIN(e.timestamp_utc) AS first_event_sent_at
FROM workspaces AS w
LEFT JOIN events AS e ON e.account_id = w.account_id
AND e.event_name = 'first_event_sent'
AND e.timestamp_utc >= w.workspace_created_at
GROUP BY w.account_id, w.signed_up_at, w.workspace_created_at
)
SELECT
COUNT(*) AS accounts_seen,
COUNT(signed_up_at) AS signed_up,
COUNT(workspace_created_at) AS created_workspace,
COUNT(first_event_sent_at) AS sent_first_event
FROM account_steps;
각 단계는 계정당 한 행을 유지하고 이전의 유효한 단계와 같거나 이후 시각에 발생한 첫 이정표를 선택합니다. 누락되거나 순서가 잘못된 이정표는 모든 후속 단계를 차단하지만, 나중의 유효한 재시도로 진행할 수 있습니다. 중복 이벤트는 한 번만 집계하며 같은 타임스탬프를 허용합니다. 정해진 기간 내에 진행해야 한다면 최대 전환 기간을 추가하세요.
코호트 창과 관찰 창을 구분하여 유지
쿼리에 어제의 가입이 포함된 경우 해당 계정은 월초의 계정보다 활성화하는 데 시간이 더 짧았습니다. 모든 코호트에 완전한 관찰 창을 허용하거나 최근 코호트에 불완전 라벨을 붙입니다. 모든 이벤트를 동일한 달력 범위로 필터링하면 유효한 이후 중요 시점이 의도치 않게 차단될 수 있습니다.
계정 수준 활성화를 위한 계정 식별자와 개인 수준 행동을 위한 사용자 식별자를 선택하세요. 단계 간에 ID를 전환하지 마십시오. 병합된 계정, 익명 세션, 다시 열린 계정 및 반복 완료가 작동하는 방식을 정의합니다.
항상 백분율 옆에 걸음 수를 표시합니다. 변환 변경은 분자, 분모, 트래픽 혼합 또는 계측에서 발생할 수 있습니다. 테스트된 가입 퍼널 레시피 및 전환율 가이드는 완전한 출발점을 제공합니다. 활성화 후에도 지속되는 행동을 묻는 질문에는 코호트 유지를 사용하세요.