병원 SEO/GEO · 2026-09-15 · 7분
GPTBot 막으면 ChatGPT 검색에서도 사라질까: 병원을 위한 OpenAI 크롤러 정리
GPTBot을 막아도 ChatGPT 검색 노출은 OAI-SearchBot이 따로 담당합니다. 병원 운영자를 위해 OpenAI 공식 봇 문서 기준으로 크롤러 3종의 역할을 정리했습니다.
핵심 요약
- OpenAI의 크롤러는 하나가 아니라 역할별로 나뉘어 있습니다. GPTBot은 모델 학습용, OAI-SearchBot은 ChatGPT 검색 노출용으로 서로 다른 일을 합니다.
- OpenAI는 "GPTBot을 막는 것은 콘텐츠를 생성형 AI 기반 모델 학습에 쓰지 말라는 표시"라고 설명하고, ChatGPT 검색 노출은 OAI-SearchBot이 독립적으로 담당한다고 밝힙니다.
- 즉 GPTBot을 막아도 우리 병원이 ChatGPT 검색 답변에서 자동으로 사라지지 않습니다. 그쪽은 OAI-SearchBot이 관리합니다.
- 병원이 챙길 것은 "AI 크롤러를 다 막았는가"가 아니라, 노출을 원하는 크롤러는 열어두고 학습만 정책적으로 결정하는 일입니다.
"AI 크롤러 하나 막았으니 이제 안심인가요?"
병원 홈페이지를 운영하다 보면 이런 이야기를 듣게 됩니다.
"요즘 ChatGPT가 남의 글을 다 학습한다는데, 우리 병원 글도 무단으로 쓰이는 것 아닌가요? robots.txt에서 GPTBot 막아두면 정리되는 거죠?"
그런데 며칠 뒤 정반대 걱정이 붙습니다.
"그런데 막았다가 ChatGPT한테 '○○동 정형외과' 물어봤을 때 우리 병원이 안 나오면 손해 아닌가요? 요즘 환자들이 ChatGPT한테도 물어본다던데."
두 걱정이 한 문장 안에서 부딪힙니다. 학습은 막고 싶은데 검색 노출은 유지하고 싶다. 그래서 "GPTBot을 막으면 ChatGPT 검색에서도 우리 병원이 사라진다"고 지레짐작하고 손을 놓게 됩니다.
결론부터 말씀드리면 그 생각은 절반만 맞습니다. 정확히는 절반도 안 맞습니다. OpenAI의 공식 크롤러 문서를 보면, 학습을 막는 크롤러와 검색 노출을 담당하는 크롤러가 애초에 다른 크롤러이기 때문입니다.
OpenAI 크롤러는 하나가 아니다
OpenAI는 자사 크롤러를 역할별로 여러 개 두고 있고, 각각 다른 user-agent 이름을 씁니다. 병원 운영자가 알아야 할 핵심은 다음 세 가지입니다.
- GPTBot — OpenAI는 "GPTBot을 막는 것(Disallow)은 사이트의 콘텐츠를 생성형 AI 기반 모델 학습에 쓰지 말라는 표시"라고 설명합니다. 즉 모델 학습에 관한 크롤러입니다.
- OAI-SearchBot — OpenAI는 "OAI-SearchBot은 ChatGPT의 검색 기능에서 웹사이트를 결과로 노출시키는 데 쓰인다"고 설명합니다. 즉 ChatGPT 검색 노출을 담당합니다.
- ChatGPT-User — 사용자가 링크를 붙여넣거나 특정 기능을 쓸 때처럼, 사용자의 행동으로 시작되는 요청을 처리합니다. OpenAI는 "ChatGPT-User는 웹을 자동으로 크롤링하는 데 쓰이지 않는다"고 밝힙니다.
이 밖에 광고 랜딩페이지의 안전성을 확인하는 OAI-AdsBot 같은 크롤러도 있지만, 일반 병원 홈페이지 운영에서 먼저 이해해야 할 것은 위 세 가지입니다.
여기서 핵심은, "AI 크롤러"라는 하나의 스위치가 있는 게 아니라는 점입니다. 학습을 막는 문과 검색에 나오게 하는 문이 따로 달려 있습니다.
GPTBot을 막아도 ChatGPT 검색에서 사라지지 않는 이유
가장 흔한 오해가 "GPTBot을 막으면 ChatGPT 관련은 다 빠진다"입니다. 하지만 OpenAI 문서는 이 둘을 분명히 나눕니다.
- GPTBot을
Disallow로 막으면, 우리 사이트 콘텐츠가 모델 학습에 쓰이지 않도록 하는 의사표시가 됩니다. - ChatGPT의 검색 답변에 우리 병원이 나올지는 OAI-SearchBot이 따로 결정합니다.
OpenAI는 검색 노출에 대해 이렇게 안내합니다.
"OAI-SearchBot에서 옵트아웃(차단)한 사이트는 ChatGPT 검색 답변에 노출되지 않는다. (검색 결과에 잘 나오게 하려면) robots.txt에서 OAI-SearchBot을 허용할 것을 권장한다."
정리하면 이렇게 됩니다.
| 하고 싶은 일 | 관련 크롤러 | 조치 |
|---|---|---|
| AI 모델 학습에서 빼기 | GPTBot | robots.txt에서 GPTBot Disallow |
| ChatGPT 검색에 나오게 하기 | OAI-SearchBot | robots.txt에서 OAI-SearchBot 허용 |
| ChatGPT 검색에서 빼기 | OAI-SearchBot | robots.txt에서 OAI-SearchBot Disallow |
즉 "학습은 막고, 검색 노출은 유지"가 실제로 가능합니다. GPTBot만 막고 OAI-SearchBot은 열어두면 됩니다. 두 크롤러가 독립적으로 움직이기 때문입니다. 이 구조는 구글 쪽에서 학습용 토큰(Google-Extended)과 검색 노출이 분리되는 것과 같은 논리입니다. 회사마다 크롤러 이름만 다를 뿐, "학습과 검색은 다른 통로"라는 원칙은 반복됩니다.
예를 들어 학습은 빼되 검색 노출은 유지하려는 병원이라면, robots.txt는 대략 이런 모양이 됩니다(설정 예시이며, 실제 적용 전 담당자와 확인하세요).
# ChatGPT 검색 노출은 유지
User-agent: OAI-SearchBot
Allow: /
# 모델 학습에는 콘텐츠를 쓰지 않도록 표시
User-agent: GPTBot
Disallow: /
ChatGPT-User는 robots.txt 적용이 다르다
한 가지 짚어둘 점이 있습니다. 사용자가 직접 링크를 건네거나 특정 기능을 실행해서 발생하는 요청(ChatGPT-User)에 대해, OpenAI는 이렇게 설명합니다.
"ChatGPT-User는 웹을 자동으로 크롤링하는 데 쓰이지 않는다. 이러한 동작은 사용자에 의해 시작되므로 robots.txt 규칙이 적용되지 않을 수 있다."
무슨 뜻이냐면, 자동으로 웹을 훑고 다니는 크롤러(GPTBot·OAI-SearchBot)와 달리, 사용자가 "이 링크 읽고 요약해줘"라고 시켜서 페이지를 가져오는 경우는 성격이 다르다는 것입니다. 이건 대량으로 콘텐츠를 긁어가는 동작이 아니라, 사용자가 이미 알고 찾아온 페이지를 그 순간 불러오는 것에 가깝습니다. robots.txt로 자동 크롤링을 조절하는 것과는 별개의 층위라는 점만 알아두면 됩니다.
병원은 어떻게 설정해야 할까
정답이 하나로 정해진 문제는 아닙니다. 다만 병원이라는 업종을 두고 판단 기준을 정리하면 이렇습니다.
OAI-SearchBot은 대체로 열어두는 쪽을 권합니다. 환자가 ChatGPT에 "○○ 증상 어느 병원 가야 하나요" 같은 질문을 했을 때, 우리 병원의 정확한 공개 정보가 근거로 활용될 통로를 스스로 닫을 이유는 크지 않습니다. 노출을 원한다면 막지 않는 게 기본입니다.
GPTBot(학습)은 병원의 정책으로 결정하면 됩니다. 고유 콘텐츠가 모델 학습에 쓰이는 것 자체를 원치 않는다는 방침이 뚜렷하면 막을 수 있고, 굳이 막을 이유가 없다면 그대로 둬도 됩니다. 중요한 건 이 결정이 검색 노출과 무관한 별개의 정책 판단이라는 점입니다. "막으면 검색에서 손해 본다"거나 "열어두면 AI에 더 잘 나온다"는 식의 인과로 결정하면 안 됩니다. 그 인과는 성립하지 않습니다.
그리고 OpenAI의 크롤러 설정은 어디까지나 OpenAI 제품군에 대한 것입니다. 구글·다른 AI 서비스는 각자 별도의 크롤러 토큰을 두고 있어, OpenAI 하나만 조절한다고 모든 AI가 통제되는 것은 아닙니다. 여러 AI 크롤러를 한 파일에서 관리하는 관점은 llms.txt와 AI 검색을 다룬 글에서 함께 참고하실 수 있습니다.
실무에서 진짜 위험한 실수
크롤러를 정리하다가 실제로 사고가 나는 지점은 따로 있습니다. AI 크롤러를 막으려다 robots.txt 문법을 잘못 써서 모든 크롤러를 통째로 막아버리는 경우입니다.
# 의도: AI 학습만 막기
# 사고: 전체 크롤러를 막아 구글 검색에서도 사라짐
User-agent: *
Disallow: /
User-agent: *에 Disallow: /를 걸면 이것은 특정 AI 크롤러만 막는 게 아니라 모든 크롤러의 전체 접근을 막는 설정입니다. Googlebot까지 막히면 구글 검색에서 병원이 통째로 빠질 수 있습니다. 특정 크롤러만 조절하려면 대상 user-agent(GPTBot 등)를 정확히 지정해야 합니다.
한 줄 차이로 결과가 정반대가 되는 영역이라, robots.txt와 noindex를 다룰 때 병원에서 자주 나오는 실수들은 검색에서 특정 페이지를 빼는 방법 글에서 함께 정리해두었습니다. 배포 전에 반드시 확인하시길 권합니다.
CodeShift가 이 문제를 보는 관점
CodeShift는 병원의 AI 검색 노출을 측정하는 도구(포도체크)를 월 3회 주기로 운영하고 있습니다(2026-08 기준). 여러 병원의 상태를 반복해서 보면 한 가지가 분명해집니다.
병원의 AI 검색 노출은 "AI 크롤러를 열었느냐 막았느냐"의 스위치 하나에서 갈리지 않습니다. 크롤링이 막혀 있지 않은가, 진료과·의료진·진료시간·위치 같은 중요한 정보가 스크립트 뒤가 아니라 HTML 텍스트로 제공되는가, 정보가 정확하고 최신인가 — 이 기본기에서 갈립니다. 크롤러 설정은 그다음에 오는, 노출과는 다른 층위의 정책 문제입니다.
그래서 "AI에 잘 나오게 해달라"는 요청을 받으면, 저희는 크롤러 토큰부터 손대지 않습니다. 먼저 공개 페이지가 제대로 크롤링·색인되는 상태인지부터 확인합니다. 노출을 실제로 어떻게 측정하고 확인하는지는 병원 AI 검색 성과를 확인하는 법에서 더 자세히 다뤘습니다.
오늘 바로 점검할 것
원장님 병원 사이트에서 지금 바로 확인할 수 있는 항목입니다.
- robots.txt 열어보기:
우리병원도메인/robots.txt를 브라우저 주소창에 직접 쳐보세요.User-agent: *아래에Disallow: /가 있다면 전체 크롤링이 막힌 상태일 수 있으니 즉시 담당자와 확인하세요. - OAI-SearchBot이 막혀 있는지 확인: robots.txt에
OAI-SearchBot을Disallow한 규칙이 있다면, ChatGPT 검색 노출을 스스로 닫아둔 상태입니다. 노출을 원한다면 이 설정이 의도한 것인지 점검하세요. - 학습과 검색을 분리해서 판단: "AI 학습에서 빼고 싶다"인지 "검색 노출까지 빼고 싶다"인지 목적을 먼저 정하세요. 학습은 GPTBot, ChatGPT 검색 노출은 OAI-SearchBot으로 대상이 다릅니다.
- 과거에 넣은 규칙 점검: robots.txt에
GPTBot규칙이 이미 있다면, 그게 의도한 설정인지 확인하세요. 누군가 예전에 무심코 넣었을 수 있습니다. - 핵심 정보가 텍스트인지 보기: 진료시간·위치·진료과·의료진 정보가 이미지나 스크립트 뒤가 아니라 페이지 텍스트로 보이는지 확인하세요. 크롤러 정책보다 이게 먼저입니다.
이 다섯 가지가 정리되면, GPTBot을 막을지 말지는 성과 기대가 아니라 병원의 정책으로 차분히 결정하면 됩니다. 판단이 서지 않거나 robots.txt 설정이 걱정되신다면 문의하기로 현재 상태부터 함께 점검하겠습니다.
결론
OpenAI의 크롤러는 하나의 스위치가 아닙니다. GPTBot은 "우리 글을 모델 학습에 쓸지"를, OAI-SearchBot은 "ChatGPT 검색에 나올지"를 각각 따로 결정합니다. OpenAI는 이 둘이 독립적임을 공식 문서에서 분명히 하고 있습니다.
그러니 "AI 크롤러를 막을까 말까"를 검색 노출 걱정과 한 덩어리로 묶지 마세요. 노출을 원하면 OAI-SearchBot은 열어두고, 학습 참여 여부만 병원의 정책으로 결정하면 됩니다. 두 질문을 분리하는 순간, 결정은 훨씬 단순해집니다.
참고 자료
- OpenAI, "Overview of OpenAI Crawlers"(GPTBot·OAI-SearchBot·ChatGPT-User·OAI-AdsBot) https://developers.openai.com/api/docs/bots
- OpenAI Help Center, "Publishers and Developers - FAQ" https://help.openai.com/en/articles/12627856-publishers-and-developers-faq
- Google Search Central, "Robots.txt Introduction and Guide" https://developers.google.com/search/docs/crawling-indexing/robots/intro