2026년 4월 27일 · GEOPT.IO Research
AI 크롤러 14종 명시 allow 가이드 — robots.txt 작성법
GPTBot, Google-Extended, ClaudeBot, PerplexityBot 등 AI 크롤러 14종을 명시 allow하는 robots.txt 패턴과 흔히 빠지는 함정 5가지.
AI 크롤러 14종 명시 allow 가이드
robots.txt는 AI 시대에 권한 선언서로 진화했다. GPTBot, Google-Extended, ClaudeBot, PerplexityBot 등을 명시적으로 allow하는 것은 "우리는 AI 인용에 동의한다"는 메타 신호로 작용한다.
1. 14종 크롤러 — 운영 주체와 용도
| User-Agent | 운영 주체 | 용도 |
|---|---|---|
GPTBot | OpenAI | GPT 학습 데이터 수집 |
ChatGPT-User | OpenAI | ChatGPT 실시간 응답 시 페이지 fetch |
OAI-SearchBot | OpenAI | ChatGPT Search 인덱싱 |
Google-Extended | Gemini/Bard 학습 데이터 (검색 인덱싱과 분리) | |
ClaudeBot | Anthropic | Claude 학습 데이터 |
Claude-Web | Anthropic | Claude 검색·요청 |
PerplexityBot | Perplexity | 검색 인덱싱 |
Perplexity-User | Perplexity | 사용자 질문 시 페이지 fetch |
CCBot | Common Crawl | 학습 데이터 공개 코퍼스 |
Bytespider | ByteDance | 검색·AI 학습 |
anthropic-ai | Anthropic | 레거시 Anthropic 크롤러 |
cohere-ai | Cohere | 학습 데이터 |
Applebot-Extended | Apple | Apple Intelligence 학습 데이터 |
2. Next.js 16 robots.ts 권장 패턴
import type { MetadataRoute } from "next";
const AI_CRAWLERS = [
"GPTBot",
"ChatGPT-User",
"OAI-SearchBot",
"Google-Extended",
"ClaudeBot",
"Claude-Web",
"PerplexityBot",
"Perplexity-User",
"CCBot",
"Bytespider",
"anthropic-ai",
"cohere-ai",
"Applebot-Extended",
];
const COMMON_DISALLOW = ["/admin", "/api/internal", "/dashboard"];
export default function robots(): MetadataRoute.Robots {
return {
rules: [
{ userAgent: "*", allow: "/", disallow: COMMON_DISALLOW },
...AI_CRAWLERS.map((ua) => ({
userAgent: ua,
allow: "/",
disallow: COMMON_DISALLOW,
})),
],
sitemap: "https://your.site/sitemap.xml",
host: "https://your.site",
};
}
3. 흔히 빠지는 함정 5가지
3.1. 와일드카드만으로 충분하다고 판단
User-Agent: * Allow: / 만 있는 robots.txt도 대부분의 크롤러를 통과시키지만, opt-out 시그널을 별도 매칭하는 정책의 크롤러(Google-Extended, Applebot-Extended)는 명시 allow가 있을 때 신뢰 신호가 더 강하다.
3.2. user-agent 이름 오타
GPT-Bot (X), gptBot (대소문자는 OK), OpenAI-Bot (X). 공식 문서의 정확한 이름을 복사 붙여넣기. RFC 9309는 prefix 매칭이라 GPTBot은 GPTBot/1.2도 매칭한다.
3.3. Disallow를 보안 도구로 오해
robots.txt는 정직한 크롤러에 대한 요청일 뿐이다. 악성 크롤러는 무시한다. /admin, /api/internal 같은 비공개 영역은 인증·방화벽으로 막고, robots.txt에는 추가 신호로만 적어라.
3.4. 실제 효과 측정을 너무 일찍 시도
robots.txt 변경 후 인용 빈도 측정은 최소 2주 후 시작. AI 크롤러는 주~월 단위 캐시를 갖는다. 변경 직후 "왜 효과가 없냐"는 자가진단 오류.
3.5. AI 크롤러를 모두 disallow하기
"우리 콘텐츠를 학습에 쓰지 마라"는 정책은 정당하지만, 그 결과 AI 답변에 우리 사이트가 전혀 등장하지 않는다는 부작용을 감수해야 한다. 학습 거부와 인용 거부는 별개의 결정이며, 정책을 명확히 하라(예: "학습 OK, 답변 인용 OK" vs "학습 NO, 답변 인용 OK").
4. 검증 체크리스트
-
curl https://your.site/robots.txt— 14종 크롤러 명시 allow 확인 - Google Search Console → Settings → robots.txt Tester로 통과 검증
- Anthropic robots.txt 공식 가이드 대조
- OpenAI bot 공식 페이지 대조
- llms.txt 발행으로 콘텐츠 큐레이션까지 보완