
블로그 방문자 확인, GA4 대신 Search Console과 Cloudflare Web Analytics로 시작했다
글이 열 편 가까이 쌓였을 때, 이 사이트를 같이 만들고 있는 Claude Code(말로 요청하면 코드를 짜고 실행하는 AI 도구)에게 물었다. “이거 접속량 확인하려면 구글 애널리틱스 붙이는 게 좋을까?”
답은 GA4는 나중에 붙이고, Search Console과 Cloudflare Web Analytics로 먼저 시작하라는 것이었다. 나는 그 순서대로 등록했다. 대시보드에 로그인해서 누르는 일은 내가 했고, 제대로 됐는지 확인하는 일은 Claude Code가 맡았다.
세 도구는 답하는 질문이 다르다
| 도구 | 알 수 있는 것 |
|---|---|
| Cloudflare Web Analytics | 방문 수, 많이 본 글, 들어온 경로 |
| Google Search Console | 검색어, 검색 노출·클릭 수, 색인 상태 |
| GA4 (Google Analytics 4) | 머문 시간, 클릭 같은 행동, 광고 수익 연결 |
색인: 검색엔진이 페이지를 읽어 검색 결과에 나올 수 있게 저장해 둔 목록. 색인에 없으면 검색에 나오지 않는다.
글이 쌓이는 단계에서는 검색어가 가장 쓸모 있다. 어떤 글이 어떤 검색어로 걸리는지 알아야 다음 글을 정할 수 있고, 이 정보는 Search Console에 나온다.
GA4는 광고 승인 뒤로 미뤘다
Claude Code가 든 이유는 이렇다.
- GA4는 쿠키(방문자 브라우저에 남기는 작은 기록)를 쓴다. 붙이면 개인정보처리방침에 항목을 추가해야 한다.
- 스크립트가 늘어 페이지가 조금 느려진다.
- GA4는 애드센스와 연결해 글마다 수익을 볼 때 쓸모가 커진다. 광고를 달기 전에는 볼 게 많지 않다.
Cloudflare Web Analytics는 쿠키를 쓰지 않는다. 이 사이트 개인정보처리방침에는 Cloudflare가 이미 적혀 있어서 고칠 곳도 없었다.
대신 파일 내려받기 같은 클릭은 세지 못한다. 엑셀 양식을 몇 번 받아 갔는지 꼭 알아야 한다면 GA4를 일찍 붙일 이유가 된다.
Search Console 등록은 다섯 단계다
나는 다른 사이트로 쓰던 계정이 있어서 속성(사이트 하나를 관리하는 단위)만 추가했다.
- https://search.google.com/search-console 에 구글 계정으로 로그인한다.
- 왼쪽 위 사이트 이름 칸을 누르고 “속성 추가”를 고른다. 나처럼 이미 등록한 사이트가 있는 계정의 경우다.
- 왼쪽 “도메인” 칸에 heonote.com처럼 주소만 넣는다. 오른쪽 “URL 접두어”와 달리 www와 http 주소까지 한 속성에 묶인다.
- “확인 시작”을 누른다. DNS(주소를 실제 서버로 안내하는 설정)가 Cloudflare에 있어서 Cloudflare로 확인하는 버튼이 떴다. 누르고 진행하자 “소유권이 확인됨” 창이 떴다.
- 왼쪽 메뉴 “Sitemaps”에 사이트맵 주소 전체를 넣고 제출한다. 도메인 속성은 입력 칸이 비어 있으므로
https://heonote.com/sitemap-index.xml처럼 처음부터 다 적는다.
사이트맵은 사이트의 페이지 주소를 모아 둔 파일이다. Astro 블로그는 빌드할 때 sitemap-index.xml을 자동으로 만든다.
4번에서 “확인 시작” 버튼이 안 뜨면 “안내 대상”을 “기타”로 바꾼다. 나오는 확인용 값을 Cloudflare DNS 화면에서 유형 TXT, 이름 @로 추가하면 된다.
제출 뒤에 뜨는 표시는 대부분 기다리면 된다
| 표시 | 뜻과 할 일 |
|---|---|
| 상태 “가져올 수 없음” | 구글이 아직 안 읽었다. 다시 제출하지 않고 기다린다 |
| “성공”인데 발견된 페이지 0 | 제출한 파일이 목차 파일이다. 줄을 눌러 안쪽 파일을 본다 |
| “데이터를 처리하는 중” | 등록 당일에 나온다. 며칠 뒤 다시 본다 |
내 경우 제출 직후 “가져올 수 없음”이 떴다. Claude Code가 구글 검색봇 형식으로 사이트맵을 받아 보니 정상으로 열렸고, 같은 날 다시 보니 “성공”으로 바뀌어 있었다.
발견된 페이지가 0인 이유는 sitemap-index.xml이 목차 파일이라서다. 이 파일은 sitemap-0.xml을 가리키기만 하고, 페이지 주소는 안쪽 파일에 들어 있다.
Cloudflare Web Analytics는 켜져 있는지부터 본다
- https://dash.cloudflare.com 에 로그인해 “Web Analytics” 화면을 연다. 왼쪽 메뉴 “Analytics” 아래에 있고, 들어간 적이 있으면 “최근 항목”에도 보인다.
- 목록에 내 도메인이 있는지 본다. 있으면 이미 집계 중이다.
- 없으면 “사이트 추가”에서 도메인을 고르고 자동 설정을 켠다. Cloudflare가 페이지에 분석 스크립트를 대신 넣어 주므로 코드를 고치지 않아도 된다.
내 경우는 heonote.com이 이미 “자동 설정”으로 등록돼 있었다. 지난 24시간 방문 수도 쌓이고 있어서 추가로 할 일이 없었다.
AI의 확인이 한 번 틀렸다
대시보드를 보기 전에 Claude Code가 사이트 HTML을 받아 분석 스크립트를 찾았는데, 없다고 보고했다. 브라우저 형식으로 다시 요청하자 스크립트가 들어 있었다.
자동 설정은 Cloudflare가 응답을 보내는 순간에 스크립트를 넣어서, 요청 방식에 따라 결과가 달라진다. 설치 여부는 대시보드에 숫자가 쌓이는지로 판단한다.
등록하다 보니 404 페이지가 없었다
Claude Code가 사이트 주소를 확인하다가 찾은 것이 있다. 아직 고치지 않았다.
- 404 페이지(없는 주소일 때 보여 주는 안내 페이지)가 없다. 아무 주소나 넣어도 홈 화면이 정상 응답으로 나온다.
robots.txt(검색엔진에 규칙을 알려 주는 파일)를 열어도 홈 화면이 나온다. - www.heonote.com이 대표 주소로 넘어가지 않고 그대로 열린다. 페이지마다 대표 주소를 알려 주는 canonical 태그가 있어서 검색 중복 문제는 크지 않다.
- 네이버 서치어드바이저에는 아직 등록하지 않았다.
소프트 404: 없는 페이지인데 서버가 “정상”이라고 응답하는 경우. 404 페이지가 없으면 구글이 이런 주소를 쓸모없는 중복 페이지로 볼 수 있다.
이 사이트를 Cloudflare Pages에 올린 과정은 월 0원으로 개인 블로그 만들기에 적었다.