Yunseon Hong

archive / / #개발

RedactCheck를 6주 만에 접었다

Yunseon Hong · 4분 읽기

법 두 개에 걸렸다고 썼던 그 SaaS다. 콜드메일 15통, 브라우저 진단기, 검색 유입까지 측정 장치를 세 번 만들었고 세 번 다 0이 나왔다.

8월에 해외 대상 서비스를 만들려다 법 두 개에 동시에 걸렸다는 글을 썼다. 그때 이름을 안 밝혔던 서비스가 RedactCheck다.

결론부터 쓰면 9월 21일에 접었다. 코드를 본격적으로 쓰기 전 단계에서 통과하지 못했다. 들어간 건 6주, 돈은 도메인값 10.46달러가 전부다. 메일은 Google Workspace 무료 버전이었고 호스팅도 Cloudflare 무료였다.

그 글이 법 얘기에서 끝났으니 그 뒤에 무슨 일이 있었는지 남겨둔다.

무엇을 만들려고 했나

DSAR(Data Subject Access Request), 그러니까 “내 개인정보 보여달라”는 요청이 오면 회사는 관련 문서를 모아 넘겨야 한다. 이때 문서에 섞인 다른 사람의 개인정보는 가려야 한다.

RedactCheck는 그 가리는 작업을 돕는 도구였다. 대상은 이 일을 매일 하지는 않는 영국·EU 실무자. 구독 없이 페이지 팩을 선불로 사는 구조를 생각했다.

원칙도 처음부터 정해뒀다. 0단계에서는 코드 0줄. 랜딩과 이메일 인터뷰로 15곳 중 5곳 이상이 “데모 보여달라”고 하면 그때 만든다.

콜드메일 15통, 데모 요청 0

8월 18일부터 하루 3통씩 보냈다. 발송 당일마다 인용한 문장과 주소를 원문이랑 다시 대조했다. 요약 도구가 바꿔 쓴 문장을 큰따옴표에 넣은 채 보낼 뻔한 일이 한 번 있어서다.

15통, 후속 15통까지 9월 1일에 끝났다. 답장은 1건.

그 1건이 “볼 의향이 있냐”는 질문에 “Yes, please”라고 답해줘서 데모 요청 1/5로 셌다. 그런데 몇 번 오가고 나니 제품 개발을 도울 시간은 없다는 답이 왔다. 다시 0/5로 고쳤다.

내가 물어서 받은 yes는 데모 요청이 아니더라. 상대가 먼저 보여달라고 한 것만 세야 했다.

그리고 지난 글에서 끝까지 못 풀었던 (광고) 표기 문제는 결국 풀 필요가 없었다. 출시 알림을 받겠다는 구독자가 끝까지 0명이었으니까. 명단이 0명인 게 다행일 거라고 농담처럼 썼는데 정말 그렇게 됐다.

측정 수단이 없다고 판단했다

무응답 14건을 수요 없음으로 읽어야 하나 고민했다. 그런데 오픈 트래킹을 안 쓰기로 했으니 안 읽은 건지 안 닿은 건지도 모른다.

검색 쪽도 봤다. 2주 동안 노출 43, 클릭 3. 클릭 중 둘은 한국에서 들어온 거라 아마 나였던 것 같고 검색어 대부분은 이름이 비슷한 다른 ‘Redacted’ 브랜드를 찾는 것이었다.

그래서 9월 2일에 통과 조건을 바꿨다. 이메일 경로(A)에 더해 브라우저 안에서만 도는 무료 진단기를 내고 주간 순사용 30건 이상과 이메일 제출률 10% 이상이면 통과하는 경로(B)를 만들었다.

이걸 2차 결과를 보기 전에 바꿨다는 게 나한테는 중요했다. 결과를 보고 바꾸면 그냥 미련이니까. 판정일도 같이 박았다. 11월 2일, 연장 없음.

진단기는 하루 만에 나왔다

/check는 PDF를 올리면 브라우저 안에서 텍스트를 뽑아 이름이나 우편번호 같은 게 남아 있는지 보여준다. 파일도 텍스트도 서버로 안 나간다.

사용 횟수를 세는 방법도 고민했다. 스캔이 끝나면 정적 파일 하나를 요청하고 그 요청에는 아무 값도 안 붙인다. 개인정보처리방침에 그렇게 써놨으니까. 그 요청 수가 곧 스캔 수다.

자잘한 삽질은 있었다. 공백이 전부 두세 칸으로 늘어나고, 서명란의 두 사람이 한 명으로 합쳐지고, 우편번호 30개가 1건으로 보고됐다. 그래도 페이지는 가벼워서 LCP가 0.2초. 이 부분은 할 만했다.

검색 유입용으로 긴 글도 하나 썼다. 일주일 뒤 Search Console에서 “크롤링됨 - 색인 생성 안 됨”. 더 쓰지 않기로 했다.

2주 동안 스캔 3건

9월 7일부터 주마다 셌다.

  • 1주차: 스캔 2, /check 조회 11, 검색 노출 1
  • 2주차: 스캔 1, /check 조회 13, 검색 노출 0

그리고 이메일 구독자는 여전히 0명. 전환율을 따질 단계가 아니었다. 아무도 오지 않았다.

판정일까지 6주가 남아 있었지만 9월 21일에 접었다. 연장은 금지해 뒀지만 일찍 접는 건 금지하지 않았다.

접은 이유는 숫자만이 아니었다

처방을 고민하다 보니 문제가 한꺼번에 보였다.

우선 차별점이 없었다. 비슷한 모드를 가진 도구가 이미 있었고 무저장이나 검증 기록을 내세우는 곳도 있었고 “가끔 쓰는 사람용”이라는 틈에도 하루 5달러짜리 이용권이 들어와 있었다. 실무자가 이걸 골라야 할 이유를 한 문장으로 쓸 수가 없었다.

닿을 길도 없었다. 랜딩, 콜드메일, 진단기로 측정 장치를 세 번 만들었는데 세 번 다 타깃이 그 앞에 서지 않았다. 한국에 사는 1인이고, 서면으로만 연락하고, 트래킹은 안 쓰고, 검색은 이미 선점돼 있다. 하나하나는 이유가 있는 제약이었는데 합치니까 길이 다 막혀 있더라.

제일 아팠던 건 내가 검증을 못 한다는 점이다. 이름·번호 같은 패턴 탐지는 공개 데이터로 잴 수 있지만 거기는 이미 다들 하고 있다. 차별점이 될 부분은 “이 사람 정보를 이 맥락에서 공개해도 되나”라는 판단인데, 그건 정답 데이터가 공개될 수도 없고 나한테 실무 경험도 없다. 돈을 받고 가렸는데 한 건이라도 놓치면 고객 쪽에서는 개인정보 유출 사고다.

남긴 것

다음 아이템을 고를 때 볼 질문 두 개를 적어뒀다.

  • 내가 이 사람들에게 닿을 경로가 있는가
  • 검증 데이터와 도메인 판단을 내가 갖고 있는가

처음 아이템을 고를 때는 검색 수요, 유료 시장, 1인 운영 가능성 세 가지만 봤다. 아무래도 이 둘이 빠져 있었던 것 같다.

브라우저 안에서 PDF를 읽고 탐지하는 코드와 서드파티 요청 0개짜리 정적 배포 구성은 남았다. 다른 데 쓸 수 있을 것 같다.

아직 정리 안 된 것

사이트는 일단 살려뒀다. 그런데 그러면 문제가 남는다.

랜딩과 /check의 폼에는 “무료 스캔이 열리면 메일 한 통 보낸다”는 약속이 아직 적혀 있다. 출시가 없으니 지킬 수 없는 약속이다. 폼이 이메일을 받는 동안은 지난 글에서 고민했던 EU 대리인 의무도, 국외이전 고지도 그대로 살아 있다. 대리인 계약은 끝내 안 했다.

이건 전부 폼을 내리는 순간 풀린다. 사이트를 어떻게 할지와 상관없이 폼부터 내려야겠다.

도메인은 자동 갱신을 꺼둔 채라 2027년 8월에 그냥 두면 알아서 사라진다. 그 전에 한 번은 더 고민하게 될 것 같다.

여튼 지난 글에 “아직 결론은 없다”고 썼는데 결론은 이렇게 났다. 법 검토에 들인 시간을 생각하면 좀 허무하긴 한데… 그래도 접을 기준을 먼저 적어둔 덕분에 도메인값 10달러에서 멈춘 것 같다.

shareXFacebookLinkedIn

keep reading

datepostcategory
해외 대상 서비스를 만들려다 법 두 개에 동시에 걸렸다#일상
이틀 만에 URL 단축기를 만들었다#개발
하루 만에 만든 앱이 먼저 나갔다#일상