google analytics4를 보다 보면, 어제 본 데이터와 오늘 본 데이터가 달라집니다. 큰 폭으로 달라지지는 않지만 달라졌다는 그 찜찜함은 남을 수 밖에 없죠.
생각해보면 참 이상합니다. google은 이미 clientId를 부여하고, user_pusedo_id도 부여해서 교차 기기 데이터를 확보하고 있을텐데 왜 데이터가 변동이 필요한걸까요?
Attribution의 재조정
이용자들은 다양한 디바이스로 웹을 탐색합니다. PC로 사이트 접속 후, Mobile 기기로 구매를 하는 경우들도 존재합니다.
PC로는 organic 유입을 했지만, Mobile로 광고를 보고 유입될 수도 있죠. 이런 경우, 하나의 유저가 다양한 방식으로 들어왔으니 각 방식에 기여도를 분배해야 합니다. 이 기여도 분배는 데이터를 복기한 다음에 집계가 되죠.
google sheet의 확장 프로그램으로 ga4 report 내용을 보면 이해가 더 쉽습니다. 매체별 전환 데이터를 오늘자로 보게된다면, 전환값이 1이나 3,5 같은 정수로 나타납니다.
하지만 전일 기준으로 전환 데이터를 보게되면, 0.3, 2.6과 같은 소수 형태가 나타나게 됩니다.
Thresholding (임계값)의 발생
Google은 개인정보 식별이 불가능하도록 소수 데이터를 숨기게 됩니다. Thresholding은 민감한 소수 데이터는 제공하지 않아서 사용자를 역추적하지 못하게 하는 내용입니다.
만약 어제 날짜로 A 유저 한 명만 x 제품을 구매했다고 가정합니다. 우리는 analytics로 어제 날짜 x제품 구매자의 인구통계학 정보를 확인할 수 있다면 어떨까요?
A유저는 전달하고 싶지 않았던, 관심사, 브라우저, 기기, 해상도, 관심사 등을 우리가 알게됩니다. 개인정보를 우리가 수집하게 된거죠. 이런 부분을 막고자 google은 소수 데이터 제공을 방지합니다.
간단하게 확인하는 방법은 개인정보가 기입된 요소가 10개 미만 등 적은 데이터가 있다면, 탐색 리포트 등에서 확인이 불가능할 수 있습니다.
하지만 실시간 보고서에서는 모든 정보가 가감없이 나타나게 됩니다.
*보고ID가 혼합됨인 경우 크게 나타납니다.
추가로 앱의 경우에는 데이터 변동이 더 강해질 수 있는데, 이는 Late-arriving data라는 지연 데이터 때문입니다.
Late-arriving data (지연 데이터)
*해당 내용은 대체로 앱 기반 입니다.
유저가 오프라인 상태(인터넷 미연결)에서 앱이나 웹을 탐색하는 경우, google analytics 서버로 데이터가 전송되지 않습니다.
이 경우에는 이벤트가 발생한 뒤, analytics 서버로 데이터 전송이 불가능한 점을 인지하게 되고, 로컬에 데이터가 저장됩니다.
그 후 기기가 네트워크에 재연결 되는 경우, 미전송된 데이터를 일괄로 전송하게 됩니다. 이 때는 전송 시점과 발생 시점을 모두 전송합니다.
데이터는 발생 시점을 기준으로 기재되기 때문에 데이터의 보정이 발생하게 됩니다.