1. 코호트 분석이란?
코호트 분석(Cohort Analysis)은 특정한 공통점을 가진 사용자 그룹(코호트)을 시간의 흐름에 따라 관찰하고, 그 그룹의 행동 변화를 분석하는 방법입니다. 주로 사용자의 첫 방문 날짜, 회원 가입 날짜, 최초 구매일 등 특정 시점을 기준으로 그룹을 나누고, 이후 사용자의 행동 패턴(유지율, 재방문율, 재구매율 등)을 측정하는데 사용됩니다.
예를 들어, 1월에 가입한 사용자들과 2월에 가입한 사용자들의 서비스 지속성과 행동 변화를 각각 따로 비교할 수 있으며, 이는 사용자의 특성이나 마케팅 캠페인의 효과를 이해하는 데 도움을 줍니다.
2. 코호트 분석이 중요한 이유
코호트 분석은 전체 사용자 데이터를 하나의 큰 덩어리로 볼 때 놓칠 수 있는 중요한 트렌드와 문제점을 명확히 발견할 수 있도록 돕습니다. 개별 사용자의 행동 변화가 아닌, 비슷한 시기에 유입된 사용자 집단이 시간이 흐르면서 어떻게 변해가는지를 분석하므로 사용자 유지율 감소나 서비스 이탈 시점을 더 정확하게 파악하고 대응할 수 있습니다.
이를 통해 서비스의 강점과 약점을 명확하게 진단하고 마케팅 전략 및 제품 개선을 효과적으로 수행할 수 있습니다.
3. GA4 BigQuery 데이터로 코호트 분석하기
GA4 데이터를 BigQuery에 연동하면, 제공되는 기본 보고서 이상의 세부적인 분석과 깊이 있는 인사이트를 도출할 수 있습니다. GA4 데이터는 events_*
테이블로 구성되어 있으며, 이를 활용해 보다 자유로운 데이터 분석이 가능합니다.
아래는 사용자들이 서비스에 처음 방문한 날짜를 기준으로 사용자 코호트를 설정하여, 이후 몇 주차까지 유지되는지를 분석하는 예시 쿼리입니다.
-- 사용자의 첫 방문일을 찾기
WITH first_visit AS (
SELECT
user_pseudo_id,
MIN(DATE(event_timestamp, 'Asia/Seoul')) AS first_visit_date
FROM
`your_dataset.events_*`
WHERE
event_name = 'first_visit'
GROUP BY
user_pseudo_id
),
-- 각 사용자의 활동 날짜와 최초 방문일로부터 경과한 주차를 계산
user_activity AS (
SELECT
ev.user_pseudo_id,
DATE(ev.event_timestamp, 'Asia/Seoul') AS activity_date,
fv.first_visit_date,
DATE_DIFF(DATE(ev.event_timestamp, 'Asia/Seoul'), fv.first_visit_date, WEEK) AS weeks_since_first_visit
FROM
`your_dataset.events_*` ev
INNER JOIN
first_visit fv
ON
ev.user_pseudo_id = fv.user_pseudo_id
)
-- 최초 방문일과 경과 주차를 기준으로 사용자 수 집계
SELECT
first_visit_date,
weeks_since_first_visit,
COUNT(DISTINCT user_pseudo_id) AS active_users
FROM
user_activity
GROUP BY
first_visit_date,
weeks_since_first_visit
ORDER BY
first_visit_date,
weeks_since_first_visit;
📌 쿼리 상세 설명
- first_visit 서브쿼리: 각 사용자의 최초 방문일을 식별합니다. ‘first_visit’ 이벤트를 기준으로 그룹화하여 사용자별 가장 빠른 방문일을 구합니다.
- user_activity 서브쿼리: 모든 이벤트에서 사용자의 활동일을 찾아 최초 방문일 대비 몇 주차에 해당하는지를 계산합니다. DATE_DIFF 함수를 활용해 기간을 계산합니다.
- 최종 SELECT 쿼리에서는 최초 방문일별로 각 주차별 유지되는 활성 사용자 수를 계산하여 주간 유지율을 분석할 수 있도록 데이터를 정리합니다.
4. 코호트 분석 이후 이어질 수 있는 분석
코호트 분석으로 얻은 결과를 바탕으로 유지율 하락 구간을 찾았다면, 그 원인을 깊이 있게 탐구해야 합니다.
이때 유용한 분석 방법은 다음과 같습니다.
- 퍼널 분석: 사용자들이 서비스 이용 과정에서 정확히 어느 단계에서 이탈하는지 명확히 하고, 그 단계의 문제점을 개선할 수 있습니다.
- 세그먼트 분석: 유지율이 높은 코호트와 낮은 코호트 간의 특성(성별, 나이, 유입경로 등)을 비교하여 유의미한 차이점을 발견할 수 있습니다.
- 행동 흐름 분석: 서비스 내에서 사용자들이 실제로 어떤 경로로 행동하는지를 분석해 사용성(UX/UI) 개선과 맞춤형 서비스 전략을 설계할 수 있습니다.
코호트 분석은 데이터 분석의 출발점입니다. 지속적인 분석과 개선을 통해 서비스의 장기적인 성과를 높이는 것이 데이터 분석의 진정한 목표입니다.
답글 남기기