게임별 커스텀 지표 만들어보기
게임별 커스텀 지표 만들어보기¶
- 각 지표의 샘플 쿼리를 데이터 소스에 등록하고 페이지 소스를 설정하면 애널리틱스에서 특정 게임을 대상으로 지표를 확인할 수 있습니다.
- 커스텀 지표 생성을 위해서는 애널리틱스 - 관리 메뉴, 페이지 소스 메뉴, 데이터 소스 메뉴 권한이 필요합니다.
- 기본적인 커스텀 지표 가이드는 여기를 확인하세요.
- 기본적인 빅쿼리 사용 가이드는 여기를 확인하세요.
기간 AU, NU, NU 비율¶
- 조회 기간 누적 AU, NU, AU 대비 NU 비율입니다.
- 해당 지표는 빅쿼리에서도 조회 가능합니다.
- 지표 생성은 데이터 소스 정의와 페이지 소스 정의 두 단계로 진행됩니다.
단계 1 : 데이터 소스 정의하기¶
- 콘솔 > 애널리틱스 > 지표 관리 > 데이터 소스 메뉴에서 데이터 소스 등록 버튼을 클릭합니다.
- 아래 정보를 선택 및 입력 후 다음을 클릭합니다.
- 선택
- 날짜 구분 : 일간
- 데이터베이스 : BIGQUERY
- 입력
- 데이터소스명 : 기간 AU, NU, NU 비율
- SQL Query 작성
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- GameID : 지표 적용 게임의 앱 센터 GameID
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- 선택
select appidgroup, yyyymmdd_period, au, nu, nu_rate
from( with login_log as
(
select appIdGroup, ifnull(playerId, vid) as playerId, newuser
from `##companyDataset##.t_hive_login_log`
where datetime >= timestamp_sub(timestamp('##FROMDT##'), interval 9 hour)
and datetime < timestamp_add(timestamp_sub(timestamp('##TODT##'), interval 9 hour), INTERVAL 1 day)
and appIdGroup in ("GameID")
and ifnull(playerId, vid) <> 0
qualify row_number()over(partition by checksum order by bigqueryRegistTimestamp desc) = 1
)
select appIdGroup, concat('##FROMDT##',' ~ ','##TODT##') as yyyymmdd_period, count(distinct playerId) as au,
count(distinct case when newUser='Y' then playerId end) as nu,
round(safe_divide( count(distinct case when newUser='Y' then playerId end ),
count(distinct playerId))*100,2) as nu_rate
from login_log
group by appIdGroup,yyyymmdd_period
)
- 축 선택과 값 선택을 지정한 후 다음을 클릭합니다.
- 축 선택 : yyyymmdd_period
- 값 선택 : au, nu, nu_rate
- 각 컬럼은 명칭변경을 통해 원하는 명칭으로 변경할 수 있습니다.
- 각 값은 소수점 없음부터 소수점 세자리까지 설정할 수 있으며, nu_rate는 비율값으로 수치를 자세히 보기 위해 소수점 설정을 권장드립니다.
- 정렬 및 필터는 설정하지 않고, 데이터 소스를 저장합니다.
단계 2 : 페이지 소스 정의하기¶
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴에서 페이지 소스 등록 버튼을 클릭합니다.
- 아래 정보를 입력 및 선택 후 다음을 클릭합니다.
- 입력
- 페이지 제목 : 기간 AU, NU, NU 비율
- 선택
- 축 설정 포함 여부 : 포함
- 데이터 소스 정보 : 기간 AU, NU, NU 비율
- 그 외 항목은 기본값을 사용합니다.
- 입력
- 축과 값의 배치를 설정합니다.
- 배치 좌측 : yyyymmdd_period
- 값 : au, nu, nu_rate
- 값 순서는 드래그&드롭으로 변경 가능하며, 순서에 따라 표 좌측에 먼저 위치하게 됩니다.
- ∑값 위치 : 가로축 위
- 미리보기 버튼을 클릭하여 표가 정상적으로 노출되는지 확인한 후, 페이지 소스를 저장합니다.
- 해당 지표는 게임별 지표에서 특정 게임을 선택한 경우 게임별 지표 > 커스텀 지표 하위에 노출되므로, 지표를 적용할 게임을 선택해야 합니다.
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴로 접근하여, 기간 AU, NU, NU 비율 소스의 ‘커스텀 지표 적용 위치’를 지표 적용 게임으로 선택합니다.
- 애널리틱스 > 게임별 지표 > 커스텀 지표에 접근하여 기간 AU, NU, NU 비율 지표를 확인할 수 있습니다.
월별 고착도(Stickiness)¶
- 월별 MAU 대비 일평균 DAU 비율입니다.
- 고착도(Stickiness)에 대한 자세한 설명은 여기서 확인할 수 있습니다.
- 해당 지표는 빅쿼리에서도 조회 가능합니다.
- 지표 생성은 데이터 소스 정의와 페이지 소스 정의 두 단계로 진행됩니다.
단계 1 : 데이터 소스 정의하기¶
- 콘솔 > 애널리틱스 > 지표 관리 > 데이터 소스 메뉴에서 데이터 소스 등록 버튼을 클릭합니다.
- 아래 정보를 선택 및 입력 후 다음을 클릭합니다.
- 선택
- 날짜 구분 : 월간
- 데이터베이스 : BIGQUERY
- 입력
- 데이터 소스명 : 월별_고착도
- SQL Query 작성
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- GameID : 지표 적용 게임의 앱 센터 GameID
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- 선택
select appidgroup, yyyymm, avg_dau, au, stickiness
from (
with login_log as (
select appIdGroup, substr(cast(timestamp_add(dateTime, interval 9 hour) as string), 1, 10) as yyyymmdd, substr(cast(timestamp_add(dateTime, interval 9 hour) as string), 1, 7) as yyyymm, ifnull(playerId, vid) as playerId
from `##companyDataset##.t_hive_login_log`
where datetime >= timestamp_sub(timestamp(concat('##FROMMM##' ,'-01')), interval 9 hour)
and datetime < timestamp(date_add(datetime(timestamp_sub(timestamp(concat('##TOMM##' ,'-01')), interval 9 hour)), interval 1 month))
and appIdGroup in ("GameID")
and ifnull(playerId, vid) <> 0
qualify row_number()over(partition by checksum order by bigqueryRegistTimestamp desc) = 1
)
select appIdGroup, yyyymm, round(avg_dau,2) as avg_dau, au, ifnull(round(safe_divide(avg_dau, au)*100, 2), 0) as stickiness
from
(
select appIdGroup, yyyymm, au, avg(dau) as avg_dau
from
(
select appIdGroup, yyyymm, count(distinct playerId) over(partition by appIdGroup, yyyymmdd) as dau,count(distinct playerId) over(partition by appIdGroup, yyyymm) as au
from login_log
)
group by appIdGroup, yyyymm, au
)
)
- 축 선택과 값 선택을 지정한 후 다음을 클릭합니다.
- 축 선택 : yyyymm
- 값 선택 : avg_dau, au, stickness
- 각 컬럼은 명칭변경을 통해 원하는 명칭으로 변경할 수 있습니다.
- 각 값은 소수점 없음부터 소수점 세자리까지 설정할 수 있으며, stickness는 비율값으로 수치를 자세히 보기 위해 소수점 설정을 권장드립니다.
- 정렬 설정 후 데이터 소스를 저장합니다.
- yyyymm : 내림차순
단계 2 : 페이지 소스 정의하기¶
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴에서 페이지 소스 등록 버튼을 클릭합니다.
- 아래 정보를 입력 및 선택 후 다음을 클릭합니다.
- 입력
- 페이지 제목 : 월별_고착도
- 선택
- 축 설정 포함 여부 : 포함
- 데이터 소스 정보 : 월별_고착도
- 그 외 항목은 기본값을 사용합니다.
- 입력
- 축과 값의 배치를 설정합니다.
- 배치 좌측 : yyyymm
- 값 : avg_dau, au, stickiness
- 값 순서는 드래그&드롭으로 변경 가능하며, 순서에 따라 표 좌측에 먼저 위치하게 됩니다.
- ∑값 위치 : 가로축 위
- 미리보기 버튼을 클릭하여 표가 정상적으로 노출되는지 확인한 후, 페이지 소스를 저장합니다.
- 해당 지표는 게임별 지표에서 특정 게임을 선택한 경우 게임별 지표 > 커스텀 지표 하위에 노출되므로, 지표를 적용할 게임을 선택해야 합니다.
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴로 접근하여, 월별_고착도 소스의 ‘커스텀 지표 적용 위치’를 지표 적용 게임으로 선택합니다.
- 애널리틱스 > 게임별 지표 > 커스텀 지표에 접근하여 월별_고착도 지표를 확인할 수 있습니다.
주별 고착도(Stickiness)¶
- 주별 WAU 대비 일평균 DAU 비율입니다.
- 고착도(Stickiness)에 대한 자세한 설명은 여기서 확인할 수 있습니다.
- 해당 지표는 빅쿼리에서도 조회 가능합니다.
- 지표 생성은 데이터 소스 정의와 페이지 소스 정의 두 단계로 진행됩니다.
단계 1 : 데이터 소스 정의하기¶
- 콘솔 > 애널리틱스 > 지표 관리 > 데이터 소스 메뉴에서 데이터 소스 등록 버튼을 클릭합니다.
- 아래 정보를 선택 및 입력 후 다음을 클릭합니다.
- 선택
- 날짜 구분 : 일간
- 데이터베이스 : BIGQUERY
- 입력
- 데이터 소스명 : 주별_고착도
- SQL Query
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- GameID : 지표 적용 게임의 앱 센터 GameID
- 아래 샘플 쿼리를 붙여 넣은 후, GameID를 수정합니다.
- 선택
select appidgroup, yyyymmdd_period, avg_dau, au, stickiness
from
(
with login_log as (
select appidgroup, yyyymmdd, monday, sunday,concat(monday,' ~ ',sunday) as yyyymmdd_period, playerId
from
(
select appIdgroup, yyyymmdd, date_sub(date(yyyymmdd), interval if(extract(dayofweek from yyyymmdd)=1,7,extract(dayofweek from yyyymmdd)-1)-1 day) as monday, date_sub(date(yyyymmdd), interval if(extract(dayofweek from yyyymmdd)=1,7,extract(dayofweek from yyyymmdd)-1)-7 day) as sunday, playerId
from
(
select appIdGroup, date(substr(cast(timestamp_add(dateTime, interval 9 hour) as string), 1, 10)) as yyyymmdd, ifnull(playerId, vid) as playerId
from `##companyDataset##.t_hive_login_log`
where datetime >= timestamp_sub(timestamp('##FROMDT##'), interval 9 hour)
and datetime < timestamp_add(timestamp_sub(timestamp('##TODT##'), interval 9 hour), INTERVAL 1 day)
and appIdGroup in ("GameID")
and ifnull(playerId, vid) <> 0
qualify row_number()over(partition by checksum order by bigqueryRegistTimestamp desc) = 1
)
)
where monday >= date('##FROMDT##')
and sunday <= date('##TODT##')
)
select appIdGroup, yyyymmdd_period, round(avg_dau,2) as avg_dau, au, ifnull(round(safe_divide(avg_dau, au)*100, 2), 0) as stickiness
from
(
select appIdGroup, yyyymmdd_period, au, avg(dau) as avg_dau
from
(
select appIdGroup, yyyymmdd_period, count(distinct playerId) over(partition by appIdGroup, yyyymmdd) as dau,count(distinct playerId) over(partition by appIdGroup, yyyymmdd_period) as au
from login_log
)
group by appIdGroup, yyyymmdd_period, au
)
)
- 축 선택과 값 선택을 지정한 후 다음을 클릭합니다.
- 축 선택 : yyyymmdd_period
- 값 선택 : avg_dau, au, stickness
- 각 컬럼은 명칭변경을 통해 원하는 명칭으로 변경할 수 있습니다.
- 각 값은 소수점 없음부터 소수점 세자리까지 설정할 수 있으며, stickness는 비율값으로 수치를 자세히 보기 위해 소수점 설정을 권장드립니다.
- 정렬 설정 후 데이터 소스를 저장합니다.
- yyyymmdd_period : 내림차순
단계 2 : 페이지 소스 정의하기¶
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴에서 페이지 소스 등록 버튼을 클릭합니다.
- 아래 정보를 입력 및 선택 후 다음을 클릭합니다.
- 입력
- 페이지 제목 : 주별_고착도
- 선택
- 축 설정 포함 여부 : 포함
- 데이터 소스 정보 : 주별_고착도
- 그 외 항목은 기본값을 사용합니다.
- 입력
- 축과 값의 배치를 설정합니다.
- 배치 좌측 : yyyymmdd_period
- 값 : avg_dau, au, stickiness
- 값 순서는 드래그&드롭으로 변경 가능하며, 순서에 따라 표 좌측에 먼저 위치하게 됩니다.
- ∑값 위치 : 가로축 위
- 미리보기 버튼을 클릭하여 표가 정상적으로 노출되는지 확인한 후, 페이지 소스를 저장합니다.
- 해당 지표는 게임별 지표에서 특정 게임을 선택한 경우 게임별 지표 > 커스텀 지표 하위에 노출되므로, 지표를 적용할 게임을 선택해야 합니다.
- 콘솔 > 애널리틱스 > 관리 > 페이지 소스 메뉴로 접근하여, 주별_고착도 소스의 ‘커스텀 지표 적용 위치’를 지표 적용 게임으로 선택합니다.
- 애널리틱스 > 게임별 지표 > 커스텀 지표에 접근하여 주별_고착도 지표를 확인할 수 있습니다.