본문으로 이동
Tenten GEO

robots.txt 봇 분리 전략

학습은 막고, 검색은 열어라

robots.txt를 바꾸기 전에 학습, 검색 색인, 사용자 요청에 따른 가져오기를 구분하세요. 공급자별 제어, Google-Extended, CDN 점검과 분리 템플릿을 설명합니다. 접근 허용은 인용이나 유입을 보장하지 않습니다.

v1.0 · 2026년 6월 · Tenten GEO Research

CH.01

전부 차단의 대가: 당신이 막은 건 크롤러가 아니라 유입이다

일괄 차단은 학습 크롤러와 함께 검색 크롤러도 제한할 수 있습니다. 허용 대상을 정하기 전에 공급자별 학습, 검색, 사용자 요청용 가져오기를 확인하세요. 제어 방식과 예외는 서로 다릅니다.

대부분이 AI 크롤러를 막는 이유는 '학습에 끌려가기 싫어서'입니다. 이유 자체는 틀리지 않았습니다. 틀린 건 실행입니다. robots.txt에 User-agent: * / Disallow: /를 쓰거나 Cloudflare에서 'Block AI Bots'를 원클릭으로 켜고는 이게 학습만 막는다고 착각합니다. 실제로는 ChatGPT, Perplexity, Claude의 인용 답변을 구동하는 '검색 크롤러'까지 함께 막은 것입니다. 그리고 바로 그 검색 크롤러가 당신 사이트로 트래픽을 되돌려 보내는 종류입니다.

비율을 펼쳐 놓고 보면 한 방에 막는 게 왜 낭비인지 알게 됩니다. Cloudflare가 2026년 5월에 관측한 결과, AI 크롤러 요청의 51.8%는 순수 학습, 35.7%는 혼합 용도, 순수 검색은 단 9.3%였습니다. 당신이 정말 막고 싶은 학습 트래픽은 절반이 넘고, 절대 막으면 안 되는 순수 검색은 10%도 안 됩니다. 한 방에 전부 막는 건, 절반 넘는 방문자를 쫓아내려다가 유일하게 돈을 가져다주는 그 10% 미만의 손님까지 문밖에 가둬 버리는 짓입니다.

도표 1.1

AI 크롤러 요청 구성: 학습 vs 혼합 vs 검색

Cloudflare(2026.5) AI 크롤러 트래픽 관측

순수 학습
51.8%
혼합 용도
35.7%
순수 검색
9.3%

출처: Cloudflare(2026.5). 순수 검색은 단 9.3%이며, 바로 이것이 사용자를 당신 사이트로 되돌려 보내는 종류인데도 가장 자주 한 방에 휩쓸려 오살당합니다. 본 도표는 전면 공개이며 인용을 환영합니다. 출처를 밝혀 주세요: Tenten GEO 《학습은 막고, 검색은 열어라》.

대가가 얼마나 큰가? 87.4%

ChatGPT는 AI 추천 트래픽의 87.4%를 구동합니다(Conductor). 이 검색 크롤러를 막는다는 건, 현 단계에서 가장 큰 AI 트래픽 수도꼭지를 스스로 잠그는 것입니다. 아껴지는 학습 대역폭은 KB 단위, 잃는 유입은 매출 단위입니다. 어떻게 계산해도 손해입니다.

학습과 검색 접근은 별도로 제어합니다. OpenAI는 GPTBot과 OAI-SearchBot을, Anthropic은 ClaudeBot과 Claude-SearchBot을 구분합니다. Google-Extended는 Gemini 학습과 일부 grounding을 제어하며 Google Search 포함 여부나 순위에는 영향을 주지 않습니다. 이 구분만으로 모든 순위나 인용을 보장할 수는 없습니다.

CH.02

크롤러 용도와 제어 방식

같은 공급자도 학습, 검색 색인, 사용자 요청에 따른 가져오기에 다른 에이전트를 쓸 수 있습니다. 각 이름의 공식 용도와 제어 방식을 확인하세요. 회사가 같다고 규칙을 서로 바꿔 적용할 수 있는 것은 아닙니다.

GPTBot은 학습에 쓰일 수 있는 콘텐츠를 수집하고 OAI-SearchBot은 ChatGPT 검색을 지원합니다. ChatGPT-User는 일부 사용자 요청에 따른 접근을 처리하며 Search 포함 여부를 결정하지 않습니다. Anthropic은 ClaudeBot, Claude-SearchBot, Claude-User를 학습·검색·사용자 요청으로 구분합니다. 검색 접근은 콘텐츠 발견을 돕지만 모든 답변의 출처 링크를 보장하지 않습니다.

개념도: 입구에서 두 종류의 AI 크롤러를 분류 — 출처 표기를 동반하는 검색 크롤러는 통과시키고 학습 크롤러는 차단
같은 AI 크롤러라도 검색은 열고, 학습은 막는다
봇 이름용도열기 / 막기소속 엔진 / 용도
GPTBot학습막기OpenAI 기반 모델 학습에 쓰일 수 있는 콘텐츠 수집
OAI-SearchBot검색열기ChatGPT 검색 지원. 사용자 요청에 따른 ChatGPT-User 접근과 별개
ChatGPT-User검색(실시간)열기사용자 요청에 따른 접근. robots.txt 규칙이 적용되지 않을 수 있음
ClaudeBot학습막기Anthropic 모델 학습(NoHacks / Rankry)
Claude-SearchBot검색열기Claude 검색용 콘텐츠 색인. 사용자 요청은 Claude-User가 처리
CCBot학습막기Common Crawl, 여러 모델 학습에 공급
PerplexityBot검색열기Perplexity 검색 결과와 링크. 기반 모델 학습용이 아님
Googlebot검색 / 순위열기Google Search 크롤링. AI 링크에는 색인과 검색 스니펫 자격이 필요하며 노출은 보장되지 않음
Google-Extended학습/Grounding 제어필요에 따라Gemini 학습과 일부 Gemini/Vertex grounding용 robots 제어 토큰. 별도 HTTP user-agent가 아니며 Google Search 포함 여부나 순위에 영향을 주지 않음
Bingbot검색 / 순위열기Bing 검색 및 Microsoft Copilot

공급자별로 학습, 검색, 사용자 요청의 용도가 다릅니다. Google-Extended는 grounding도 제어합니다. 검색 접근만으로 인용이 보장되지는 않습니다.

이 장의 핵심

이름을 추측하는 대신 공식 에이전트와 용도로 판단하세요. OAI-SearchBot을 거부하면 콘텐츠가 ChatGPT 검색 답변에서 제외되지만 탐색용 링크는 남을 수 있습니다. 사용자 요청용 가져오기에는 별도 규칙이 있으므로 Search나 User가 붙은 모든 이름이 같은 동작을 한다고 가정하지 마세요.

CH.03

정확한 분리 설정: robots.txt 한 줄 한 줄 작성법

크롤러의 product token과 일치하는 robots.txt 그룹을 확인합니다. RFC 9309는 일치하는 그룹을 합치고, 일치하는 그룹이 없을 때 * 그룹을 적용하도록 규정합니다. 적용 그룹 안에서는 가장 길게 일치하는 경로 규칙을 사용하며, Allow와 Disallow가 동등하면 Allow를 우선합니다.

기본 User-agent: * 그룹에 Disallow: /가 있어도 이름을 지정한 그룹의 Allow: /로 해당 검색 크롤러를 허용할 수 있습니다. 이름별 그룹이 없으면 wildcard 제한을 받을 수 있으므로 허용된다는 뜻이 아닙니다. 파일 순서가 아니라 적용 그룹과 경로를 확인하세요.

  • →학습 정책: GPTBot, ClaudeBot, CCBot을 제한하려면 각각 User-agent 그룹에 Disallow: /를 설정합니다. Google-Extended는 별도로 결정하세요. Disallow는 학습뿐 아니라 해당 grounding 용도도 제한합니다.
  • →검색 접근: User-agent: OAI-SearchBot에 Allow: /를 설정하고 Claude-SearchBot과 PerplexityBot도 각각 확인합니다. ChatGPT-User는 사용자 요청에 따른 접근이므로 robots.txt가 적용되지 않을 수 있습니다. Perplexity-User는 보통 이를 무시합니다. Anthropic은 세 에이전트가 robots.txt를 준수한다고 설명합니다.
  • →검색 엔진 — 반드시 열기: Googlebot, Bingbot은 완전 수집 가능 상태로 유지하고, AI 학습 크롤러와 절대 한 묶음으로 다루지 마세요
  • →wildcard 기본 규칙을 확인하세요. User-agent: *와 Disallow: /는 일치하는 이름별 그룹이 없는 에이전트를 제한할 수 있지만 명시적으로 일치하는 그룹을 자동으로 덮어쓰지는 않습니다. robots.txt는 크롤링 지침이지 강제 접근 제어가 아닙니다.

robots.txt의 한계

robots.txt는 크롤링 지침이며 서버 잠금 장치가 아닙니다. Anthropic은 에이전트가 이를 준수한다고 설명합니다. OpenAI는 ChatGPT-User에 적용되지 않을 수 있다고 하며 Perplexity는 Perplexity-User가 보통 무시한다고 합니다. 강제가 필요하면 호스트나 CDN 규칙을 사용하고 이름만 믿지 말고 에이전트 신원을 확인하세요.

CH.04

CDN 레벨 제어: 진짜로 막아 내는 그 벽

결론부터. robots.txt는 요청이고, CDN은 집행입니다. '예의 바르게 부탁'이 아니라 '확실하게 차단'이 필요하다면, 접근 제어는 호스트나 CDN 레벨에서 user-agent 규칙으로 403을 돌려줘야 합니다. robots.txt에만 적어 두는 것으로는 부족합니다.

왜냐고요? robots.txt에는 강제력이 없기 때문입니다. user-agent를 위장하거나 아예 규칙을 무시하는 크롤러는 당신이 Disallow한 디렉터리도 그대로 긁어 갑니다. '학습되지 않기'처럼 실질적 이해관계가 걸린 목적이라면 안내판만으로는 부족합니다. 요청이 콘텐츠에 닿기 전에 CDN/WAF가 user-agent를 보고 곧장 차단해야 합니다.

제어 계층메커니즘적합한 일한계
robots.txt안내 선언(자발적 준수)규칙을 지키는 주요 크롤러에 대해 학습 / 검색 분리강제력 없음, 무시되거나 위장으로 우회 가능
CDN / WAF 규칙user-agent 기준 403 응답 / 차단학습 크롤러를 강제로 막아 진짜 '막아 냄'명단을 정확히 유지해야 하며, 검색 크롤러를 오살하지 말 것
Cloudflare 원클릭 차단관리형 규칙 원클릭 Block AI Bots손쉬움검색 크롤러까지 함께 막기 쉬운, 한 방에 막는 고위험 방식

3계층 접근 제어 대조 — robots.txt는 분리 선언, CDN/WAF는 강제 집행, 원클릭 전부 차단은 가장 손쉽고 가장 위험

두 계층을 함께 쓰는 정답

robots.txt에 분리 의도를 분명히 적고(검색은 열고, 학습은 막고), '막아야 할' 학습 크롤러에는 CDN/WAF로 강제 차단을 더하세요. 절대로 CDN에서 '모든 AI 크롤러 차단' 관리형 규칙을 쓰지 마세요. 그건 1장의 87.4% 유입(Conductor)을 손수 잠그는 지름길입니다. 규칙을 만들 때는 OAI-SearchBot, Claude-SearchBot, PerplexityBot 등 검색 크롤러를 반드시 허용 화이트리스트에 명시하십시오.

CH.05

설정 적용 검증: 검색 크롤러가 여전히 들어오는지 확인하라

결론부터. 설정했다고 제대로 된 게 아닙니다. 분리에서 가장 위험한 실패는 '조용히 잘못 막는 것'입니다. 학습만 막았다고 믿지만 실제로는 검색 크롤러까지 막혔는데, 아무 오류 메시지도 없습니다. 가정하지 말고 능동적으로 검증해야 합니다.

검증의 목표는 하나뿐입니다. '막아야 할 학습 크롤러는 막혔고, 열어야 할 검색 크롤러는 잘 통한다'를 확인하는 것. 양쪽 모두 점검해야 합니다. 학습이 막힌 것만 확인하고 검색이 열린 건 안 보면, 절반만 검증한 셈입니다. 아래 다섯 단계는 30분 안에 한 바퀴 돌릴 수 있습니다.

STEP 1

서버 접근 로그 확인

신원을 확인한 크롤러의 200, 403, 429 응답을 의도한 정책과 비교합니다. robots.txt의 Disallow 자체는 403을 만들지 않습니다. 이 응답에는 호스트나 CDN의 강제 규칙이 필요합니다. 학습 제한과 검색 접근을 따로 확인하세요.

STEP 2

curl로 user-agent 위장 실측

curl -A로 지정한 에이전트 문자열에 호스트나 CDN이 어떻게 응답하는지 확인합니다. 강제 규칙을 설정했을 때만 학습 요청의 403을 예상하세요. 이 테스트는 규칙을 확인할 뿐 실제 크롤러의 신원이나 동작을 증명하지 않습니다. 실제 요청은 공급자의 IP 범위와 로그로도 대조하세요.

STEP 3

robots.txt 파싱 대조

robots.txt 테스트 도구에 user-agent를 하나씩 입력해, OAI-SearchBot/Claude-SearchBot/PerplexityBot은 Allowed, GPTBot/ClaudeBot/CCBot은 Disallowed로 판정되는지 확인하세요. 특히 검색 크롤러를 오살하는 User-agent: * / Disallow: /가 남아 있지 않은지 점검합니다.

STEP 4

AI 엔진에서 실제 질문 실측

ChatGPT와 Perplexity에 브랜드나 주제를 질문하고 인용 URL을 답변 관찰로 기록합니다. 인용은 기존 색인에서 나올 수 있습니다. 인용이 있다고 방금 가져왔음을 증명하지 않으며, 없다고 접근 차단을 증명하는 것도 아닙니다.

STEP 5

AI 유입 모니터링

chatgpt.com과 perplexity.ai의 유입을 결과 관찰로 추적합니다. 접근 변경은 유입 유지나 증가를 보장하지 않습니다. 변화가 생기면 로그, 크롤링 정책, 다른 원인을 함께 확인한 뒤 차단과의 관련성을 판단하세요.

이 장의 핵심

검증 순서는 '기계 먼저, 답변 나중'입니다. 먼저 로그와 curl로 크롤러 계층이 통하는지 확인하고(STEP 1–3), 그다음 실제 질문과 유입으로 효과를 확인하세요(STEP 4–5). 기계 계층을 건너뛰고 답변부터 보면 '색인이 아직 갱신 안 됨'을 '설정 실패'로 오판하고, 엉뚱한 곳을 허둥지둥 고치게 됩니다.

CH.06

분리 설정 템플릿: 복사, 붙여넣기, 끝

결론부터. 처음부터 쓸 필요 없습니다. 아래 robots.txt 템플릿은 학습은 이미 막고 검색은 열어 두었습니다. 한 줄씩 대조 설명을 보고, 당신 도메인으로 바꾸면 바로 배포할 수 있습니다.

사용법: 아래 표의 지시문을 순서대로 당신 사이트 루트의 /robots.txt에 적으세요. 학습 크롤러는 각각 독립 블록(User-agent 한 줄, Disallow 한 줄)이고, 검색 크롤러는 명시적으로 Allow하며, 마지막에 Sitemap을 남깁니다. 4장과 함께 적용하는 걸 잊지 마세요. '막아야 할' 이 몇 개를 CDN/WAF 강제 차단 규칙에도 똑같이 추가하십시오.

User-agent지시문설명
GPTBotDisallow: /GPTBot 학습 접근 제한. OAI-SearchBot은 별도 제어
ClaudeBotDisallow: /Anthropic 학습 차단
CCBotDisallow: /Common Crawl 차단(여러 모델의 학습 출처)
Google-ExtendedDisallow: /Gemini 학습과 일부 Gemini/Vertex grounding용 robots 제어 토큰. 별도 HTTP user-agent가 아니며 Google Search 포함 여부나 순위에 영향을 주지 않음
OAI-SearchBotAllow: /ChatGPT 검색 지원. 사용자 요청에 따른 ChatGPT-User 접근과 별개
ChatGPT-UserAllow: /사용자 요청에 따른 접근. robots.txt 규칙이 적용되지 않을 수 있음
Claude-SearchBotAllow: /Claude 검색용 콘텐츠 색인. 사용자 요청은 Claude-User가 처리
PerplexityBotAllow: /열기 — Perplexity 답변 색인
GooglebotAllow: /Google Search 크롤링. AI 링크에는 색인과 검색 스니펫 자격이 필요하며 노출은 보장되지 않음
BingbotAllow: /열기 — Bing 및 Copilot
(파일 끝)Sitemap: https://당신의도메인/sitemap.xml열어 둔 모든 크롤러가 전체 콘텐츠 목록을 찾도록

정책 예시는 네 개의 Disallow와 여섯 개의 Allow 그룹으로 구성됩니다. Google-Extended는 해당 grounding도 제한하며 ChatGPT-User의 Allow는 의사 표시입니다. 적용 전에 공급자별 범위와 자체 접근 정책을 확인하세요.

마지막 한마디

2026년, user-agent 하나를 잘못 막은 대가는 세계 최대의 AI 트래픽 입구(ChatGPT, AI 추천 트래픽의 87.4%, Conductor)에서 조용히 삭제되는 것입니다. 게다가 아무 오류 알림도 없습니다. 학습은 막고, 검색은 열어라. 이건 할지 말지의 선택지가 아니라, 앞으로도 인용되고 싶은지를 가르는 생사의 문제입니다.

데이터 출처 및 연구 방법

문서의 요청 구성 51.8%/35.7%/9.3%는 Cloudflare(2026년 5월), AI 유입 점유율 87.4%는 Conductor에 귀속됩니다. 서로 다른 지표이므로 합산할 수 없습니다. 크롤러 용도와 예외는 2026년 10월 5일 공식 문서로 확인했습니다: https://developers.openai.com/api/docs/bots ; https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler ; https://docs.perplexity.ai/docs/resources/perplexity-crawlers ; https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers . robots.txt 그룹과 경로 규칙은 RFC 9309를 따릅니다: https://www.rfc-editor.org/rfc/rfc9309 . 템플릿은 자체 아키텍처에 맞춰 확인할 정책 예시이며, 이 사이트의 배포된 정책이나 순위·인용·매출을 보장하는 주장이 아닙니다.

© 2026 Tenten GEO · 본 백서 내용 인용을 환영하며, 출처를 밝혀 주세요.

AI 검색의 우선 과제 상담하기

30분 벤치마크 해석 요청하기

예약 요청을 보내시면 24시간 안에 이메일로 시간을 확인합니다.