robots.txt로 AI 봇 허용 여부를 정하면 가장 먼저 바뀌는 것은 그 봇의 수집 요청입니다. 검색형 봇을 막으면 그 서비스의 검색 답변에서 빠지거나 노출이 줄 수 있습니다. 학습형 봇을 막으면 학습에서 빼 달라는 의사가 전달됩니다.
Google은 AI 개요·AI 모드 접근을 Googlebot 규칙으로 관리하라고 안내합니다. Google-Extended 차단은 Google 검색 포함 여부에 영향이 없다고 밝힙니다. 허용은 수집을 허락할 뿐 인용을 보장하지 않으므로, 효과는 서버 기록의 수집 변화로 먼저 확인합니다.
robots.txt 결정은 무엇을 정하고, 무엇을 정하지 않나요?
robots.txt(사이트 최상위에 두는 크롤러 접근 규칙 파일)는 사용자 에이전트(요청을 보낸 프로그램 이름)마다 가져가도 되는 경로를 밝히는 파일입니다. 표준 문서 RFC 9309는 이 규칙이 접근 인가 수단이 아니라고 명시합니다.
Google 문서는 robots.txt를 주로 크롤러 트래픽 관리에 쓰는 파일로 설명합니다. 페이지를 Google에서 빼는 수단이 아니라는 점도 밝힙니다. 따라서 robots.txt 결정은 GEO 신호 가운데 수집 단계를 바꾸는 결정입니다.
| 수단 | 정하는 것 | 정하지 않는 것 |
|---|---|---|
| robots.txt 차단 규칙 | 해당 봇이 그 경로를 가져갈지 | 색인 제외, 답변 인용 여부 |
| noindex(메타 태그·응답 헤더) | Google 검색결과 제외 | 수집 허용 여부. 봇이 페이지를 가져가야 지시를 읽습니다 |
| nosnippet·max-snippet 등 스니펫 제어 | Google 검색과 AI 기능에 보이는 정보 범위 | 수집 허용 여부 |
| Google-Extended 토큰 | Google의 일부 다른 시스템에서 학습·그라운딩에 쓰는지 | Google 검색 포함 여부와 순위 |
| 로그인·비밀번호 보호 | 실제 접근 차단 | 봇별로 나눈 의사 표시 |
허용 규칙을 적으면 인용 가능성이 올라간다는 오해
Google 문서는 AI 개요와 AI 모드에서 지원 링크가 되는 요건을 두 가지로 설명합니다. 색인되어 있어야 하고, 스니펫과 함께 검색에 나올 자격이 있어야 합니다. 추가 기술 요건은 없다고 밝힙니다.
같은 문서는 요건을 갖춰도 크롤링·색인·게재가 보장되지 않는다고 설명합니다. 허용은 문을 여는 조건이므로 우대 신호로 해석하지 않습니다.
차단하면 검색결과와 답변에서 곧바로 사라진다는 오해
Google 문서에 따르면 차단된 페이지도 다른 페이지가 링크하면 주소가 검색결과에 남을 수 있습니다. 이때 설명문은 표시되지 않습니다. 이미 색인된 페이지를 빼려면 noindex나 접근 보호를 쓰고, noindex가 읽힐 때까지 수집을 허용합니다.
차단과 허용은 GEO 신호에 각각 어떻게 나타나나요?
GEO 신호는 세 층으로 나누어 보면 해석이 쉽습니다. 수집은 서버 기록에 남는 봇 요청입니다. 자격은 답변에 쓰일 수 있는 상태입니다. 인용은 답변에 출처로 표시되는 결과입니다.
| 결정 | 수집 신호 | 자격·인용에 대한 공식 설명 |
|---|---|---|
| 학습형 봇 차단(GPTBot·ClaudeBot) | 해당 봇 요청 감소 | OpenAI와 Anthropic은 학습 제외 의사 표시로 설명합니다. |
| 검색형 봇 차단(OAI-SearchBot·Claude-SearchBot·PerplexityBot) | 해당 봇 요청 감소 | OpenAI: ChatGPT 검색 답변에서 제외되며 이동용 링크로는 나올 수 있습니다. Anthropic: 검색 응답의 노출이 줄 수 있습니다. Perplexity: 검색 결과에 나오려면 허용을 권장합니다. |
| 사용자 요청형 봇 차단(ChatGPT-User·Claude-User·Perplexity-User) | 서비스마다 다르게 나타납니다 | OpenAI: 규칙이 적용되지 않을 수 있습니다. Perplexity: 대체로 규칙을 따르지 않습니다. Anthropic: 사용자 질문을 위한 가져오기를 멈춥니다. |
| Googlebot 차단 | Google 검색 수집 감소 | AI 개요·AI 모드 지원 링크는 검색 색인 자격을 따릅니다. |
| Google-Extended 차단 | 별도 크롤러가 없는 사용 제어 토큰이라 요청 수로는 확인되지 않습니다 | Google 검색 포함 여부와 순위에 영향이 없습니다. |
같은 차단이라도 움직이는 층이 다릅니다. 학습형 차단은 수집을 줄이고 학습 제외 의사를 전달하지만 검색 답변 자격과는 별개입니다. 검색형 차단은 수집과 자격을 함께 줄입니다. 결정을 기록할 때는 어느 층을 바꾸려 했는지 함께 적습니다.
목적별 규칙은 어떻게 적나요?
RFC 9309는 한 그룹에 User-agent 줄을 여러 개 둘 수 있다고 정합니다. 아래는 대표 조합이며, 경로는 가상의 예입니다.
| 목적 | User-agent 줄 | Disallow·Allow 줄 |
|---|---|---|
| 학습 제외, AI 검색 유지 | 그룹 1: GPTBot, ClaudeBot / 그룹 2: OAI-SearchBot, Claude-SearchBot, PerplexityBot | 그룹 1: Disallow: / / 그룹 2: 공통 차단 경로만(예: Disallow: /admin/) |
| Gemini 학습·그라운딩 제외, Google 검색 유지 | Google-Extended | Disallow: / (Googlebot 그룹은 그대로 둡니다) |
| 특정 경로만 AI 검색에서 제외 | OAI-SearchBot, Claude-SearchBot, PerplexityBot | Disallow: /admin/, Disallow: /event-closed/ |
사용자 요청형 봇은 이 조합으로도 막히지 않을 수 있습니다. 해당 봇은 기록에서 따로 집계합니다.
변경은 언제부터 신호에 반영되나요?
robots.txt를 고쳐도 봇은 이전에 저장한 파일을 한동안 그대로 씁니다. 공식 문서가 밝히는 반영 시점은 다음과 같습니다.
- Google은 robots.txt를 보통 최대 24시간 저장한다고 설명합니다.
- RFC 9309는 파일에 닿지 못하는 경우가 아니면 저장본을 24시간 넘게 쓰지 말라고 정합니다.
- OpenAI는 검색 결과와 관련해 시스템이 변경에 맞춰지기까지 약 24시간이 걸릴 수 있다고 밝힙니다.
- Perplexity는 시스템에 반영되기까지 최대 24시간이 걸릴 수 있다고 밝힙니다.
nosnippet 같은 미리보기 제어는 robots.txt와 달리 페이지를 다시 크롤링할 때 읽힙니다. Google의 AI 기능 문서는 크롤링에 며칠에서 몇 달까지 걸릴 수 있다고 설명합니다.
실무에서는 변경 전 7일과 변경 후 7일을 비교하는 방법을 권합니다. 이때 변경 뒤 첫 24시간과 해당 봇이 /robots.txt를 다시 요청하기 전 구간은 뺍니다. 그러면 아직 반영되지 않은 상태를 효과 없음으로 오판하지 않습니다.
의도와 다르게 신호가 바뀌는 설정은 무엇인가요?
특정 봇 그룹을 추가하면 공통 규칙이 빠집니다
Google 문서는 크롤러가 가장 구체적으로 일치하는 그룹 하나만 따른다고 설명합니다. 특정 봇 그룹과 전체(*) 그룹은 합쳐지지 않습니다. RFC 9309도 일치하는 그룹이 없을 때만 전체(*) 그룹을 따르도록 정합니다.
예를 들어 가상의 ○○ 기업이 전체 그룹에 관리자 경로 차단을 적었다고 가정합니다. 여기에 검색형 봇 그룹을 새로 만들고 전체 허용만 적으면, 그 봇에는 관리자 경로 차단이 적용되지 않습니다. 실무에서는 봇 그룹마다 공통 차단 경로를 다시 적는 방법을 권합니다.
robots.txt 응답 상태가 결정을 뒤집습니다
Google 문서는 robots.txt가 429를 뺀 4xx로 응답하면 파일이 없는 것으로 본다고 설명합니다. 규칙 해석상 제한이 없는 상태로 취급됩니다. RFC 9309도 4xx이면 크롤러가 모든 자원에 접근할 수 있다고 정합니다.
5xx와 429 응답이면 Google은 처음 12시간 동안 사이트 크롤링을 멈춥니다. 그 뒤 30일까지는 마지막으로 받은 정상 파일을 씁니다. 30일이 지나도 오류가 이어지면 사이트 가용성에 따라 제한이 없는 것으로 보거나 크롤링을 멈춥니다. RFC 9309는 서버 오류로 파일에 닿지 못하면 전체 차단으로 간주하라고 정합니다.
방화벽 설정이 얽히면 결과는 두 경우로 나뉩니다.
- /robots.txt만 4xx로 응답하고 페이지는 열린 경우: 규칙이 없는 것으로 처리되어 막으려던 경로도 수집될 수 있습니다.
- 봇 자체를 IP나 방화벽으로 막는 경우: 페이지 수집은 막히지만 규칙도 읽히지 않습니다. Anthropic은 IP 차단이 robots.txt 읽기를 방해해 거부 의사가 안정적으로 전달되지 않을 수 있다고 안내합니다.
실제로 수집되는지는 규칙 해석이 아니라 페이지 요청의 응답 코드로 판단합니다.
파일 크기와 하위 도메인
Google은 500KiB를 넘는 부분을 무시합니다. Anthropic은 거부할 하위 도메인마다 따로 설정하라고 안내합니다. 본 도메인만 고치고 블로그 하위 도메인을 놓치면 그쪽 수집은 그대로 남습니다.
수집이 줄거나 늘었을 때는 어떻게 해석하나요?
수집 변화를 곧바로 결정의 효과로 판정하면 원인을 놓칠 수 있습니다. 다음 순서로 원인을 좁힙니다.
- 같은 기간 /robots.txt 응답 코드가 200이었는지 확인합니다. 5xx나 429가 섞였다면 결정이 아니라 오류의 영향일 수 있습니다.
- 차단했는데 수집이 오히려 늘었다면 /robots.txt가 429를 뺀 4xx로 응답했는지 확인합니다.
- 변화한 봇이 변경 대상 그룹에 해당하는지 확인합니다. 대상이 아닌 봇까지 줄었다면 그룹 결합 문제나 서버 쪽 차단을 의심합니다.
- 감소가 차단한 경로에만 나타났는지 페이지 단위로 비교합니다.
- 사용자 요청형 봇은 서비스마다 규칙을 따르는 방식이 다르므로 따로 집계합니다.
- 인용은 수집과 분리해 각 서비스 화면에서 관찰하고, 그 결과로 따로 판단합니다.
결정 전후 기록은 어떻게 남기나요?
아래 양식을 robots.txt를 고칠 때마다 한 건씩 작성합니다. 값은 가상의 예입니다.
| 항목 | 기록 예시 |
|---|---|
| 변경 일시 | 2026-10-21 10:00 |
| 대상 그룹 | OAI-SearchBot 그룹 신설 |
| 변경 내용 | 종료 이벤트 경로 차단 추가, 공통 차단 경로 복사 |
| 바꾸려는 층 | 수집·자격(검색 답변 노출 축소) |
| 기대 신호 | 해당 경로의 OAI-SearchBot 요청 감소 |
| 확인 항목 | /robots.txt 응답 코드, 봇의 /robots.txt 재요청 시각, 경로별 요청 수 |
| 판정 기준 | 첫 24시간과 재요청 이전 구간을 뺀 변경 전후 7일 비교 |
| 판정일 | 변경 8일 뒤 |
서버·보안 담당자에게 보낼 요청 문안
변경 전후 각 7일 동안의 기록 추출을 아래와 같이 요청드립니다.
- 다음 봇의 요청을 요청 시각·경로·응답 코드 기준으로 추출해 주시기 바랍니다. OpenAI의 GPTBot·OAI-SearchBot·ChatGPT-User, Anthropic의 ClaudeBot·Claude-SearchBot·Claude-User, Perplexity의 PerplexityBot·Perplexity-User, Google의 Googlebot입니다.
- 같은 기간 /robots.txt 요청의 응답 코드를 봇별로 함께 부탁드립니다.
- 방화벽이나 CDN의 봇 차단 규칙이 /robots.txt 경로와 하위 도메인에도 적용되는지 확인해 주시기 바랍니다.
정리
- 현재 robots.txt의 봇 그룹을 검토하고, 그룹마다 바꾸려는 층(수집·자격)을 적습니다.
- 특정 봇 그룹에 공통 차단 경로가 빠지지 않았는지, 하위 도메인 파일도 같은지 확인합니다.
- /robots.txt가 모든 봇에 200으로 응답하는지 서버·보안 담당자에게 확인을 요청합니다.
- 변경할 때마다 기록 양식을 작성하고, 첫 24시간을 뺀 변경 전후 7일의 봇 요청을 페이지 단위로 비교합니다.
- 인용은 수집과 분리해 판정일에 각 서비스 화면에서 따로 관찰합니다.
참고 자료
- Introduction to robots.txt (Google Search Central, 확인일 2026-10-22)
- How Google interprets the robots.txt specification (Google Search Central, 확인일 2026-10-22)
- Robots meta tag, data-nosnippet, and X-Robots-Tag specifications (Google Search Central, 확인일 2026-10-22)
- AI features and your website (Google Search Central, 확인일 2026-10-22)
- Google's common crawlers (Google Search Central, 확인일 2026-10-22)
- RFC 9309 Robots Exclusion Protocol (RFC Editor, 확인일 2026-10-22)
- Overview of OpenAI Crawlers (OpenAI, 확인일 2026-10-22)
- Does Anthropic crawl data from the web, and how can site owners block the crawler? (Anthropic, 확인일 2026-10-22)
- Perplexity Crawlers (Perplexity, 확인일 2026-10-22)
