테크니컬 GEO
AI 크롤러는 JavaScript를 실행하지 않는다 — 서버 렌더링이 GEO의 전제 조건인 이유 | Suparanku
주요 AI 크롤러 — GPTBot, ClaudeBot 등 — 는 JavaScript를 실행하지 않습니다. Vercel이 2025년 초 5억 건 이상의 GPTBot 요청을 분석한 결과 JS 실행 흔적은 전무했습니다. 클라이언트 사이드 렌더링 후에만 나타나는 콘텐츠는 AI에게 보이지 않으므로, 서버에서 렌더링된 HTML이 GEO의 기술적 전제 조건입니다.
확실히 알려진 사실
Vercel은 MERJ와 함께 자사 네트워크의 AI 크롤러 트래픽을 분석했습니다. 2025년 초 기준 GPTBot 하나만으로 월 5억 건 이상의 요청이 발생했고, 결론은 명확했습니다: JavaScript 실행 흔적 제로. GPTBot은 가끔 JS 파일을 다운로드하지만(요청의 약 11.5%) 실행하지는 않습니다. ClaudeBot과 PerplexityBot도 같은 방식으로 동작합니다.
ChatGPT의 인용은 검색용 봇인 OAI-SearchBot과 ChatGPT-User가 담당하며, GPTBot은 학습용 스크레이퍼입니다. GPTBot을 차단하면 모델 학습에만 영향을 주지만, OAI-SearchBot을 차단하면 사이트가 ChatGPT 답변에서 사라집니다. 허용/차단 규칙과 CDN 점검은 GPTBot만이 아니라 검색용 봇까지 포함해야 합니다.
React나 Vue로 클라이언트에서만 렌더링되는 페이지는 AI 크롤러에게 거의 빈 HTML입니다. 제품 설명과 가격이 하이드레이션 이후에만 나타난다면, 학습에도 답변 생성에도 반영되지 않습니다.
3분 만에 사이트 점검하기
- 브라우저 개발자 도구에서 JavaScript를 비활성화하고 핵심 페이지(제품, 요금, 회사)를 새로고침하세요. 콘텐츠가 보이면 서버 렌더링입니다.
- 또는 우클릭 → “페이지 소스 보기”로 본문 텍스트가 소스 HTML에 있는지 확인하세요. 텅 빈
<div id="root"></div>는 경고 신호입니다. - CDN/WAF 설정도 확인하세요. robots.txt에서 AI 봇을 허용해도 일부 CDN은 기본값으로 차단합니다 — 흔한 숨은 원인입니다. Otterly가 100만 건 이상의 AI 인용을 분석한 결과, 73%의 사이트에 AI 크롤러를 막는 기술적 장벽이 있는 것으로 나타났습니다.
선택지
- 정적 생성(SSG) — 콘텐츠 사이트의 첫 번째 선택: 빌드 시점에 HTML이 완성되어 크롤러, 속도, 운영 모두에서 유리합니다. 이 사이트도 이 방식으로 동작합니다.
- 서버 사이드 렌더링(SSR) — 실시간 데이터가 필요한 페이지용. 요청마다 서버가 HTML을 반환합니다.
- 인터랙티브 영역 격리 — 전체 SPA 대신 필요한 위젯만 클라이언트에서 실행(아일랜드 아키텍처)하여 본문 텍스트는 항상 정적 HTML에 남깁니다.
Google의 기존 검색은 JavaScript를 렌더링할 수 있지만, Google 스스로도 크롤링 가능성과 색인 가능성을 자사 AI 기능의 전제 조건으로 명시합니다. 다만 2025년 12월부터 Google은 200이 아닌 페이지(리다이렉트와 오류)를 렌더링 파이프라인에서 완전히 제외하므로, 해당 페이지의 클라이언트 사이드 JS는 Google에게조차 보이지 않습니다. 서버 렌더링은 모든 플랫폼에서 안전한 선택입니다.
요약
대부분의 GEO 조언은 “무엇을 쓸 것인가”에 집중합니다. 그러나 그보다 먼저 기술적 관문이 있습니다: AI가 쓴 것을 볼 수나 있는가? JavaScript를 꺼도 본문이 보이는지, CDN이 AI 봇을 몰래 차단하지 않는지 — 이 두 가지 확인이 모든 GEO 작업의 출발점입니다.