TL;DR: AI 크롤러가 내 사이트를 읽지 못하는 이유?
- JavaScript 실행 불가 — AI 크롤러는 JS를 실행하지 못해 동적 콘텐츠를 인식 못함
- 타임아웃 — 1-5초 내 응답 없으면 크롤링 포기
- Schema도 JS 주입이면 인식 불가 — JSON-LD도 HTML에 직접 포함해야 함
- 해결책 — SSR/프리렌더링 + HTML 우선 콘텐츠 + 구조화된 데이터
AI 검색 시대에 ChatGPT, Claude, Perplexity에서 인용되려면 먼저 AI 크롤러가 콘텐츠를 읽을 수 있어야 합니다. 그러나 많은 웹사이트가 기술적 이유로 AI 크롤러의 접근을 막고 있습니다.
출처: SALT.agency - AI Crawlers JavaScript ↗
Vercel 네트워크 분석에 따르면, 주요 AI 크롤러(GPTBot, ClaudeBot 등)의 트래픽이 빠르게 증가하고 있으며, 사이트 크롤 예산의 상당 부분을 소비
이 글에서는 AI 크롤러가 콘텐츠를 읽을 수 있도록 사이트를 최적화하는 기술적 방법을 체계적으로 안내합니다.
AI 크롤러의 기술적 특성 이해하기
AI 크롤러 vs 전통 크롤러
출처: Prerender.io - Traditional vs AI Crawlers ↗
AI 크롤러는 종종 JavaScript를 실행하기 어려워 JS 기반 콘텐츠를 처리하고 렌더링하지 못함
| 특성 | Googlebot | GPTBot/ClaudeBot |
|---|---|---|
| JavaScript 실행 | 가능 | 불가능 |
| 타임아웃 | 관대 | 1-5초 |
| 재시도 | 여러 번 | 제한적 |
| 렌더링 대기 | 있음 | 없음 |
주요 AI 크롤러 목록
출처: AI타임스 - AI 크롤러 빅4 ↗
바이트스파이더(Bytespider), 아마존봇(Amazonbot), 클로드봇(ClaudeBot), GPT봇(GPTBot)이 상위 4개 AI 크롤러
| 크롤러 | 운영사 | 용도 | 월간 요청 |
|---|---|---|---|
| GPTBot | OpenAI | 모델 학습 | 5.69억 건 |
| ChatGPT-User | OpenAI | 실시간 검색 | - |
| ClaudeBot | Anthropic | 모델 학습 | 3.7억 건 |
| PerplexityBot | Perplexity | AI 검색 | - |
| Bytespider | ByteDance | AI 학습 | 비공개 |
JavaScript 문제와 해결 방법
문제: AI 크롤러는 JavaScript를 실행하지 못함
출처: ClickRank - LLMs Render JavaScript ↗
AI 크롤러가 JavaScript를 실행하지 못하면, 동적으로 생성되는 콘텐츠를 인식할 수 없음
React, Vue, Angular 같은 SPA 프레임워크로 만든 사이트는 AI 크롤러에게 빈 페이지로 보일 수 있습니다.
JavaScript 사이트의 AI 크롤러 인식 문제
페이지 요청 → 빈 HTML 반환 → JavaScript 실행 필요
↓
AI 크롤러: 실행 불가
↓
콘텐츠 인식 실패
해결책 1: 서버 사이드 렌더링(SSR)
출처: LinkGraph - React SEO Guide ↗
SSR은 모든 요청에 대해 콘텐츠를 렌더링하여 서버가 JavaScript 런타임을 구동하고, 전체 애플리케이션 코드를 실행해 HTML을 생성
프레임워크별 SSR 솔루션:
| 프레임워크 | SSR 솔루션 |
|---|---|
| React | Next.js |
| Vue | Nuxt.js |
| Angular | Angular Universal |
| Svelte | SvelteKit |
장점: 모든 크롤러에게 완전한 HTML 제공 단점: 서버 부하 증가, 비용 상승
해결책 2: 프리렌더링
출처: Am I Cited - Prerendering for AI Crawlers ↗
프리렌더링은 크롤러나 봇이 페이지를 요청할 때 정적 HTML 스냅샷을 온디맨드로 생성하고, 이후 요청을 위해 렌더링된 버전을 캐시
프리렌더링 서비스:
| 서비스 | 특징 |
|---|---|
| Prerender.io | 가장 널리 사용, 클라우드 기반 |
| Rendertron | Google 오픈소스, 자체 호스팅 |
| Puppeteer | 맞춤 구현 가능 |
장점: 비용 효율적, 실제 요청된 페이지만 렌더링 단점: 초기 요청 시 지연 가능
해결책 3: 하이브리드 접근
출처: Am I Cited - Prerendering for AI Crawlers ↗
많은 정교한 구현이 하이브리드 접근법을 사용: AI 크롤러와 정적 콘텐츠에는 프리렌더링, 개인화된 사용자 경험에는 SSR, 인터랙티브 기능에는 클라이언트 사이드 렌더링
하이브리드 렌더링 전략
요청 유형 판별
├── AI 크롤러 → 프리렌더링된 HTML
├── 일반 사용자 → SSR 또는 CSR
└── Googlebot → SSR (JavaScript 실행 가능)
성능 최적화: 타임아웃 방지
문제: AI 크롤러의 짧은 타임아웃
AI 크롤러는 1-5초 내에 응답을 받지 못하면 크롤링을 포기합니다.
핵심 성능 지표:
| 지표 | 권장 기준 | 중요도 |
|---|---|---|
| TTFB | < 500ms | 필수 |
| 전체 응답 | < 3초 | 권장 |
| HTML 크기 | < 100KB | 권장 |
해결책: TTFB 최적화
서버 측 최적화:
TTFB 개선 체크리스트
├── CDN 사용 (지리적 분산)
├── 서버 캐싱 활성화
├── 데이터베이스 쿼리 최적화
├── 압축 활성화 (Gzip/Brotli)
└── 서버 응답 헤더 최적화
캐싱 전략:
- 페이지 캐싱: 전체 HTML 캐시
- 오브젝트 캐싱: 데이터베이스 쿼리 결과 캐시
- CDN 캐싱: 정적 자산 엣지 서버 배포
구조화된 데이터(Schema) 최적화
문제: JavaScript로 주입된 Schema는 인식 불가
출처: ClickRank - Technical SEO for AI Crawlers ↗
구조화된 데이터가 AI에게 정확한 콘텐츠 정의, 저자 정보, 데이터 포인트 간 관계를 제시하여 AI의 처리 비용을 크게 줄임
<!-- 잘못된 방식: JavaScript로 Schema 주입 -->
<script>
document.head.innerHTML += '<script type="application/ld+json">...</script>';
</script>
<!-- 올바른 방식: HTML에 직접 포함 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "AI 크롤러 최적화 가이드"
}
</script>
해결책: AI 친화적 Schema 구현
출처: ClickRank - Technical SEO for AI Crawlers ↗
2026년에는 세분화된 구현이 요구됨: 출처 인용에 isBasedOn, 소셜 프로필 연결에 sameAs, 부가 주제 식별에 mentions 사용
AI에게 중요한 Schema 속성:
| 속성 | 용도 | 예시 |
|---|---|---|
| isBasedOn | 출처 인용 | 연구 논문, 원본 자료 링크 |
| sameAs | 엔티티 연결 | 위키피디아, 소셜 프로필 |
| mentions | 관련 주제 | 언급된 제품, 인물, 조직 |
| author | 저자 정보 | 전문가 프로필 연결 |
Article Schema 예시:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "AI 크롤러가 읽을 수 있는 사이트 만들기",
"author": {
"@type": "Person",
"name": "SEOX",
"sameAs": "https://example.com/author/seox"
},
"isBasedOn": [
"https://developers.google.com/search/docs"
],
"mentions": [
{
"@type": "SoftwareApplication",
"name": "GPTBot"
}
]
}
robots.txt 및 접근 제어
AI 크롤러별 접근 설정
출처: ClickRank - Crawlers to Allow or Block ↗
산업 표준이 다양한 AI 에이전트에 대해 구체적인 robots.txt 지시문을 사용하는 방향으로 전환됨
GEO 최적화를 위한 권장 설정:
# 검색용 AI 봇 허용
User-agent: ChatGPT-User
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Claude-User
Allow: /
# 학습용 봇은 선택적 차단
User-agent: GPTBot
Disallow: /private/
Allow: /
User-agent: ClaudeBot
Disallow: /private/
Allow: /
결정 기준:
| 목표 | 권장 설정 |
|---|---|
| AI 검색 노출 극대화 | 모든 AI 봇 허용 |
| 검색 허용, 학습 차단 | ChatGPT-User 허용, GPTBot 차단 |
| 완전 차단 | 모든 AI 봇 차단 |
자세한 설정은 robots.txt와 AI 크롤러를 참고하세요.
AI 크롤러 접근성 체크리스트
필수 점검 항목
1. HTML 콘텐츠 확인
JavaScript 비활성화 테스트
├── Chrome DevTools → Settings → Disable JavaScript
├── 페이지 새로고침
└── 핵심 콘텐츠가 보이는지 확인
2. TTFB 측정
| 도구 | 용도 |
|---|---|
| WebPageTest | 상세 성능 분석 |
| Lighthouse | 종합 성능 점수 |
| Chrome DevTools Network | 실시간 측정 |
3. Schema 유효성 검사
Schema 검증 도구
├── Google Rich Results Test
├── Schema.org Validator
└── 줍줍분석기 (종합 진단)
4. AI 크롤러 접근 테스트
| 도구 | 기능 |
|---|---|
| LLMrefs AI Crawl Checker | AI 봇 접근성 테스트 |
| 줍줍분석기 | robots.txt, Schema 종합 진단 |
| 서버 로그 분석 | 실제 AI 봇 접근 확인 |
우선순위별 개선 로드맵
Phase 1: 기본 접근성 (필수)
├── robots.txt AI 봇 허용
├── HTML에 핵심 콘텐츠 포함
└── TTFB < 500ms
Phase 2: 콘텐츠 최적화 (권장)
├── SSR/프리렌더링 적용
├── Schema 마크업 완성
└── 내부 링크 구조화
Phase 3: 고급 최적화 (선택)
├── llms.txt 파일 추가
├── 주제별 사이트맵 분할
└── AI 인용 모니터링
자주 묻는 질문
Q1: SSR과 프리렌더링 중 어떤 것을 선택해야 하나요?
프리렌더링이 비용 효율적입니다. SSR은 모든 요청마다 서버에서 렌더링하지만, 프리렌더링은 크롤러 요청 시에만 렌더링하고 캐시합니다. 트래픽이 많은 사이트라면 프리렌더링부터 시작하세요.
Q2: AI 크롤러가 내 사이트에 접근했는지 어떻게 확인하나요?
서버 로그에서 User-Agent를 확인하세요. GPTBot, ClaudeBot, PerplexityBot 등의 문자열이 있으면 AI 크롤러가 방문한 것입니다. Google Search Console에서도 일부 크롤러 정보를 확인할 수 있습니다.
Q3: Next.js를 사용하면 자동으로 AI 크롤러 친화적인가요?
Next.js의 SSR/SSG 기능을 사용하면 기본적으로 AI 크롤러 친화적입니다. 그러나 클라이언트 사이드 렌더링(CSR)만 사용하거나 useEffect에서 데이터를 가져오면 AI 크롤러가 인식하지 못할 수 있습니다. getServerSideProps나 getStaticProps를 활용하세요.
Q4: Schema 마크업을 CMS 플러그인으로 추가해도 되나요?
대부분의 CMS 플러그인은 HTML에 직접 Schema를 포함하므로 괜찮습니다. 다만 JavaScript로 동적 주입하는 방식의 플러그인은 AI 크롤러가 인식하지 못할 수 있으니 확인이 필요합니다.
Q5: AI 크롤러 최적화가 기존 SEO에 영향을 미치나요?
긍정적인 영향을 미칩니다. SSR/프리렌더링, 빠른 TTFB, 구조화된 데이터는 Googlebot에게도 좋은 신호입니다. AI 크롤러 최적화는 SEO와 GEO를 동시에 개선합니다.
마무리
AI 크롤러가 읽을 수 있는 사이트를 만드는 핵심:
- JavaScript 의존성 제거 — SSR 또는 프리렌더링 적용
- TTFB 500ms 이하 — 서버 최적화와 캐싱
- Schema를 HTML에 직접 포함 — JavaScript 주입 금지
- robots.txt에서 AI 봇 허용 — 검색용/학습용 봇 구분
- 정기 점검 — AI 크롤러 접근성 모니터링
AI 검색 시대의 기술 SEO는 Googlebot만을 위한 최적화를 넘어 모든 AI 크롤러를 위한 최적화로 확장되었습니다. 기본 원칙은 동일합니다: 빠르고, 구조화되고, 접근 가능한 콘텐츠를 제공하는 것입니다.
더 자세한 상담이 필요하시면 XEO 무료 진단을 신청하세요. 사이트의 AI 크롤러 접근성을 점검하고 개선 방안을 제안해드립니다.