광고주가 직접 확인하는 대시보드
광고주가 자신의 배너 목록, 노출수, 클릭수, CTR을 확인할 수 있는 별도 포털을 만든 기록입니다.
Code notes
코드에서 확인한 구현 포인트
배포 기준 2026.04.27
관련 파일
apps/web/app/advertiser/page.tsxapps/web/app/api/advertiser/auth/login/route.tsapps/web/app/api/advertiser/dashboard/route.tsapps/web/lib/server/advertising-auth.ts구현 메모
광고주 포털은 운영자용 관리자와 분리된 화면으로 만들고, 광고주는 자기 배너와 지표만 확인하게 했다.
로그인, 로그아웃, 대시보드 API를 나눠 세션 흐름과 지표 조회 흐름이 섞이지 않게 했다.
보안상 인증 코드나 세션 처리 세부값은 글에 노출하지 않고 역할 분리와 지표 구조만 설명한다.
광고주는 결과를 직접 보고 싶다
광고를 운영하면 광고주는 자연스럽게 묻는다. 내 배너가 어디에 올라가 있는지, 얼마나 봤는지, 얼마나 클릭됐는지.
이 질문에 매번 수동으로 답하는 대신, 광고주가 직접 로그인해서 확인할 수 있는 포털을 만들었다. 초기 버전은 배너 목록과 핵심 지표에 집중했다.
가장 먼저 보여준 숫자
첫 화면에서 중요한 숫자는 많지 않다. 노출수, 클릭수, 클릭률이면 광고주가 현재 상태를 이해하는 데 충분하다.
복잡한 그래프보다 먼저 필요한 것은 신뢰다. 내 광고가 등록되어 있고, 실제로 지표가 쌓이고 있으며, 기간별로 확인할 수 있다는 확신을 주는 화면이 중요했다.
운영자와 광고주의 경계
운영자는 광고주를 만들고 배너를 등록한다. 광고주는 자기 지표를 확인한다. 이 경계를 분명히 두면 실수도 줄고, 나중에 권한 체계를 확장하기도 쉽다.
Keep reading
다른 글 이어서 보기
Debugging
2026.05.05
6 min read
GitHub 푸시 후 Vercel 배포가 Blocked가 되었을 때
커밋은 올라갔지만 Vercel 자동 배포가 막혔던 상황에서, GitHub 작성자와 프로젝트 권한을 확인해 해결한 기록입니다.
Writing
2026.05.04
5 min read
블로그를 제품 기억장치로 쓰기
나중에 다시 봤을 때 왜 그렇게 만들었는지 떠올릴 수 있도록 블로그를 개발 기록으로 남기기 시작했습니다.
Debugging
2026.05.04
7 min read
서브도메인은 연결됐는데 /admin이 404였던 이유
blog, ad, nacho 서브도메인을 나누는 과정에서 Vercel 404와 앱 내부 라우팅 문제를 구분해 해결한 기록입니다.