수신거부 명단은 지우는 게 아니라 보관하는 것
수신거부 요청을 받으면 그 데이터를 삭제하는 것이 맞다고 생각하기 쉽다. 실제로는 반대다. 지우면 다시 수집돼 다시 발송된다. 억제 목록이라는 개념과 그것을 데이터 구조에 어떻게 반영하는지 정리한다.
디비나라 데이터팀
수신거부 요청이 들어왔다. 그 사람의 데이터를 어떻게 해야 하는가.
직관적인 답은 "삭제"다. 그리고 이것이 가장 흔한 사고의 원인이다. 지운 데이터는 다음 수집 때 다시 들어오고, 거부 이력이 없으니 다시 발송 대상이 된다. 거부 의사를 밝힌 상대에게 같은 메일이 다시 가는 일이 이렇게 발생한다.
삭제와 억제는 다른 동작이다
두 개념을 구분해야 한다.
삭제(erasure) — 데이터를 없앤다. 다음에 같은 대상을 수집하면 아무 이력 없이 새 레코드로 들어온다.
억제(suppression) — 데이터는 남기되 발송 대상에서 영구히 제외한다. 다음에 다시 수집돼도 억제 목록과 대조돼 걸러진다.
수신거부가 요구하는 것은 "더 이상 보내지 말 것"이지 "내 존재를 잊을 것"이 아니다. 그리고 보내지 않으려면 보내지 말아야 할 대상이라는 사실을 기억하고 있어야 한다. 기억을 지우면 약속을 지킬 수 없다.
이것은 역설처럼 보이지만 실무에서는 표준적인 처리 방식이다. 정보통신망법 제50조는 수신거부 의사를 밝힌 자에게 광고성 정보를 전송해서는 안 된다고 정하고 있고, 이 의무를 이행하려면 거부 사실의 보관이 전제된다.
억제 목록의 설계
억제 목록이 제 역할을 하려면 몇 가지 조건이 필요하다.
1. 캠페인이 아니라 조직 단위로 적용된다
가장 자주 깨지는 지점이다. A 캠페인에서 수신거부한 사람이 B 캠페인 명단에 있으면 어떻게 되는가. 억제는 캠페인 경계를 넘어 적용돼야 한다. 수신자 입장에서 거부 의사는 "이 캠페인에 대해"가 아니라 "당신들에게"이기 때문이다.
같은 이유로, 하나의 이메일 주소가 여러 레코드에 흩어져 있다면 주소 단위로 억제가 걸려야 한다. 레코드 단위로 걸면 중복 레코드를 통해 새어 나간다.
2. 정규화된 키로 대조한다
Hong@Company.co.kr 과 hong@company.co.kr 은 같은 주소다. 대소문자, 앞뒤 공백, 전화번호의 하이픈 유무 — 정규화하지 않으면 억제가 우회된다. 억제 목록은 저장할 때와 대조할 때 같은 정규화 규칙을 써야 한다.
3. 수집 단계가 아니라 발송 단계에서 건다
억제를 수집 단계에서 걸면, 억제 대상이 수집되지 않고 따라서 억제 목록에 있다는 사실도 확인할 수 없게 된다. 수집은 그대로 두고 발송 직전에 대조하는 것이 맞다. 게이트는 출구에 있어야 한다.
4. 최소한의 정보만 남긴다
억제 목적으로 보관하는 데이터는 억제에 필요한 만큼이면 충분하다. 대조에 쓸 키(이메일 주소나 전화번호)와 거부 시점 정도다. 억제를 위해 전체 프로필을 유지할 필요는 없다.
이 구분이 중요하다. "보내지 않기 위해 최소한을 기억하는 것"과 "영업 목적으로 계속 보유하는 것"은 목적이 다르다. 전자는 의무 이행이고 후자는 별개의 처리다.
억제 대상은 수신거부만이 아니다
실무에서 억제 목록에 들어가야 할 대상은 더 넓다.
| 사유 | 억제 범위 | 비고 |
|---|---|---|
| 명시적 수신거부 | 영구 | 가장 강한 억제 |
| 하드 반송 | 영구 | 주소 자체가 없음 |
| 소프트 반송 | 억제 안 함 | 일시적 사유(용량 초과 등) |
| 스팸 신고 | 영구 | 발신 평판 직결 |
| 진행 중인 상담·거래 | 조건부 | 콜드 시퀀스에서만 제외 |
마지막 줄이 놓치기 쉽다. 이미 상담이 진행 중인 상대에게 다른 캠페인의 콜드 메일이 나가는 것은 수신거부 위반은 아니지만 관계를 해치는 사고다. 사유가 다르므로 처리도 달라야 한다 — 영구 차단이 아니라 콜드 시퀀스에서만 제외하는 조건부 억제다.
재수집이라는 구멍
억제 목록을 제대로 만들어도 한 군데서 새는 경우가 있다. 외부에서 새 리스트를 들여올 때다.
새로 확보한 명단을 기존 억제 목록과 대조하지 않고 캠페인에 투입하면, 과거에 거부했던 사람이 새 레코드로 들어와 다시 발송 대상이 된다. 데이터 출처가 다르다는 것은 수신자에게 아무 의미가 없다.
모든 유입 경로는 억제 목록을 통과해야 한다. 발굴이든, 수동 등록이든, 인바운드 폼이든, 외부 리스트든 마찬가지다.
정리
수신거부 처리의 핵심은 이 한 줄로 요약된다.
보내지 않으려면 보내지 말아야 할 대상이라는 사실을 기억해야 한다.
삭제는 기억을 지우는 동작이고, 그래서 재수집 앞에서 무력하다. 억제 목록을 조직 단위로 유지하고, 정규화된 키로 대조하고, 모든 유입 경로가 그 게이트를 통과하게 하는 것 — 이것이 수신거부를 실제로 지키는 방법이다.
수신거부 요청이 들어왔을 때 영업자가 밟아야 할 절차는 5분영업 블로그 수신거부 요청이 왔을 때 해야 할 일에서 정리했다.
참조
- 정보통신망 이용촉진 및 정보보호 등에 관한 법률 제50조 제2항·제7항 — law.go.kr (수신거부 의사 표시자에 대한 전송 금지, 처리 결과 통지 의무)
- 개인정보 보호법 제21조(개인정보의 파기) — law.go.kr (다른 법령에 따른 보존 의무가 있는 경우의 예외)
- KISA, 불법스팸 방지를 위한 정보통신망법 안내서 — kisa.or.kr (수신거부 처리 절차)