GPS로 걸어서 땅을 차지하는 앱이 있습니다. 플릿에서 유일하게 리텐션이 있는 앱입니다. 처음 걷기 시작한 사람 기준으로 성숙 코호트 65명 중 10명(15.4%)이 한 달 뒤에도 걷고 있습니다.
그런데 거기까지 가는 사람이 너무 적었습니다. 설치 기준 퍼널을 뽑아봤습니다.
first_open 468
auth_shown 333 <- 135 이탈
auth_method_tapped 297
auth_succeeded 193 <- 104 이탈
walk_started 164
walk_ended 118
territory_claimed 83당신의 앱에서 가치를 경험하기 전에 요구하는 것이 무엇입니까?
취소가 설치당 여섯 번
auth_failed 이벤트의 사유를 갈라봤습니다.
cancelled360건 / 59대 — 설치당 평균 6회- Apple
AuthorizationError#1000144건 / 23대 — 같은 성격 - Google
timeout17 ·gave_up_waiting11 ·abandoned_process8 — 이쪽은 기술적 실패
한 번 망설이고 만 게 아닙니다. 로그인 창을 열었다 닫기를 여섯 번 반복하다 나갔습니다.
플랫폼 격차도 전부 이 구간에서 생깁니다.
| 설치 기준 | Android | iOS |
|---|---|---|
| first_open | 288 | 180 |
| 인증 성공 | 112 (51%) | 81 (71%) |
| walk_started | 77 (27%) | 87 (48%) |
안드로이드가 iOS의 절반입니다. 주력 로그인 수단이 다르고(안드로이드는 탭 630회 중 대부분이 한 방식), 그쪽에 타임아웃 계열 실패가 붙어 있습니다.
걷기에 도달한 사람은 멀쩡했습니다
걷기를 시작한 사람의 72%가 끝까지 걷습니다. 그리고 앞서 말한 대로 15%가 한 달 뒤에도 남습니다.
제품이 문제가 아니라 문 앞에서 막히는 겁니다.
서버를 확인하고 놀랐습니다
로그인을 뒤로 미루려면 지도를 계정 없이 그릴 수 있어야 합니다. 그게 안 되면 큰 공사입니다.
RLS 정책을 조회했습니다.
territories SELECT {anon, authenticated}
users SELECT {anon, authenticated}이미 열려 있었습니다. 지도 조회 함수도 익명 실행이 허용돼 있었습니다. 익명 키로 직접 호출해보니 폴리곤·이름·색·국가가 세션 없이 전부 내려왔습니다.
서버는 한 줄도 고칠 필요가 없었습니다. 관문은 클라이언트 루트 분기 한 곳에만 있었습니다.
여기서 선택이 갈립니다
계정 없이 쓰게 하는 방법은 둘입니다.
하나는 익명 로그인입니다. 매끄럽고, 나중에 실제 계정으로 승격시킬 수도 있습니다.
다른 하나는 로컬에 보관했다가 로그인 시점에 넘기는 것입니다. 손이 더 갑니다.
당신이라면 어느 쪽입니까?
저는 후자를 골랐습니다. 이 프로젝트의 인증 DB는 여러 앱이 공유하는데, 가입 트리거가 모든 앱 스키마에 프로필 행을 팬아웃합니다. 익명 계정을 만들면 이미 오염된 앱별 지표가 훨씬 더 망가집니다. 매끄러움보다 측정 가능성을 택했습니다.
바꾼 것
- 루트 분기에서 로그아웃 상태도 지도로 보냅니다. 로그아웃 시 로그인 화면으로 튕기던 옵저버도 뗐습니다 — 두면 없앤 벽이 다시 생깁니다.
- 걷는 중인 경로는 고정 sentinel 소유로 디스크에 남깁니다.
- 영역을 저장하려는 순간에만 로그인을 요구합니다. 이때 진행 단계를 건드리지 않고 돌아가므로, 로그인 후 같은 함수를 다시 부르면 걸어둔 경로가 그대로 이어집니다.
- 로그인이 확정되면 sentinel 소유 기록을 그 계정으로 넘깁니다.
순서가 뒤집혔습니다. 걸어서 영역이 눈앞에 그려진 뒤에 계정을 묻습니다.
자가진단
- 신규 사용자가 첫 가치를 경험하기 전에 통과해야 하는 관문이 몇 개입니까?
- 그 관문의 이탈률을 설치 기준으로 세어 본 적이 있습니까? 사용자 기준이 아니라 설치 기준입니다.
- 관문을 없애려면 서버를 고쳐야 한다고 가정하고 있지는 않습니까? 정책을 직접 조회해 봤습니까?
솔직한 부분
효과는 아직 모릅니다. 방금 심사에 올렸고, 판정 지표는 first_open → walk_started 비율입니다. 기준선은 안드로이드 27% · iOS 48%이고 28일 뒤에 다시 잽니다.
그리고 안드로이드의 타임아웃 계열 실패는 그대로 남아 있습니다. 그 문을 지나는 사람이 줄어드니 영향만 작아질 뿐입니다.
당신 앱의 인증 실패 이벤트에서 설치당 시도 횟수를 세어보세요. 1에 가깝다면 사람들이 결정을 내린 것이고, 6이라면 뭔가 붙잡고 있는 겁니다.