안녕하세요. 오늘도 데이터 분석 경과를 보고하기위해서 돌아왔습니다. 구비연입니다.
꽤 오래 쉬었는데, 몸도 좀 회복했고 일단 다시 열심히 달리고 있습니다. 지금은 두 번째 슬라이드까지 거의 완성(?)한 상황이며, 지금까지 어떤 고민을 하였고, 고뇌를 하였는지, 결과는 어떻게, 왜 그렇게 나왔는지 공유하는 중간점검의 시간을 가져볼까 합니다. 그 동안 글로만 떼어왔기에 읽느라 심심하셨죠. 그 동안 제가 어떤 고민을 했는지 그날그날 필기를 해왔습니다. 오늘은 그 필기본과 함께 같이 글을 읽어주시죠.
1장

이 녀석은 지금 대시보드를 기획하느라 아주 정신이 쏙 빠져있죠. 어느 것을 어떻게 나눌지 고민하는 흔적이 강하게 느껴집니다. 사람 단위로 분류해야할까? 게시글 단위로 나눌까?의 흔적이 우측 상단에 보입니다. 그러다가 이렇게 마구잡이로 사고를 확장하면 결국 도루묵인 것을 알기에, 중간선을 긋고 차분하게 생각을 정리했습니다.
일단 당장 해야하는 것은 필터링. 진짜 고객들을 정의하기 위해서 확실하게 없앨 수 있는 블랙리스트를 정의했습니다. 봇으로 보이는 user_id, 그리고 들어왔다가 바로 나간 사람들을 걸러내려고 했습니다.
다음으로는 GA4, BigQuery 공부입니다. session의 개념과 user_engagement 이벤트에 대해서 공부했습니다만, 프로젝트 초기때 고민했던 것이 지금이 되어서야 저 두 가지를 명확하게 알게 되었습니다.
2장


크리스마스(?) 그게 무슨 상관. 저는 유입 대시보드에 대해서 생각하고 있었습니다. 유입 대시보드를 기획함에 있어서 가장 중요하게 본 것은 어느 유입 채널을 더 신경써줘야 하는지 방향성을 제시하는 것이 었습니다.
대표적으로 Organic, Direct, Referral이 있는데, 직접 검색창에 주소를 치고 들어오는 Organic 보다는 Direct, Referral에 더 파고들 여지가 있고 발전시킬 요소가 있다고 판단. 조금 더 초점을 맞추어 유입 검색어나, 경로를 명확하게 보여주고 어느 경로를 통해 방문자가 가장 활발히 들어오는지 보여주려고 했습니다.
3장

다음으로 전환 대시보드를 기획하려 했습니다. 이때는 아직 구글에서 수집해주는 데이터를 전혀 의문시 여기지 않고 맹신하는 모습을 보여줍니다. 세션이 무엇인지 정의를 파악하고 아~ 그렇구나 하여 바로 데이터분석에 사용하는 모습. 나중에 이것이 큰 도화선이 되어 결국 원천 테이블을 바닥부터 다시 갈아엎는 대보수작업을 하게 됩니다. 더불어, 전환 대시보드를 준비하면서 상당히 많은 오류가 원 데이터에 잔류해 있음을 확인하여, BigQuery를 하루종일 파고놀면서 데이터클렌징을 한 작업은 별로 안 비밀입니다.
4장

12월 31일이든 뭐든 달립니다. 전환. 약 3일 간의 원천부터 뒤엎는 데이터 클렌징 작업을 거쳐서 드디어 신뢰할만한 데이터를 구축하는데 성공했고, 들어오자마자 나간 사람들을 걸러내주기 위한 기준을 정해주는 작업을 진행하려고 했습니다.
들어오자마자 나간. 이것을 정의하기 위해서, 들어와서 체류한 시간을 정의해줄필요가 있었습니다. 한 사용자가 들어와서 나가기(로 간주되는) 까지의 단위를 세션이라고 부르기 때문에, 정밀한 세션 구분 작업 및 체류 시간 계산을 다시 BigQuery 단계에서 또또다시 정제해주는 작업이 필요했습니다.
5장


12/31에 정확히 독감에 걸려 사경을 해매다 1/8에 겨우 정신을 차리고 분석작업에 재착수.
여기서 드디어 조금 쓸만한 고객정의가 나옵니다. 대문페이지에만 있다가 나간 사람들은 애초에 고객이 아니다. 물론 해당 유저들의 행동을 분석하여 어쩌다가 나갔는지 또 다른 인사이트를 제공할 수 있겠지만, 의뢰인이 그런 것 보다는 잔류한 사람들을 더 궁금해할 것 같아 과감하게 생략하기로 했습니다.
GA4에서 자동으로 방문자가 활성 유저인지 아닌지 구분해줍니다. 하지만 해당 기준으로 분류된 값들은 제 분석에 조금이라도 적용할 수 없다고 판단. 결국 방문자 분류를 위해 새로운 기준을 정의 할 수 밖에 없었고 이 기준을 어떻게 정의하느냐에 골머리를 나름 썩었습니다.
두 번째 페이지에서 보듯, 방문자의 체류시간 분포를 확인하여, 대충 13초 체류하다가 나간(전체의 25%) 사람들을 비활성유저로 취급할까 고민했지만, 대시보드의 인터렉티브함의 장점을 떠올렸고, 4분위수를 참고 지표로써 대시보드에 기입하고 사용자가 활성/비활성 유저의 기준을 스스로 정할 수 있도록 하게끔 설계했습니다.
고객을 정의하고 나니, 해당 활성 고객들에서 드디어 도달한 핵심 지표 Reader들을 솎아내주는 작업이 필요했습니다. 그걸 위한 읽는 작업이 뭔지 정의할 필요가 있겠습니다.
6장


1주일 간 개인적인 아픔이 있어 도저히 분석을 진행할 수 없었습니다.
이 날 문득, 전환 페이지에서 뭔가를 보여줘야 한다는 것에 매몰되어 다시 중요한 것을 놓치고 있다는 생각이 들었습니다. 지표에 다시 매몰된 것은 아닌가? 하는 생각에 생각을 재정의 해줬습니다.
Page 1(유입)에서는 명확히 어느 채널에 가장 유입이 많았는가를 보여주려고 했슥니다. Page 2(전환)에서 방문자를 크게 방문자(Visitor), 체류자(Dweller), 독자(Reader)로 세개로 나눴습니다. 그 중 Visitor에서 Dweller로 넘어가는 단계보다 당연히 Dweller에서 Reader로 넘어가는 단계에 더 힘을 많이 써야한다고 판단하였고. Reader에서도 끝까지 읽은 사람과 도중에 이탈한 사람들로 나눠서 보여주어, 무엇이 인기있고 혹은 없는지 명확하게 보여주는 것을 목표로 삼자! 고 정하고 지금 분석에 임하고 있습니다.
마치며
길고 긴 이번 프로젝트도 거의 끝나가고 있습니다. 그 동안 우여곡절이 많았지만 스스로 가장 발전하고 있다고 생각이 듭니다. 지표정의, 그걸 보기 위한 쿼리 작업, 대시보드 설계까지 뭔가 실제 데이터분석가가 된 느낌입니다. 힘들지만 재밌기도 한 것이 게임만큼이나 데이터 분석을 좋아하는 것 같다고 새삼스레 깨닫습니다. 독감 조심하시고 다음 포스팅에는 대망의 대시보드 결과물로 돌아오겠습니다.
