brunch

You can make anything
by writing

C.S.Lewis

by 쏘카 Dec 22. 2020

구글 빅쿼리와 태블로로 마케팅 대시보드 자동화하기

만드는 사람도 보는 사람도 편해지는 데이터

쏘카와 같은 앱 기반의 서비스, 특히 B2C e-commerce 비즈니스 기업에는 방대한 양의 데이터가 넘쳐흐른다. 이 데이터를 어떻게 잘 활용하는지가 사업의 성패와도 연결되는데, 데이터가 기반이 되어야 유저가 우리의 서비스를 어떻게 이용하고 있는지 그 행태를 파악할 수 있고, 또 구매 전환이 이루어지지 않는 이유도 분석할 수 있기 때문이다.


다만 수백만의 유저가 이용하는 서비스이다 보니 실시간으로 발생하는 데이터의 양은 정말 어마어마하다. 이 데이터를 업무에 잘 활용하기 위해서는 무수히 쏟아지는 데이터 속에서 보다 가치 있는 정보를 발굴하는 것이 중요한데, 이를 위해 필요한 것이 바로 대시보드이다.



중요하지만 복잡한 그 이름, 데이터


CRM 마케터로 일하다 보면 본인이 필요해서, 혹은 누군가의 요청에 의해 마케팅 대시보드 작업을 산발적으로 수행하게 된다. 대시보드는 KPI에 잘 도달하고 있는지 점검하고 올바른 의사결정을 하기 위해 매우 중요한 도구이지만, 대시보드를 만드는 전 단계인 데이터 추출 · 가공 작업은 매우 복잡하고 시간도 많이 소요되는 과정이다.


나 역시 이러한 대시보드 작업을 필요할 때마다 산발적으로 진행하다가, 업무 효율을 높이기 위해 마케팅 대시보드 자동화를 진행했다. MAU/WAU, 방문/신규, 실적, 마케팅 채널별 수신 동의율, 쏘카패스(쏘카의 구독 서비스) Growth Accounting 등 주요 지표들을 한 판으로 볼 수 있게 시각화 및 자동화 한 대시보드를 만든 것이다.


이 대시보드를 마케팅본부뿐만 아니라 전사에 공유하니, 각 지표의 현황을 파악하고 싶은 사람은 이 대시보드를 참고하여 매일 오전 업데이트되는 데이터를 확인하고 자신의 업무에 활용할 수 있게 되었다. 나 역시 데이터 관련 업무 부하가 줄어들어 다른 업무에 집중할 수 있는 시간적 여유를 갖게 되었다.


내 경험을 바탕으로, 데이터를 다루는 다른 마케터들도 대시보드 업무 부하가 줄어들기를 바라며 이 글을 통해 대시보드 자동화 과정을 다뤄보려고 한다. 다양한 마케팅 지표 중 대표적인 지표인 MAU(월간 순수 운행 완료 회원 수, Monthly Active User)를 가지고, 구글 빅쿼리와 태블로를 활용하여 어떻게 데이터 추출·가공·시각화를 진행했는지 설명해보겠다.



대시보드에 들어갈 정보 정하기


대시보드에 담을 정보는 사용자의 관점에서 어떤 정보가 필요한지 고민하고, 또 서비스의 특성을 고려해서 정하는 것이 중요하다. 여러 가지 지표를 작업하다 보면, 작업자가 보고 싶었던 데이터만을 기준으로 삼아 정보를 담는 오류에 빠지기 쉬우니, 지표별 주 사용자와 피드백을 활발히 주고받으면서 수정·보완해 나가야 한다.


MAU 대시보드도 사용자가 어떤 정보를 필요로 하는지를 중심에 두고 작업을 진행했다. 사실 순수하게 MAU만 집계하는 일은 크게 복잡하지 않다. 해당 월에 운행을 완료한 멤버의 아이디를 확인한 후 중복 값을 제외하면 되기 때문이다. 하지만 우리는 MAU를 확인함과 동시에 해당 월에 우리의 서비스를 이용한 이용자의 속성도 알고 싶었다. 이 유저가 처음 쏘카를 사용하는 사람인지, 아니면 자주 사용하는 사람인지, 또는 정말 오랜만에 다시 우리의 서비스를 이용하게 된 사람인지 등 이용자의 속성까지 함께 파악해야 보다 업무에 유용하게 사용할 수 있는 데이터가 되기 때문이다.


MAU 대시보드 샘플



이를 확인하기 위해서는 위와 같은 형태의 MAU 대시보드가 필요할 것이다. 이 MAU 대시보드 샘플은 월 별로 첫 사용한 이용자가 많았는지, 쏘카를 자주 타던 이용자가 많았는지, 또는 오랜만에 돌아온 이용자가 많았는지 확인할 수 있도록 리텐션 주기(직전 사용 건과 일수 차이)에 따라 구분해서 집계했다. 이렇게 하면 특정 월에 발생한 MAU의 증감이 어떤 리텐션 주기를 가진 이용자들의 분포 변화로 인해 발생했는지 확인할 수 있다.

 

이렇게 대시보드에 담을 정보를 정했다면, 다음은 구글 빅쿼리를 사용해서 대시보드에 필요한 데이터를 추출·가공할 차례다.



대시보드 자동화 1. 구글 빅쿼리로 데이터 추출·가공하기


우선 구글 빅쿼리가 무엇인지에 대해 설명이 필요할 것 같다. 구글 빅쿼리는 페타바이트*급 데이터 웨어하우스로 데이터 조회, 가공, 분석이 가능한 클라우드 기반 데이터베이스이다.

* 페타바이트: 페타는 10의 15조로 1,000조를 뜻한다. 1페타바이트는 1,024테라바이트이다.


빅쿼리를 업무에 활용하며 느낀 가장 큰 장점은 R이나 Python 같은 프로그래밍 언어를 사용하지 않고도 대용량 데이터의 조회 및 가공 작업을 매우 빠르게 처리할 수 있다는 점이다. 빅쿼리 하나만으로도 데이터 업무의 전반적인 사이클을 단축시킬 수 있으니, 아직 빅쿼리를 도입하지 않았다면 꼭 경험해보기를 바란다.


만들고자 하는 대시보드에 바로 사용할 수 있는 소위 ‘예쁜 데이터’는 존재하지 않는다. 따라서 여러 테이블과 컬럼에 존재하는 raw data를 업무에 필요한 최종 데이터로 변환하는 가공 단계를 꼭 거쳐야 한다. 이때 구글 빅쿼리는 빛을 발한다. 구글 빅쿼리는 대부분의 데이터를 가공할 수 있는 다양한 함수와 연산자를 제공하기 때문이다. 구글 빅쿼리에서 제공하는 함수 및 연산자에 대한 자세한 내용은 아래 링크를 통해 확인할 수 있다.


구글 빅쿼리 함수&연산자 알아보기


운행 정보 raw data



우리가 보고자 하는 ‘리텐션 주기에 따라 집계된 MAU 대시보드’는 위와 같은 운행 정보 raw data를 구글 빅쿼리로 가공해서 탄생한 최종 데이터를 기반으로 만들어진다.


당월 사용자가 쏘카를 첫 사용한 것인지 혹은 며칠 만에 재사용한 것인지 구분하여 집계할 수 있도록, 운행정보 raw data를 갖고 구글 빅쿼리의 함수와 연산자를 사용하여 대시보드를 위한 최종 데이터로 가공해 보자.


구글 빅쿼리를 이용해 위와 같은 과정을 거치면 대시보드에 사용할 최종 데이터가 만들어진다.


가공을 끝낸 운행 정보 데이터



이제 운행 정보 raw data가 회원 별로 월 별 첫 사용 건 시점이 언제인지, 직전 사용 건과 일수 차이가 얼마나 나는지 위와 같이 정리가 되었다. 빅쿼리로 데이터를 가공했으면 이제 이 데이터를 보기 좋게 시각화하는 과정이 필요하다.



대시보드 자동화 2. 태블로 데이터 연결 및 시각화하기


태블로는 다양한 데이터 소스에 연결하고 이를 분석하여, 대시보드나 리포트를 생산하는 데이터 시각화 플랫폼이다. 태블로에 구글 빅쿼리 데이터를 연결하는 방법은 태블로 홈페이지에 자세하게 설명되어 있다.


태블로에 구글 빅쿼리 연결하는 방법 알아보기


데이터를 연결했다면 이제 새 사용자 지정 SQL을 열어 가공한 최종 데이터의 추출 쿼리를 작성한다. 이때 주의해야 하는 점은 주석으로 달아둔 코드가 있다면 실행이 되지 않기 때문에 주석은 모두 삭제해야 한다는 점이다. (이 사실을 몰랐을 때, 코드에는 문제가 없는데 실행이 되지 않아 몇 십분을 허비했던 기억이 있다..)


나는 구글 빅쿼리를 통해 대부분의 데이터 가공을 진행하기 때문에, 태블로에서는 새 사용자 지정 SQL만 단일로 사용하는 편이다. 태블로에서 데이터를 테이블 단위로 불러오는 기능을 제공하기도 하지만, 분석에 불필요한 칼럼까지 모두 불러와지기 때문에 잘 사용하지 않는다.


데이터 양이 적거나 반드시 실시간으로 업데이트되어야 하는 대시보드가 아니라면, 데이터 연결은 추출 방식을 사용하는 것이 좋다. 만약 대용량 데이터를 실시간 연결 방식으로 해 놓으면, 대시보드를 작업할 때 수시로 실시간 데이터 업데이트가 이루어져 작업 속도가 느려질 뿐만 아니라, 접속할 때마다 실시간으로 데이터를 불러오기 때문에 대시보드 자체가 느려진다. 추출 연결 방식을 선택한다면 얼마나 주기적으로 데이터를 업데이트할지 설정할 수 있기 때문에 필요에 따라 원하는 일정을 선택하면 된다. 이 업데이트 일정은 서버에 게시할 때 설정할 수 있다.


빅쿼리와 태블로 데이터를 연결한 화면



MAU는 당월 기준으로 member_id를 고유값으로 카운트한다. 전월 대비 인원수 차이와 증감률은 카운트(고유member_id) 측정값 오른쪽 클릭 > 테이블 계산 편집 > 특정 차원은 월 단위, 기준은 이전으로 선택하면 값을 얻어 낼 수 있다. 정확한 숫자 확인이 주 목적이라면 단순하게 텍스트 테이블만 표현하면 된다.


완성된 MAU 대시보드 - 월별 순수 운행 완료 수, 전월 대비 인원수/증감률을 볼 수 있다.



이렇게 태블로를 통해 시각화까지 마쳤다면 대시보드 자동화의 모든 과정이 끝났다. 이제 서버에 게시하여 전사에 공유해 필요한 사람들이 접속하여 데이터를 확인할 수 있도록 하면 된다.



마케팅 대시보드 자동화로 지표는 한눈에, 담당자는 편하게!


위에서도 언급했듯이 나는 MAU 외에도 방문, 실적 등 주기적으로 모니터링이 필요한 마케팅 지표들을 한눈에 볼 수 있도록 자동화 대시보드를 만들어 두었다. 데이터를 전공하지 않은 마케터나 다른 부서에서 전반적인 마케팅 현황을 궁금해한다면 이제 태블로 대시보드 링크만 공유해 주면 된다.


대시보드 운영에 많은 시간을 투자하고 있는 마케터라면 빅쿼리와 태블로를 활용한 대시보드 자동화를 바로 시작해보면 어떨까 한다. 데이터 운영 리소스는 줄이고, 필요한 마케팅 의사결정은 보다 빠르게 내리는데 분명 도움이 될 것이라고 생각한다.




Written by. CRM팀 탐탐

데이터를 통해 쏘카 이용자가 더 나은 가치를 경험하도록 고민합니다.

작가의 이전글 비대면 서비스에도 온기는 남아있다.
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari