글 작성자: 디자이너 백

https://datarian.io/blog/4things-you-should-know-for-user-activity-log-analysis

 

1. 사용자들은 우리가 원하는 대로 서비스를 쓰지 않는다.

사용자 행동 데이터를 분석하다 보면 내가 생각한 대로 데이터가 안나오는 경우들이 빈번하게 있습니다. 디자이너가 예쁘게 직각 맞춰서 길을 만들어놓아도 사람들은 편하고 빠른 지름길을 만들어 내잖아요. 웹 서비스에서도 마찬가지예요. 기획자나 개발자를 이렇게 사용하겠지라고 생각하고 만들어놓은 기능, 단계들을 사용자들이 그대로 정확하게 사용할 거라는 생각은 잠시 접어두시는 게 좋을 겁니다. 

사용자들은 언제 예상치 못한 방법으로 서비스를 사용하기 때문에 데이터를 살펴볼 때에도 실제 사용자들의 행동은 우리 예상과는 다른 수 있다는 것을 항상 염두에 두고 열린 마음으로 분석을 하는 자세가 필요합니다. 

 

2. 데이터가 기록되는 방식을 정확하게 이해해야 한다.

첫 번째 주의사항에서는 실제로 사용자들이 예상치 못한 패턴으로 행동하는 경우가 있으니 주의해야 한다고 말씀드렸습니다. 그런데 가끔은 사용자들은 예상한 대로 서비스를 잘 사용하고 있지만, 데이터가 쌓이는 시점이나 형식이 내가 생각하는 것과 달라서 분석 내용에 오류가 발생하는 경우도 발생합니다. 어떤 서비스에 회원가입을 하는 상황을 한 번 가정해서 이야기를 해보도록 할게요.

로그인 화면에서 회원가입 클릭 후 -> 회원 정보를 기입하고 -> 이메일 인증 후 -> 회원가입 완료 프로세스인데요. 이 과정에서 'Signup' 데이터를 쌓는다고 생각을 해볼게요. 회원가입 프로세스 단계 중에서 어떤 시점에 'Signup' 데이터가 쌓이는게 맞다고 생각하시나요?

예를 들어 저는 이메일 인증까지 오나료한 후에 최종적으로 서버에 회원 정보가 등록될 때, 'Signup' 데이터가 저장되는 것으로 알고 있었어요. 근데 알고 보니까 실제 데이터가 기록되는 시점은 로그인 화면에서 회원가입하기를 누른 시점, 회원가입을 시작한 시점인 거예요. 

이렇게 되면 저는 'Signup' 데이터로 본 사용자 수를 회원가입 완료 사용자 수라고 해석하고 있었을 텐데요. 실제로는 회원가입 완료 사용자 수가 아니고 회원가입을 시작한 사용자의 수라고 해석하는게 정확하겠죠.

사실 회원가입 프로세스에 별다른 이상이 없고 회원가입을 시작한 사람이 모두 회원가입 완료를 한다고 한다면, 이 시점의 차이가 크게 문제가 되지 않을 수도 있어요. 

그런데 어느날 이메일 인증 과정에서 문제가 생겼다고 한다면, 데이터 분석을 할 때도 이슈가 생기겠죠. 회원가입 시작할 때의 데이터만 쌓이고 있다면, 회원가입 시작한 이후 이메일 인증 과정에 문제가 생기더라도 'Signup'이라고 하는 데이터의 수치에는 문제가 전혀 없을 수 있거든요. 

이렇게 데이터로 문제 상황을 바로 알아채지 못하는 경우 이미 많은 유저들이 불편함을 느낀 이후에야 문제를 파악하고 개선하게 됩니다. 실제 현업에서도 빈번하게 일어나는 일이라서 꼭 주의해야 하는 부분이에요.

 

3. 데이터는 언제나 잘못 기록될 가능성이 있다. 

사용자 행동 데이터를 기록하는 방식은 여러 가지가 있는데요. GA, 엠플리튜드 등의 서드파티 툴을 사용하는 방식, 자체 로깅 시스템을 사용하는 방식 등 회사에서 각자 사정에 맞게 여러 가지 방법으로 사용자 행동 데이트를 쌓고 있습니다. 

모든 플랫폼에서 사용자 행동 데이트를 완전히 똑같은 매커니즘으로 쌓을 수 있다면 참 좋을 텐데요. 데이터를 쌓는 플랫폼마다 사용자 행동 데이터가 쌓이는 조건이 조금씩 다를 수 있습니다. 그래서 똑같은 페이지뷰, 클릭 데이터를 보더라도 플랫폼별로 기록되는 방식이 달라 수치에  오차가 발생할 수 있고, 특정 플랫폼에서 의도치 않게 데이터가 중복으로 쌓인다든지 하는 일도 충분히 발생할 수 있습니다. 앞서 사용자 행동 데이터의 특징에서 이야기했던 것 처럼, 사용자 행동 데이터는 서비스 데이터에 비해 비교적 신뢰도가 낮은 데이터이기 때문에 분석을 할 때 항상 데이터 정합성을 의심하며 살펴보는 습관이 필요합니다.

실제로 협업에서 업무를 할 때에는 데이터의 신뢰도를 확보하기 위해, 엔지니어와 분석가들이 데이터 QA를 열심히 합니다. 웹사이트를 운영하는 경우 데이터 QA를 위해 크롬 확장 프로그램인 Omnibug를 사용하여 데이터가 잘 들어가고 잇는지 눈으로 확인해 보기도 하고요. 이렇게 많은 사람들이 사용자 행동 데이터가 정확하게 들어갈 수 있게 많은 사람들이 노력이 필요하지만, 그럼에도 불구하고 사용자 데이터는 신뢰도에 문제가 발생하지 않게 끔 하는 게 굉장히 어렵습니다.

 

4. 데이터를 조회할 때 주의가 필요하다.

사용자 행동 데이터는 짧은 기간에도 굉장히 많은 데이터가 쌓이기 때문에 조회할때 주의가 필요합니다. 아주 작은 서비스라고 하더라도 짧은 기간 사이에 사용자 행동 데이터는 굉장히 많이 쌓일 수 있기 때문인데, 결제는 한 사람이 하루에 100번 하기 어렵겠지만, 클릭은 백 번, 천 번도 할 수 있습니다. 때문에 사용자 행동 데이터가 저장되어 있는 데이터 베이스에 퀄리를 잘못하면 데이터베이스에 과부하가 걸리고 되어 심한 경우 서버가 될 수 있기 때문에 주의가 필요합니다.

 


https://datarian.io/blog/user-activity-analysis-netflix-amazon

 

사용자 행동 데이터로 분석할 수 있는 것 

사용자 행동 데이터는 말 그대로 사용자들이 서비스 내에서 행동한 거의 대부분의 행동을 트래킹 하는 데이터이므로 정말 다양한 분석이 가능합니다. 아래 예시는 임의 내용이지만, 실제 서비스에서도 충분히 데이터 분석을 해볼 수 있는 주제들입니다. 

- 사용자들이 우리 서비스에 여러 가지 기능들을 어떤 순서로 사용하는지
- 어느 기능(또는 페이지)에 관심이 많은지 / 관심이 없는지 
- 어느 페이지를 마지막으로 서비스를 이탈하는지 
- 결제를 한 사용자들이 정확하게 어떤 페이지들을 거쳐 결제까지 전환이 되었는지
- 평균 며칠 이내에 사용자들이 재방문 하는지
- UI 변경에 따른 사용자들의 행동 변화 등 

1. 넷플릭스 사례

사용자 행동 데이터가 무엇인지, 왜 필요한지, 어떤 식으로 사용할 수 있는지 예시를 통해 알아보았습니다. 이제 실제로 회사들에서 사용자 행동 데이터 분석해서 어떤 비지니스 임팩트를 냈는지, 그 사례들도 살펴봐야겠죠. 넷플릭스의 사례를 먼저 이야기해볼게요. 

넷플릭스 같은 콘텐츠 기업들은 '어떤 콘텐츠를 수급(제작)해야 사용자들의 반응이 좋을까'를 항상 고민해야 합니다. 콘텐츠 제작에도 비용이 들기 때문에 비용 대비 큰 이익을 가져다줄 수 있을만한 콘텐츠를 찾는게 가장 중요하죠. 이 문제에 실마리를 찾기 위해 넷플릭스는 아래와 같이 굉장히 다양한 사용자 행동 데이터를 수집하고 분석을 한다고 하는데요.

- 사용자가 각 콘텐츠를 어디서부터 어디까지 시청했는지
- 사용자가 언제 시청을 멈추는지, 뒤로 돌려보는지, 앞으로 돌려보는지
- 어떤 기기를 통해 시청하는지
- 언제 일시정지를 하는지
- 얼마나 있어야 다시 돌아와서 콘텐츠를 시정하는 지 등 

사용자 행동 데이터를 분석해서 비즈니스에 도움이 된 예시로, 미국판 하우스 오브 카드 시리즈 제작을 결정하기 전 어떤 데이터를 보고 결정을 했는지 이야기를 해보도록 하겠습니다.

* 어떤 콘텐츠를 수급(제작)해야 사용자들의 반응이 좋을까?

- 데이비드 핀처가 감독한 영화 '소셜 네트워크'는 처음부터 끝까지 시청한 사용자 비율이 높음.
- 영국판 '하우스 오브 카드'를 사람들이 잘 시청함
- 영국판 '하우스 오브 카드'를 본 사람들이 케빈 스페이시가 출연한 영화나 데이비드 핀처가 감동한 영화를 본 사람이 있음 

이 데이터를 기반으로 넷플릭스는 데이비드 핀처가 감독하고 케빈 스페이시가 주연으로 나오는 미국판 하우스 오브 카드를 만들면 사람들이 재미있게 시청할 것이라고 예상할 수 잇었고, 1억을 투자해 미국판 하우스 오브 카드를 제작하기로 결정했습니다. 그 결과 2013년 1분기에 미국판 하우스 오브 카드는 미국에서만 2백만 명의 신규 가입자를 창출했고, 그외 지역에서도 1백만 명의 신규 가입자를 창출했습니다. 추가적으로 기존 가입자의 이탈 가능성도 큰 폭으로 낮추었다고 합니다. 

 

2. 아마존 사례 

아마존에서는 사용자 행동 데이터를 분석해보니 웹 사이트 로딩 0.1초 지연될 때마다 판매가 1퍼센트씩 감소되는 연관성을 찾게 되었습니다. 그래서 아마존은 모든 웹 페이지가 0.6초 안에 로딩이 되는 것을 목표로 개선을 진행하고, 추가로 사용자 행동 데이터로 AI를 학습시켜 각각 사용자이 행동 패턴과 관심사에 맞게 맞춤형 페이지를 구성하여 보여준다고 합니다. 

이렇게 사용자 행동 데이터를 이용해 분석하고 개선을 진행한 결과. 아마존의 평균 구매 전환율은 13%에 달한다. 참고로 국내 온라인 쇼핑몰 평균 전환율은 6%이다. 

 

3. 사용자 행동 데이터를 이용한 맞춤광고 사례

사용자 행동 데이터가 없을 때 유아차를 광고한다면 어떤 고객들을 타깃으로 해서 광고를 했을까요?

대략 2~30대 여성들이 아이를 키우는 엄마일 가능성이 높으니까 그 나이대의 여성들에게 광고를 무작정 뿌려봤겠죠. 그런데 요즘 강아지를 키우는 인구도 많이 늘어나고 노견을 데리고 사는 경우도 많아져서 강아지가 유아차를 타는 모습도 심심치 않게 볼 수 있습니다. 즉, 지금 우리가 판매하려고 하는 유아차의 실제 수요자는 20~30대 여성이 아니라 오른쪽 사진처럼 나이든 강아지를 유아차에 데리고 산책을 가고 싶은 아저씨나 할아버지일 수도 있습니다. 

살면서 한번도 유아차는 검색도 해본 적도 없고, 한번도 유아차 상품은 클릭을 해본 적도 없는 미혼인 20대 여성에게 무작정 유아차 광고를 노출하는 것보다는 강아지 때문에 유아차를 검색해 본 적도 있고, 직접 상품을 클릭해서 들어가 본 적도 있는 오른쪽 아저씨에게 유아차 광고를 노출하게 되면 이미 관심있는 사람이기 때문에 광고를 클릭해서 보고 유아차를 살 가능성이 훨씬 높아지겠죠. 회사 입장에서는 사용자들에게 광고를 보여주는 것도 입용이기 때문에 최대한 효율적으로 광고를 노출할 수 있다면 많은 돈을 아낄 수 있는거라고도 생각할 수 있습니다. 

 

다른 서비스에는 어떻게 적용해 볼 수 있을까?

이런 사용자 데이터 분석 사례는 어디에 적용해 볼 수 있을까요? 앞서 넷플릭스의 사례에서 '어떤 콘텐츠를 만들어야 사용자들이 좋아할까?' 라는 고민은 콘텐츠 기업이라면 공통적으로 할 수 밖에 없는 고민이라고 말씀을 드렸습니다. 사용자 행동 데이터 분석 사례를 뉴스레터 콘텐츠 기업인 뉴닉에 한번 적용해서 생각해보도록 하겠습니다.

만약 뉴닉에서 데이터를 통해 다음주 콘텐츠 주제를 결정하려고 한다면, 어떻게 문석을 할 수 있을까요? 제가 뉴닉의 분석가라면 아래와 같이 데이터를 확인해 보고 알맞는 콘텐츠를 뽑아볼 것 같아요.

- 각 날자별로 페이지뷰 대비 클릭이 많이 일어나는 콘텐츠 
- 클릭해서 들어간 후 스크롤을 끝까지 내린 콘텐츠
- 10초(유호한 시간 범위)이상 콘텐츠에 머무르며 글을 읽는 사람이 많은 콘텐츠

이렇게 분석했을때 공통적으로 나오는 주제들이 있다면, 이미 뉴닉의 사용자들이 그 주제에 관심이 많다는 증거가 될 수 있습니다. 

 

사용자 행동 데이터를 직접 눈으로 보고 싶다면?

데이터 QA를 할 때 확장 프로그램 Omnibug라는 프로그램을 사용합니다. 해당 툴을 이용하면 Google Analytics를 통해 수집하는 웹 사이트라면 어느 곳이든 사용자 행동 데이터를 어떻게 쌓고 있는지를 눈으로 확인해 볼 수 있습니다. 데이터 분석 공부를 하시는 분이라면 실제 웹 사이트에서 사용자 행동 데이터가 어떻게 쌓이는지를 눈으로 직접 확인해 보시는 것도 좋은 공부가 될 거 같습니다. 

 

https://datarian.io/blog/why-is-user-activity-log-analysis-important

회사에서 볼 수 있는 데이터의 2가지 종류 

회사에 들어갔을 때 볼 수 있는 데이터는 크게 두 가지로 나눠 볼 수 있는데. 서비스 데이터와 사용자 행동 데이터로 구분할 수 있습니다.

 

1. 서비스 데이터

서비스 데이터는 가입, 결제 등 서비스 운영을 위해서 반드시 필요한 데이터입니다. 세미나 신청서 제출 내역, 사용자들의 결제 내역, 회원가입 정보 등 서비스 데이터에 해당됩니다. 

월간 데이터리안 세미나를 예로 들어볼게요. 세미나를 결제했을대 결제 내역이 데이터로 저장되지 않는다면, 행사 참여를 위해 결제한 사람들의 연락처를 알 수 없으니까 초대 메일 또는 문자를 보내드릴 수 없겠죠. 또 다른 예시를 들어볼게요. 만약 온라인 쇼핑몰인데 회원 주소 정보가 없으면 어떻게 될까요? 물건을 사도 배송해 줄 수 없을 거예요. 

즉, 서비스 데이터는 별도로 저장해놓지 않으면 서비스를 운영할 수 없습니다. 그래서 데이터가 있어야 한다, 저장을 꼭 해야한다는 점에 아무 의견을 내지 않습니다.

 

2. 사용자 행동 데이터 

사용자 행동 데이터는 사용자들의 행동 패턴을 확인하기 위해서 별도로 저장하는 데이터입니다. 현업에서는 웹 로그 데이터, 앱 로그 데이터, 이벤트 데이터, 사용자 로그 데이터 등 여러 가지 이름으로 부르고, 사용자 행동 데이터의 특징으로는 비교적 규모가 크고, 데이터 신뢰도는 서비스 데이터보다 낮다는 점이 있습니다. 언제든지 누락, 중복 집계될 가능성이 있습니다.

예시로는 웹 사이트 페이지뷰, 스크롤, 클릭 등이 있는데, 페이지 뷰는 사용자들이 어느 페이지를 열람했는지를 확인할 수 있는 방문 기록에 대한 데이터이고, 스크롤은 어디까지 스크롤했는지 클릭은 어떤 요소를 클릭했는지를 기록하는 데이터입니다.

사실 웹사이트 특정 페이지를 누가 조회했는지는 궁금하긴 하지만 그 데이터가 없어도 서비스의 주요 기능에 큰 문제가 발생하지 않습니다. 그래서 현업에서 데이터 분석가가 사용자 행동 데이터 심어서 봐야 한다고 개발자분들께 요청을 드리면 "그 데이터 꼭 필요해요?라고 말씀하기도 합니다. 

 

서비스를 만들고 배포하는 것이 전부는 아니다.

본격적으로 데이터 이야기를 하기에 앞서, 먼저 회사에서 서비스를 만드는 과정을 생각해볼게요. 보통 웹/앱 서비스를 만드는 회사의 상품 출시까지의 프로세는 아래와 같습니다. 열심히 아이디에이션을 하고 서비스 기획을 합니다. 그리고 기능 또는 서비스를 개발합니다. 열심히 만든 기능 또는 서비스를 배포하여 소비자들에게 내놓습니다. 마케팅도 합니다. 그런데 배포하고 마케팅하면 모든 게 끝난 걸까요? 아니요! 사실은 배포는 서비스 만들기의 끝이 아니라 시작입니다. 여기서부터 본격적인 비즈니스가 시작됩니다.

만약 "사용자가 우리 서비스에서 뭘 원하든, 서비스를 어떻게 쓰든 상관없이 우리는 우리가 만들고 싶은 걸 만들겠어!" 라고 한다면 그 비지니스는 살아남기가 정말 힘듭니다. 사용자들이 불만족하고 있거나 사용에 어려움을 겪는 것에 대해 전혀 알아챌 수가 없습니다. 그렇기 때문에 실제 비즈니스에서는 서비스 배포 후에 이 기능을 사용자들이 우리 생각대로 잘 쓰고 있는지, 사용자들이 잘 쓰고 있지 못하다면 왜 잘 못 쓰고 있는지, 어떻게 해야 더 잘 쓰게 할 수 있는지를 반드시 알아봐야합니다.

 

이 서비스를 사용자들이 잘 쓰고 있는지 알 수 있는 방법 3가지

 

1. 사용자 직접 관찰

첫 번째, 사용자 직접 관찰은 사람들을 데려다가 직접 서비스를 사용하게끔 하면서 어떤 식으로 사용하는 지를 관찰하는 방법입니다.

실제 사용자가 겪는 실질적인 문제와 니즈를 명확하게 파악할 수 있고, 무의식적으로 겪고 있는 어려움까지 관찰할 수 있습니다. 설문이나 인터뷰 등의 도구를 이용하는 것이 아니므로 인터뷰 과정에서 발생할 수 있는 오류가 발생하지 않는다는 장점이 있습니다. 

단점으로는 시간과 비용이 많이 발생하며, 실험 참여자의 행동을 정확하게 기록하고 분석하는 것이 수월하지 않을 수 있습니다. 행동을 기반으로 분석을 하기 때문에 해석의 차이도 발생할 수 있습니다.

 

2. 사용자 인터뷰 

두 번째, 사용자 인터뷰는 사용하는 사용자들에게 서비스 경험, 사용 방식 등을 인터뷰하는 방법입니다.

장점으로는 평소 사용자들에게 궁금했던 것들을 직접 물어보고 사용자들의 구체적인 의견을 수집할 수 있다는 것입니다. 제품이나 서비스를 구체적인 의견을 수집할 수 있다는 것이고, 제품이나 서비스를 구매하고 이용하는 정확한 이유를 알 수 있습니다. 때로는 응답의 지식이나 노하우가 새로운 인사이트를 얻는 데 도움이 되기도 합니다.

단점으로는 사용자 직접 관찰과 마찬가지로 시간과 비용이 많이 발생하고, 정성적인 답변을 받는 것이므로 동일한 기준으로 답변 내용을 해석하거나 비교하기 어렵습니다. 그리고 사용자들은 가끔 거짓말을 하기도 하는데요. 물론 작정하고 거질말을 하는 경우가 많지 않겠지만 내가 관찰되고 있다는 점을 인식하고 있거나 서비스 관계자 앞에서 인터뷰를 하고 있다는 점을 인식하고 있는 경우에 무의식적으로 서비스 경험에 대해서 과장을 하거나 포장을 하게 될 수 있습니다.

 

3. 사용자 행동 데이터 분석

마지막으로 사용자 행동 데이터 분석은 사용자들이 서비스를 사용하면서 남긴 행동 데이터 (페이지뷰, 클릭, 스크롤 등)를 분석하는 방법입니다. 

사용자 직접 관찰이나 인터뷰에 비해 적은 내용으로 많은 사람들의 행동을 분석할 수 있다는 장점이 있습니다. 데이터만 잘 쌓여있다면 사용자들의 행동 패턴을 원할 때 언제든 분석을 할 수 있고, 가장 자연스러운 사용자들의 행동을 볼 수 있습니다. 또한 특정 사용자의 데이터만 골라서 분석하는 것이 아니기 떄문에 사용자의 행동 패턴이나 의견이 편향되지 않는다는 점도 장점입니다.

단점으로는 데이터에 대한 해석을 분석가가 자의적으로 해야 하기 때문에 같은 데이터를 보더라도 분석가마다 다른 해석을 할 수 있고 정확하게 문제 파악을 하기는 어려울 수 있다는 점이 있습니다.

 

그 중에서도 사용자 행동 데이터 분석을 해야하는 이유 

사용자 직접 관찰, 인터뷰 그리고 사용자 행동 데이터 분석은 장단점이 아주 뚜렷해서 사실은 할 수만 있다면 다 하면 좋긴 합니다. 그러나 요즘처럼 발 빠르게 사용자들의 니즈를 캐치하고 서비스를 만들어 나가야 하는 상황에서는 이전보다 사용자 행동 데이터 분석을 더 자주 하게 되는 것 같습니다. 그래서 분석가들은 당연히 사용자 행동 데이터를 봐야합니다. 점점 타 직군에서도 이런 사용자 행동 데이터를 보는 능력이 요구되고 그 중요성이 점점 커지고 있는 추세인 듯 합니다.