이마트 앱 · emartapp-prod

GA + Clarity로
판단 레이어 키우기

A/B 테스트 없이도 내가 만든 기능이 얼마나 효과가 있었는지 수치로 증명하는 법

257만
월 활성 사용자
Android 80%
iOS 20%
7개
측정 가능한 화면
0판단 레이어란?
🤖

코딩 레이어

AI가 대체 중
기능을 구현하는 것

→
🧠

판단 레이어

AI가 못 하는 것
이 변경이 얼마나 효과 있었는지
숫자로 증명하고 다음 결정을 내리는 것

1A/B 없이 인과 효과 추정하기 — DID

문제: 배포 후 이탈률이 떨어졌다. 내 코드 덕분인가, 마케팅 덕분인가?
해결: 내 코드가 닿지 않은 대조군 화면을 함께 보면 외부 요인을 걷어낼 수 있다.

처리군 (내가 바꾼 화면)
배포 전: 18.6%
배포 후: 13.2%
변화: −5.4%p
대조군 (건드리지 않은 화면)
배포 전: 10.7%
배포 후: 10.5%
변화: −0.2%p (자연 변동)
DID 순수 효과 = −5.4%p − (−0.2%p) = −5.2%p
외부 요인(계절성, 마케팅)을 제거한 내 코드만의 실제 효과
⚠️ 유효성 체크 필수

배포 전 4주 동안 처리군과 대조군이 같은 방향으로 움직였는지 확인. 배포 전부터 트렌드가 달랐으면 DID 결과를 신뢰할 수 없다.

2지금 이 앱의 기회 지도

지난 28일 화면별 이탈률 — 높을수록 개선 여지가 크다

PushPopupActivity
18.6% 🎯 최우선
IntroViewController
18.2%
MainViewController
13.0%
MainActivity
10.7%
SubWebViewController 웹뷰 ★
10.0%
SplashActivity
9.2%
PermissionRequest
7.4%

★ SubWebViewController는 웹뷰 — FE 코드 변경이 직접 반영, 인과 증명이 가장 쉬운 화면.

3이 앱에서 쓸 수 있는 대조군 3가지
1
📱

화면 분리

내가 바꾼 화면 vs 건드리지 않은 화면. 동일 사용자 기반이라 노이즈 최소.

즉시 가능
2
🤖

Android vs iOS

Android만 배포했다면 iOS가 대조군. 플랫폼별 배포 타이밍이 다를 때 유효.

조건부 사용
3
📅

배포 전후만 비교

가장 단순하지만 계절성·마케팅을 통제 못 함. 보조 지표로만.

보조용만
4Clarity로 "왜"를 설명하기

GA는 "얼마나"를 준다. Clarity는 "왜"를 준다.

①

배포 직전 히트맵 PDF 저장

PushPopupActivity 히트맵 스냅샷을 배포 전 저장. 배포 후와 비교해 클릭 패턴이 바뀌었는지 시각적 증거로 쓴다.

②

커스텀 태그로 실험 그룹 분리

기능 플래그나 빌드 버전으로 분기해 Clarity에 태그를 심으면 처리군 세션만 필터링할 수 있다.

window.clarity("set", "experiment", "pushpopup_v2");
③

Rage Click / Dead Click 확인

이탈률이 올라갔다면 어디서 막혔는지 바로 찾는다. 세션 녹화로 5분 안에 원인을 좁힐 수 있다.

④

배포 2주 후 before/after 비교

같은 화면의 히트맵을 나란히 두고 스크린샷 찍어 기록. 클릭 밀도 2x 증가 같은 시각적 증거가 설득력 있다.

5배포마다 쓰는 기록 템플릿
판단레이어_기록.md
## [2026-10-xx] 푸시팝업 닫기 버튼 UX 개선 ### 변경 내용 닫기 버튼 크기 44px→56px, 위치를 오른쪽 상단으로 이동 ### 처리군 / 대조군 처리군: PushPopupActivity 대조군: MainActivity (동일 기간, 동일 사용자 모집단) ### DID 데이터 | 지표 | 처리_pre | 처리_post | 대조_pre | 대조_post | DID 효과 | |--------|----------|-----------|----------|-----------|----------| | 이탈률 | 18.6% | 13.2% | 10.7% | 10.5% | −5.2%p | ### 월 임팩트 추정 5.2%p × 81만 세션(PushPopup 월간) = +4.2만 세션 이탈 방어 ### Clarity 관찰 - 닫기버튼 히트맵 클릭 밀도 2.3x 증가 - Dead click(버튼 외곽 영역) 사라짐 - 세션 녹화: 팝업 체류 시간 avg +8초 증가 ### 다음 액션 IntroViewController (18.2%) 동일 패턴 적용 검토
6월 임팩트 재무 환산 공식
DID 효과(%p) × 월 세션 수 × 세션당 전환가치
= 월 추정 임팩트
예시 계산 — PushPopupActivity 개선 시나리오
DID 효과: 5.2%p
월 PushPopup 세션: 81만
이탈 방어 세션: 81만 × 5.2% = 4.2만 세션
세션당 전환율 × 주문금액: 2.5% × 45,000원 = 1,125원
→ 월 +4,725만원 추정 임팩트
※ 전환율·주문금액은 실제 GA 데이터로 치환
7실제 수집한 데이터 — emartweb-prod

지난 28일 (2026-08-07 ~ 09-03) · 기기 카테고리별 · 웹 속성 ✅ 모바일 vs 데스크톱 DID 가능

기기 활성 사용자 비율 이탈률 주요 이벤트 전환율
📱 mobile 4,411,825 97.19% 18.50% 1,027,852 4.82%
🖥️ desktop 102,355 2.25% 28.41% 3,637 3.75%
📟 tablet 42,997 0.95% 12.64% 9,045 6.78%

이탈률 = 100% − 참여율 (GA4 계산식). 전환율 = 주요 이벤트 수 ÷ 참여 세션수.

✅ DID 대조군 확정 — 이제 바로 쓸 수 있다

처리군
📱 mobile
이탈률 18.50%
전환율 4.82%
대조군
🖥️ desktop
이탈률 28.41%
전환율 3.75%

모바일 FE 변경 배포 후 → 두 그룹의 이탈률·전환율 변화를 DID 공식에 대입하면 된다.

8모바일 이탈률 상위 페이지 (조회수 1만↑)

2026-08-07~09-03 · 기기 카테고리 = mobile · 이탈률 내림차순 · 총 201개 중 57위까지

# 페이지 조회수 이탈률

* 이마트앱 다운로드(71%)는 앱 유도 의도 페이지 — DID 타깃 제외

🎯 DID 타깃 우선순위

①
이마트 (홈)
조회수 3,174만 · 이탈률 11.87% → 1%p 개선 = 31만 세션 이탈 방어
11.87%
②
이번 주 전단행사
조회수 42만 · 반복 캠페인 — 패턴 개선 후 재사용 가능
20.51%
③
워크이마트 / 미션
지속 운영 기능 · 개선 임팩트 누적
2~4%
④
웰컴 체크인
이탈률 이미 낮음 → 전환율 개선 타깃
1.17%
9대조군 대안 — 모바일만으로 DID 하기

데스크톱/태블릿 비대응 → 모바일 내에서 대조군을 구성해야 한다.

📄 페이지 분리 ✅ 즉시 사용

변경한 페이지 vs 건드리지 않은 유사 페이지. 동일 유저 모집단, 추가 설정 없이 GA4 데이터만으로 구현.

⚠️ 페이지 쌍 선택 시 기저 이탈률이 비슷한 것끼리 매칭 필수

🤖 Android vs iOS ⚠️ 조건부

한 플랫폼만 먼저 배포할 때 유효. 동시 배포라면 무효.

👥 신규 vs 재방문 ⚠️ 조건부

GA4 잠재고객 배포 전 사전 세팅 필요. 세그먼트 특성 자체가 달라 parallel trend 가정 무너질 수 있음.

📢 유입 채널 분리 ❌ 사용 어려움

FE 변경은 채널 무관 전체 노출 → 처리/대조 분리 불가.

📄 페이지 쌍 예시 — 기저 이탈률 유사한 것끼리

처리군 대조군 적합도
워크이마트 (2.02%) 웰컴 체크인 (1.17%) ✅ 즉시
이번 주 전단행사 (20.5%) 추가전단 (8.9%) ⚠️ 확인
이마트 홈 (11.87%) 쇼핑모드 (2.59%) ⚠️ 트렌드 확인

페이지 분리 체크리스트

  1. 배포 전 4주간 두 페이지 트렌드가 같은 방향인지 확인 (parallel trend)
  2. 트렌드 달랐으면 해당 쌍 포기 → 다른 페이지 탐색
  3. 배포일 GA4 Annotation 반드시 찍기
  4. 배포 +2주 후 post 수집 → DID 계산

🧠 판단 레이어 핵심 루틴

배포 전 pre 저장 → 2주 후 post 비교 → DID 계산 → Clarity로 이유 기술

숫자를 쌓을수록 다음 결정의 확신이 생긴다.
AI가 코드를 짜도, 이 결정이 얼마나 옳았는지를 증명하는 건 당신만이 할 수 있다.