완결성
Completeness
지표
있어야 할 데이터가 빠짐없이 들어와 있는 정도를 비율로 잰 값으로, 숫자를 믿고 써도 되는지 판단할 때 씁니다.
등장 배경
데이터가 틀리는 방식 중에 가장 알아채기 어려운 쪽은 값이 이상한 게 아니라 아예 없는 경우입니다. 값이 이상하면 화면에 음수 매출이나 1900년생 가입자로 튀어나와 누구든 이상하다고 말합니다. 그런데 어제 들어왔어야 할 1,100줄이 안 들어오면 화면은 멀쩡합니다. 그래프가 조금 내려가 있을 뿐이고, 그건 데이터가 빠진 모습이 아니라 지표가 나빠진 모습으로 보입니다.
그래서 회의는 늘 한 바퀴를 돌고 나서야 제자리를 찾았습니다. 주간 회의에서 가입 전환율이 떨어졌다는 보고가 올라가고, 원인을 찾는 데 이틀이 걸리고, 결국 광고 채널 하나에서 이벤트가 안 들어오고 있었다는 결론이 나옵니다. 그 이틀 동안 팀은 있지도 않은 문제의 원인을 찾고 있었고, 진짜 문제인 수집 쪽은 그동안 더 오래 방치돼 있었습니다.
완결성은 이 상황을 사람이 알아채기 전에 잡으려고 재기 시작한 값입니다. 데이터 품질은 데이터를 믿고 쓸 수 있는 상태로 유지하는 일을 통틀어 부르는 말인데, 그 아래에서 완결성이 맡은 방향은 하나입니다. 값이 모자라지 않은지만 봅니다.
계산 방법
채워져 있어야 할 자리 중에 실제로 채워진 자리의 비율을 백분율로 냅니다. 재는 자리가 두 가지라 실무에서는 두 개의 숫자를 따로 씁니다.
- 칸 완결성 — 한 열에서 값이 비어 있지 않은 줄의 비율입니다. 결제 10,000건 중 국가 칸이 9,400건에 채워져 있으면 94퍼센트입니다. 이 숫자가 문제가 되는 이유는 그 칸으로 쪼갠 계산이 전부 같이 어긋나기 때문입니다. 국가별 매출을 보면 빠진 600건이 어느 나라에도 잡히지 않아 합계가 실제보다 작게 나옵니다.
- 줄 완결성 — 들어왔어야 할 줄 수 대비 실제로 들어온 줄 수입니다. 기준이 되는 기댓값은 보통 같은 요일 최근 4주의 평균으로 잡습니다. 지난 네 번의 화요일이 3,050줄·2,980줄·3,100줄·2,970줄이었으면 기댓값은 3,025줄이고, 어제 1,900줄이 들어왔다면 63퍼센트입니다.
두 숫자를 나눠 두는 이유는 고장의 위치가 다르기 때문입니다. 칸 완결성이 떨어지면 데이터를 보내는 쪽에서 그 항목을 빠뜨린 것이고, 줄 완결성이 떨어지면 보내는 일 자체가 끊긴 것입니다. 앞쪽은 화면 코드나 연동 설정을 보고, 뒤쪽은 수집 경로 전체를 봅니다.
한 가지 함정은 빈칸이 늘 비어 있는 모습을 하고 있지는 않다는 점입니다. 값이 없을 때 빈칸 대신 0이나 미상 이나 - 를 채워 넣는 시스템이 흔한데, 그러면 완결성은 100퍼센트로 나오고 평균을 낼 때 0이 함께 계산돼 값이 조용히 낮아집니다. 그래서 재기 전에 그 표에서 없음을 무엇으로 적는지부터 정해 둡니다.
좋은 수준의 기준
기준선은 칸마다 다르게 잡습니다. 하나의 목표치를 표 전체에 거는 방식은 거의 작동하지 않습니다. 결제 금액처럼 비면 계산이 무너지는 칸은 100퍼센트를 요구하고, 가입 경로처럼 사용자가 건너뛸 수 있는 칸은 70퍼센트도 정상입니다. 후자에 100퍼센트를 걸어 두면 알림이 매일 울리고, 매일 울리는 알림은 한 달 안에 꺼집니다.
값 자체보다 중요한 것은 변화의 방향입니다. 국가 칸이 석 달째 94퍼센트라면 그건 수집 설계가 원래 그런 것이고 분석할 때 감안하면 됩니다. 같은 칸이 94퍼센트에서 사흘 만에 81퍼센트로 내려갔다면 그건 무언가 바뀐 것이고, 대개 그 직전 배포에 원인이 있습니다. 그래서 알림은 절대값이 아니라 기준선 대비 낙폭으로 겁니다.
낙폭 기준은 표마다 다르지만 출발점은 대체로 두 단계입니다. 기댓값의 90퍼센트 아래로 떨어지면 담당자에게 알리고, 70퍼센트 아래로 떨어지면 그 표를 쓰는 대시보드에 경고를 띄워 그날 숫자를 결정에 쓰지 않게 합니다. 숫자를 감추는 것보다 믿을 수 없다고 적어 두는 쪽이 낫습니다. 화면에 숫자가 떠 있으면 사람은 그걸 씁니다. 경고 문구는 "어제 데이터가 63퍼센트만 들어왔습니다" 처럼 무엇이 얼마나 빠졌는지까지 적어 둡니다. 믿을 수 없다는 말만 떠 있으면 보는 사람은 얼마나 깎아서 읽어야 할지 몰라 결국 무시하게 됩니다.
실무 용례
"어제 이벤트 완결성이 63퍼센트라 오늘 대시보드 숫자는 그대로 보시면 안 됩니다."
지표가 나빠진 게 아니라 데이터가 덜 들어왔으니 해석을 미루자는 뜻입니다.
"국가 칸 완결성이 94에서 81로 떨어졌어요. 지난주 배포 이후부터입니다."
원인을 특정 시점의 변경에 걸어 두고 확인을 요청하는 말입니다.
"이 칸은 필수가 아니라서 완결성 70퍼센트가 정상입니다. 알림 기준을 내려 주세요."
빠진 게 고장이 아니라 설계라서 기준선을 고치자는 제안입니다.
페이지덱에서 지현이 월요일 아침마다 먼저 여는 화면이 이 숫자입니다. 지난주 화요일에 줄 완결성이 71퍼센트로 찍혀 있었고, 지현은 그 주의 활성 사용자 그래프를 회의에 올리지 않았습니다. 태오가 확인해 보니 앱 업데이트에서 이벤트 이름 하나가 바뀌어 있었고, 새 이름을 수집 쪽에 추가한 뒤 그다음 날부터 다시 3,000줄대로 돌아왔습니다. 빠진 하루치는 되살릴 수 없어서 그 주 그래프에는 값이 비어 있는 채로 남았습니다.
흔한 오해
완결성이 높으면 데이터가 정확하다고 읽는 경우가 가장 흔합니다. 칸이 다 차 있으면 표가 건강해 보이니 그렇게 느낄 만합니다. 하지만 이 값은 자리가 채워졌는지만 보고 무엇으로 채워졌는지는 보지 않습니다. 모든 줄의 국가 칸에 KR 이 박혀 있으면 완결성은 100퍼센트인데, 그게 기본값으로 박힌 것이라면 국가별 분석은 전부 틀립니다. 여기에 기대고 있으면 그 표는 점검을 통과한 채로 몇 달씩 틀린 답을 내놓습니다.
100퍼센트를 목표로 삼는 것도 자주 보는 실수입니다. 빠진 데이터가 없는 상태가 이상적으로 보이지만, 사용자가 선택으로 비워 둔 칸까지 채우려면 입력을 필수로 바꾸는 수밖에 없습니다. 그러면 가입 화면에서 이탈이 늘고, 남은 사람들은 아무 값이나 골라 넣습니다. 빈칸이 줄어든 대신 틀린 값이 늘어난 셈이라 분석은 오히려 어려워집니다.
자주 헷갈리는 용어
같이 보면 좋은 페이지
마지막 업데이트 2026-09-16