크롤링·플랫폼 · 공식 문서
유료 콘텐츠 AI 크롤러 차단, 검색과 나눠 정하는 순서
구독을 확인한 요청에만 서버가 본문을 보내면, 유료 본문은 크롤러 이름과 상관없이 구독자에게만 나갑니다. 검색 노출이 필요하면 확인된 Googlebot 에만 전체 본문을 주고, 구글 안의 AI 사용은 data-nosnippet·nosnippet·Google-Extended 로 따로 정합니다.
유료 회원 콘텐츠는 두 가지를 같이 원합니다. 검색에서는 찾을 수 있게 하되, 본문은 돈을 낸 사람만 읽게 하는 것입니다.
AI 크롤러가 생기면서 하나가 더 붙었습니다. 검색 노출은 두되 AI 학습과 답변에는 쓰이지 않게 하는 것입니다. 세 가지는 설정 자리가 각각 다릅니다.
발견 01
유료 콘텐츠는 잠금, 검색 노출, AI 사용, 확인의 8단계로 나눠 정합니다
| 순서 | 단계 | 하는 일 | 공식 문서 원문 |
|---|---|---|---|
| 1 | 페이지를 두 갈래로 나누기 | 검색에 노출할 유료 페이지와 회원만 보는 페이지를 목록으로 나눕니다 | This guide only applies to content that you want crawled and indexed. If you don't want to have your paywalled content indexed, you can stop reading now.이 가이드는 크롤링·색인을 원하는 콘텐츠에만 해당한다. 페이월 콘텐츠를 색인하지 않으려면 여기까지만 읽어도 된다. |
| 2 | 서버에서 잠그기 | 구독을 확인한 요청에만 본문을 응답에 담습니다. 화면에서 가리기만 하면 응답에 본문이 남습니다 | This isn't a reliable way to limit access to the content. Make sure your paywall only provides the full content once the subscription status is confirmed.이것은 콘텐츠 접근을 제한하는 믿을 만한 방법이 아닙니다. 구독 상태가 확인된 뒤에만 전체 콘텐츠를 보내도록 하세요. |
| 3 | 확인된 Googlebot 에만 전체 본문 | 역방향 DNS 로 Googlebot 인지 확인된 요청에만 잠금을 풉니다 | If you operate a paywall or a content-gating mechanism, we don't consider this to be cloaking if Google can see the full content of what's behind the paywall just like any person who has access to the gated material and if you follow our Flexible Sampling general guidance. Run a reverse DNS lookup on the accessing IP address from your logs, using the host command.페이월이나 콘텐츠 잠금을 운영할 때, 접근 권한이 있는 사람처럼 Google 이 페이월 뒤 전체 콘텐츠를 볼 수 있고 유연한 샘플링 안내를 따르면 클로킹으로 보지 않습니다. 로그에 찍힌 IP 로 host 명령의 역방향 DNS 조회를 하세요. |
| 4 | 페이월 표시 구조화 데이터 | isAccessibleForFree 를 false 로 두고, 유료 구간을 .class 선택자로 가리킵니다 | Set the isAccessibleForFree property to false to specify that this section is behind a paywall. Only use .class selectors for the cssSelector property.이 구간이 페이월 뒤에 있다고 지정하려면 isAccessibleForFree 를 false 로 둡니다. cssSelector 에는 .class 선택자만 씁니다. |
| 5 | 구글 AI 기능의 사용 범위 | 유료 구간에 data-nosnippet 을 붙이거나, 페이지 전체를 빼려면 nosnippet 을 씁니다 | AI Overviews and AI Mode offer a preview of a topic or query based on a variety of sources, including web sources. As such, they are subject to Search's preview controls.AI 개요와 AI 모드는 웹을 포함한 여러 출처로 주제의 미리보기를 보여 줍니다. 그래서 검색의 미리보기 제어를 따릅니다. |
| 6 | 제미나이 학습 사용 | robots.txt 에 Google-Extended 차단을 넣습니다. 구글 검색 노출은 그대로입니다 | Google-Extended does not impact a site's inclusion in Google Search nor is it used as a ranking signal in Google Search.Google-Extended 는 사이트가 구글 검색에 포함되는 데 영향을 주지 않으며, 구글 검색의 순위 신호로도 쓰이지 않는다. |
| 7 | 다른 AI 크롤러 | 확인된 Googlebot 이 아닌 요청은 일반 방문자와 같은 무료 구간만 받습니다 | If you don't want the content to be accessible to the browser at the time of serving, choose a paywall implementation that doesn't supply the paywalled content to the browser.제공 시점에 브라우저가 콘텐츠에 접근하지 못하게 하려면, 페이월 콘텐츠를 브라우저에 보내지 않는 구현을 고르세요. |
| 8 | 확인 | URL 검사 도구로 Googlebot 이 받은 본문을 보고, 로그아웃 상태 응답에 유료 본문이 없는지 봅니다 | Use the URL Inspection tool to test how Google crawls and renders a URL on your site.URL 검사 도구로 구글이 사이트의 URL을 어떻게 크롤링하고 렌더링하는지 테스트한다. |
첫 단계에서 페이지를 나누는 이유는 구글 문서 자체가 갈라지기 때문입니다. 페이월 구조화 데이터 문서는 색인할 콘텐츠에만 적용된다고 적었습니다.
회원만 보는 페이지(주문 내역, 내부 자료실)는 2단계 잠금으로 끝납니다. 검색에 노출할 유료 페이지만 3단계부터 이어 갑니다.
발견 02
본문을 지키는 것은 robots.txt 가 아니라 서버의 구독 확인입니다
| 잠그는 방법 | 실제로 일어나는 일 | 공식 문서 원문 |
|---|---|---|
| robots.txt 에 유료 경로 차단 | 따르는 크롤러만 멈춥니다. 경로 목록이 공개됩니다 | These rules are not a form of access authorization. Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable.이 규칙은 접근 권한을 주거나 막는 장치가 아니다. robots.txt 에 경로를 적으면 그 경로가 공개되어 누구나 찾을 수 있게 된다. |
| 자바스크립트로 본문 가리기 | 응답에 본문이 그대로 있어 크롤러가 읽을 수 있습니다 | Some JavaScript paywall solutions include the full content in the server response, then use JavaScript to hide it until subscription status is confirmed. This isn't a reliable way to limit access to the content.어떤 JavaScript 페이월은 서버 응답에 전체 본문을 넣고 구독이 확인될 때까지 JavaScript 로 가린다. 이것은 접근을 제한하는 믿을 만한 방법이 아니다. |
| 서버에서 구독 확인 뒤 응답 | 확인 전 응답에 본문이 없어 어떤 크롤러도 받지 못합니다 | Make sure your paywall only provides the full content once the subscription status is confirmed.구독 상태가 확인된 뒤에만 페이월이 전체 콘텐츠를 보내도록 하세요. |
Make sure your paywall only provides the full content once the subscription status is confirmed.
구독 상태가 확인된 뒤에만 페이월이 전체 콘텐츠를 보내도록 하세요.
구독 확인을 서버에서 하면 결과가 단순해집니다. 로그인하지 않은 요청에는 무료 구간만 나가고, 이름이 무엇이든 크롤러도 같은 응답을 받습니다.
구글이 권하는 무료 구간 방식은 두 가지입니다. 월 몇 편을 여는 미터링과, 기사 앞부분만 보여 주는 리드인입니다.
There are two types of sampling we advise: metering, which provides users with a quota of articles to consume before requiring users to subscribe or log in, after which paywalls will start appearing; and lead-in, which offers a portion of an article's content without it being shown in full.
권하는 샘플링은 두 가지다. 정해진 편수만큼 보여 준 뒤 구독·로그인을 요구하는 미터링과, 글의 일부만 보여 주고 전체는 보여 주지 않는 리드인이다.
발견 03
검색 노출이 필요하면 확인된 Googlebot 에만 전체 본문을 주고 페이월을 표시합니다
If you operate a paywall or a content-gating mechanism, we don't consider this to be cloaking if Google can see the full content of what's behind the paywall just like any person who has access to the gated material and if you follow our Flexible Sampling general guidance.
페이월이나 콘텐츠 제한 장치를 운영해도, 구글이 그 자료에 접근 권한이 있는 사람처럼 페이월 뒤 전체 콘텐츠를 볼 수 있고 유연한 샘플링 가이드를 따르면 클로킹으로 보지 않는다.
Googlebot 에만 다른 본문을 주면 클로킹처럼 보입니다. 구글은 페이월 표시 구조화 데이터가 이 둘을 구분하게 돕는다고 적었습니다.
표시는 두 줄입니다. 문서 전체에 isAccessibleForFree: false 를 두고, hasPart 의 cssSelector 로 유료 구간의 클래스 이름을 가리킵니다.
Googlebot 확인은 사용자 에이전트 이름만으로 하면 안 됩니다. 역방향 DNS 와 정방향 DNS 를 차례로 조회하는 순서는 「GPTBot IP 범위 확인」 편에 자세히 적었습니다.
| 확인할 것 | 공식 문서 원문 |
|---|---|
| 구조화 데이터가 하는 일 | This structured data helps Google differentiate paywalled content from the practice of cloaking, which violates spam policies.이 구조화 데이터는 Google 이 페이월 콘텐츠와 스팸 정책 위반인 클로킹을 구분하도록 돕습니다. |
| Googlebot 이 페이지에 접근할 수 있는가 | If you want Google to crawl and index your content, including the paywalled sections, make sure Googlebot, and Googlebot-News if applicable, can access your page.페이월 구간까지 크롤링·색인되기를 원하면 Googlebot(해당하면 Googlebot-News)이 페이지에 접근할 수 있게 하세요. |
| 설정을 읽으려면 크롤링이 허용되어야 함 | Keep in mind that these settings can be read and followed only if crawlers are allowed to access the pages that include these settings.이 설정은 그 페이지에 크롤러 접근이 허용될 때만 읽히고 지켜집니다. |
발견 04
검색 노출과 AI 사용은 3자리에서 따로 정합니다
| 원하는 것 | 설정 | 공식 문서 원문 |
|---|---|---|
| 유료 구간을 스니펫·AI 개요에서 제외 | 유료 구간 요소에 data-nosnippet | To exclude certain sections of your content from appearing in search result snippets, use the data-nosnippet HTML attribute. As such, they are subject to Search's preview controls.콘텐츠 일부를 검색 결과 스니펫에서 빼려면 data-nosnippet 속성을 쓰세요. AI 개요와 AI 모드는 검색의 미리보기 제어를 따릅니다. |
| 페이지 전체를 AI 개요·AI 모드 입력에서 제외 | <meta name="robots" content="nosnippet"> | This applies to all forms of search results (at Google: web search, Google Images, Discover, AI Overviews, AI Mode) and will also prevent the content from being used as a direct input for AI Overviews and AI Mode.nosnippet 은 웹 검색, 이미지, 디스커버, AI 개요, AI 모드 등 모든 검색 결과에 적용되고, 콘텐츠가 AI 개요·AI 모드의 직접 입력으로 쓰이는 것에서도 제외합니다. |
| 제미나이 학습·그라운딩에서 제외 | robots.txt 에 User-agent: Google-Extended / Disallow: / | Google-Extended does not impact a site's inclusion in Google Search nor is it used as a ranking signal in Google Search.Google-Extended 는 사이트가 구글 검색에 포함되는 데 영향을 주지 않으며, 구글 검색의 순위 신호로도 쓰이지 않는다. |
data-nosnippet 은 유료 구간만 빼고 무료 구간은 스니펫에 남깁니다. 다만 구조화 데이터는 data-nosnippet 안에 있어도 계속 쓰입니다.
구글 밖의 AI 크롤러는 3단계에서 갈립니다. 확인된 Googlebot 이 아니면 무료 구간만 받으므로, 유료 본문은 구독자와 확인된 Googlebot 에만 나갑니다.
| 다른 회사 | 유료 본문을 내준 경우 문서가 적은 제어 | 공식 문서 원문 |
|---|---|---|
| Apple | isAccessibleForFree: false 표시가 AI 출력의 추가 맥락에서 제외 | Pages marked isAccessibleForFree: false are eligible to appear in search results, but Applebot will not use that content as additional context when AI models are used to generate output for display in Apple products and services.isAccessibleForFree: false 로 표시한 페이지는 검색 결과에 나올 수 있지만, Applebot 은 Apple 제품의 AI 출력에 그 콘텐츠를 추가 맥락으로 쓰지 않습니다. |
| Microsoft Bing | noarchive 가 코파일럿 답변과 학습에서 제외 | NOARCHIVE prevents content from being used in Copilot responses and grounding results. Do not use the content for training Microsoft's generative AI foundation models.NOARCHIVE 는 콘텐츠가 코파일럿 답변과 그라운딩 결과에 쓰이는 것에서 제외합니다. 마이크로소프트 생성형 AI 기반 모델 학습에도 쓰지 않습니다. |
Also note that structured data remains usable for search results when declared within a data-nosnippet element.
구조화 데이터는 data-nosnippet 요소 안에 선언해도 검색 결과에 계속 쓰일 수 있습니다.
발견 05
B2B·B2C·B2G 는 검색에 노출할 유료 페이지의 범위가 다릅니다
예시 ① 회원 전용 시장 보고서를 내는 문의형 기업 사이트(B2B)
보고서 원문은 영업 자산이라 검색 노출이 필요 없습니다. 2단계 서버 잠금으로 끝내고, 보고서 소개 페이지만 공개합니다.
소개 페이지에는 목차와 핵심 그림 하나를 둡니다. 검색과 AI 답변에 쓰이는 것은 이 공개 페이지입니다.
예시 ② 유료 구독 매거진을 함께 운영하는 쇼핑몰(B2C)
매거진 글은 검색 유입이 구독 전환으로 이어집니다. 리드인으로 앞 문단을 열고, 확인된 Googlebot 에만 전체 본문을 줍니다.
유료 구간에는 data-nosnippet 을 붙이고 robots.txt 에 Google-Extended 차단을 넣습니다. 상품 페이지는 이 설정과 섞지 않습니다.
예시 ③ 회원 로그인 뒤 연구 보고서를 내려받게 하는 공공기관 누리집(B2G)
공공 보고서는 요약 페이지가 검색에 노출되는 편이 이용자에게 이득입니다. 요약 페이지는 공개하고 내려받기 파일만 로그인 뒤에 둡니다.
파일 경로를 robots.txt 에 적으면 목록이 공개됩니다. 파일 요청도 서버에서 로그인을 확인하게 합니다.
그럼 우리 사이트에서는 어떤 순서로 바꾸나요?
- 유료·회원 전용 페이지를 「검색에 노출」과 「회원만」 두 목록으로 나눕니다.
- 로그아웃 상태로 두 목록의 페이지를 curl 로 받아, 응답에 유료 본문이 들어 있는지 봅니다.
- 들어 있으면 구독 확인 뒤에만 본문을 보내도록 서버를 바꿉니다.
- 「검색에 노출」 페이지는 역방향 DNS 로 확인된 Googlebot 에만 전체 본문을 주고, isAccessibleForFree·cssSelector 를 넣습니다.
- 유료 구간에 data-nosnippet 을 붙이고, 제미나이 학습을 빼려면 robots.txt 에 Google-Extended 차단을 넣습니다.
- URL 검사 도구와 리치 결과 테스트로 Googlebot 이 받은 본문과 구조화 데이터를 확인합니다. 구글 AI 제어 설정 전체는 「구글 AI 개요 노출 제어 설정」 편에 자세히 적었습니다.
조사 방법
- Google Search Central 「Structured data for subscription and paywalled content (CreativeWork)」 (문서 수정일 2026-09-08) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/appearance/structured-data/paywalled-content
- Google Search Central 「Robots meta tag, data-nosnippet, and X-Robots-Tag specifications」 (문서 수정일 2026-03-24) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag
- Google Search Central 「Spam policies for Google web search」 (문서 수정일 2026-08-28) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/essentials/spam-policies
- Google Search Central 「Flexible Sampling general guidance」 (문서 수정일 2025-12-10) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/appearance/flexible-sampling
- Google Search Central 「Fix Search-related JavaScript problems」 (문서 수정일 2025-12-18) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/javascript/fix-search-javascript
- Google Crawling Infrastructure 「Verify requests from Google crawlers and fetchers」 (문서 수정일 2026-03-20) · 최종 확인일 2026-10-25 · https://developers.google.com/crawling/docs/crawlers-fetchers/verify-google-requests
- Google Search Central 「Google's common crawlers (Google-Extended)」 (문서 수정일 2026-07-14) · 최종 확인일 2026-09-13 · https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers
- Apple 「About Applebot」 (문서 수정일 2026-09-04) · 최종 확인일 2026-10-25 · https://support.apple.com/en-us/119829
- Bing Webmaster Tools Help 「Robots meta tags and attributes that Bing supports」 · 최종 확인일 2026-10-25 · https://www.bing.com/webmasters/help/robots-meta-tags-and-attributes-that-bing-supports-5198d240
- IETF 「RFC 9309: Robots Exclusion Protocol」 (문서 수정일 2022-09) · 최종 확인일 2026-10-18 · https://www.rfc-editor.org/rfc/rfc9309
- 8단계는 위 문서들이 페이월·크롤러 제어에 대해 적은 것을 작업 순서로 묶은 것입니다. 묶는 방식은 편집 판단입니다.
- 예시 ①②③은 이해를 돕기 위해 만든 가상 상황이며, 실제 기업·기관의 사례가 아닙니다.
- 원문은 영어판(hl=en)이고, 도구·보고서 이름은 같은 문서 한국어판(hl=ko) 표기를 따랐습니다.