블로그 시작하고 GA4 달아본 기록 — 설치부터 보고서 확인까지

블로그 만들고 제일 먼저 궁금했던 것

블로그를 시작하고 글을 올리기 시작했는데, 솔직히 제일 궁금한 건 “오늘 몇 명이나 왔을까?”였다. 그래서 찾아본 게 GA4(Google Analytics 4). 구글이 제공하는 무료 방문자 분석 도구다.

매장 CCTV + 고객 카운터 같은 거라고 보면 된다. 오늘 몇 명 왔는지, 어떤 글에서 오래 머물렀는지, 어디서 들어왔는지를 자동으로 기록한다. 다만 개인을 특정하지는 않고 전체 패턴만 보여준다.

왜 필요한가

데이터 없이 블로그를 개선하는 건 눈 감고 다트 던지는 거다.

  • “어느 글이 인기 있는지” → 인기 주제로 더 쓰면 트래픽 증가
  • “방문자가 어디서 오는지” → 효과적인 채널에 집중
  • “몇 분 머무는지” → 콘텐츠 품질 판단

GA4는 이걸 무료로 자동 수집해서 대시보드로 보여준다.

UA에서 GA4로 — 뭐가 달라졌나

2023년 7월에 구글이 기존 UA(Universal Analytics)를 종료하고 GA4로 전환했다. 지금 새로 만들 수 있는 건 GA4뿐이다.

구분 UA (종료됨) GA4
추적 페이지뷰 중심 이벤트 중심 (클릭, 스크롤, 영상 재생 등)
웹 전용 웹 + 앱 통합
AI 없음 이상 감지, 예측 분석
데이터 보존 무제한 기본 2개월, 최대 14개월

이벤트 중심이 좋은 이유: UA는 “어떤 페이지를 봤는지”만 기록했는데, GA4는 “페이지에서 뭘 클릭했는지”, “영상을 몇 초 봤는지”, “얼마나 스크롤했는지”까지 자동 추적한다.

계정 구조

GA4는 계정 → 속성 → 데이터 스트림 3단계다.

  • 계정(Account) = 회사 본사. 구글 계정에 속함
  • 속성(Property) = 각 사이트. G-XXXXXXXXXX 형태 측정 ID 발급
  • 데이터 스트림 = 웹 또는 앱
계정: 내 계정
├─ 속성 1: main-site.com       (G-AAAA)
├─ 속성 2: blog.main-site.com  (G-BBBB)
└─ 속성 3: app.main-site.com   (G-CCCC)

각 속성은 완전히 독립적이다. G-BBBB 코드가 블로그에만 심어져 있으면 블로그 방문자만 집계된다.

설치 방법

STEP 1: 측정 ID 발급

  1. analytics.google.com → 관리(톱니바퀴)
  2. 속성 만들기 → 이름 입력 (예: “내 블로그”)
  3. 국가(한국), 통화(원)
  4. 데이터 스트림 → 웹 → URL 입력 → 스트림 만들기
  5. G-XXXXXXXXXX 측정 ID 복사

STEP 2: 사이트에 코드 넣기

순수 HTML:

<head> 안에 아래 코드를 넣는다:

<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XXXXXXXXXX');
</script>

WordPress:

가장 쉬운 방법은 Site Kit 플러그인(구글 공식). 관리자 → 플러그인 → Site Kit 검색 → 설치 → 구글 로그인 → Analytics 연동. 코드 편집 필요 없다.

header.php를 직접 수정해도 되지만, 테마 업데이트하면 코드가 날아갈 수 있다. Site Kit이나 자식 테마를 쓰는 게 안전하다.

Next.js App Router:

공식 권장은 @next/third-parties:

npm install @next/third-parties
// app/layout.tsx
import { GoogleAnalytics } from '@next/third-parties/google'

export default function RootLayout({ children }) {
  return (
    <html>
      <body>
        {children}
        <GoogleAnalytics gaId="G-XXXXXXXXXX" />
      </body>
    </html>
  )
}

next/script로 직접 넣을 수도 있다. 이 경우 strategy="beforeInteractive"로 해야 첫 페이지뷰부터 빠짐없이 추적된다. afterInteractive(기본값)면 React 하이드레이션 후에 실행돼서 데이터가 누락될 수 있다.

CSP(Content Security Policy) 쓰고 있으면 GA 도메인을 허용 목록에 추가해야 한다. 안 하면 브라우저가 GA 스크립트를 차단한다.

동작 확인

방법 1 — 실시간 보고서 (쉬움):
GA4 → 보고서 → 실시간 → 다른 브라우저(시크릿 모드)에서 내 사이트 접속 → 1~2분 내에 “활성 사용자 1″이 뜨면 성공

방법 2 — 개발자 도구:
크롬 F12 → Network → gtag 또는 collect 필터 → 200 OK204가 뜨면 정상

광고 차단 프로그램(uBlock 등)이 GA를 막을 수 있다. 확인할 때는 비활성화하거나 시크릿 모드를 쓰자.

보고서 읽는 법

보고서 이런 때 확인
실시간 글 발행 직후 “지금 몇 명?”
획득(트래픽 소스) 구글 검색/SNS/직접입력 중 어디서 왔는지
참여도(페이지별 조회) 어느 글이 제일 인기인지
인구통계 방문자 연령/국가
탐색(자유형식) 커스텀 보고서 (중급 이상)

솔직히 처음에는 실시간이랑 페이지별 조회수 두 개만 봐도 충분하다. 데이터가 최소 1~2주는 쌓여야 나머지가 의미 있다.

자주 하는 실수

실수 문제 해결
G-ID를 여러 사이트에 같은 거 사용 데이터 섞임 사이트마다 별도 속성
내 방문도 집계 수치 부풀려짐 ‘GA Opt-out’ 확장 설치 또는 내부 트래픽 필터
코드 넣었는데 안 됨 광고 차단 또는 ID 오타 시크릿 모드에서 실시간 확인
WP 테마 업뎃 후 GA 사라짐 header.php 직접 수정 시 초기화 Site Kit 또는 자식 테마

꼭 바꿔야 할 설정: 데이터 보존 기간

GA4 기본 데이터 보존은 2개월이다. 바꾸지 않으면 2개월 전 데이터 세부 분석이 안 된다.

GA4 → 관리 → 데이터 설정 → 데이터 보존 → 14개월로 변경 → 저장

14개월이 무료 최대. 그 이상은 GA4 360(유료)에서만 가능하다. 나도 이 설정을 나중에야 바꿔서 초기 데이터를 좀 날렸다.

같이 쓰면 좋은 도구

  • Google Search Console: 구글 검색 노출 관리. GA4랑 연동하면 “검색에서 어떻게 발견” + “발견 후 뭘 했는지”가 연결됨
  • Google AdSense: 광고 수익화. GA4 트래픽 데이터로 최적화

설정 순서: Search Console(검색) → GA4(분석) → AdSense(수익)

설치 후 느낀 점

GA4 설치 자체는 30분이면 끝나는데, 진짜 의미 있으려면 데이터가 쌓여야 한다. 최소 2~3주는 지나야 “어떤 글이 잘 되고 있고, 어디서 유입이 많은지” 패턴이 보이기 시작했다. 설치는 빨리 해둘수록 유리하다.

체크리스트:
– [ ] GA4 속성 생성 + G-ID 발급
– [ ] 사이트에 코드 삽입
– [ ] 실시간 보고서에서 확인
– [ ] 데이터 보존 14개월로 변경
– [ ] 내 방문 제외 필터 (권장)