TL;DR: 같은 사이트인데 네이버에서만 검색되고 구글에서는 왜 안 나올까?
- 네이버는 수동 등록 기반, 구글은 자동 크롤링 기반 — 메커니즘 자체가 다름
- robots.txt가 Googlebot만 차단하고 있거나, meta robots 태그에 noindex가 설정된 경우가 빈번
- 네이버봇(Yeti)은 JavaScript를 거의 실행하지 않지만, Googlebot은 렌더링 후 인덱싱 — JS 의존 사이트에서 문제 발생
- 한국 호스팅 서버의 방화벽이 해외 IP를 차단하면 Googlebot 자체가 접근 불가
- Google Search Console 미등록 상태에서는 인덱싱 문제를 진단조차 할 수 없음
네이버와 구글의 크롤링 메커니즘은 근본적으로 다르다
네이버와 구글은 웹 페이지를 수집하고 검색 결과에 표시하는 방식이 완전히 다릅니다. 이 차이를 이해하지 못하면 "네이버에서는 되는데 구글에서는 안 된다"는 문제의 원인을 파악할 수 없습니다.
네이버: 등록 기반 시스템
네이버는 기본적으로 웹마스터가 직접 등록하는 구조입니다. 네이버 Search Advisor(구 웹마스터 도구)에 사이트를 등록하고, 사이트맵을 제출하면 네이버봇(Yeti)이 해당 URL을 방문합니다. 등록하지 않으면 크롤링 자체가 시작되지 않는 경우가 많습니다.
네이버의 검색 결과는 크게 두 가지로 나뉩니다.
- 네이버 자체 플랫폼 콘텐츠: 블로그, 카페, 지식iN 등 — 별도 등록 없이 자동 노출
- 외부 웹사이트: Search Advisor 등록 후 크롤링 대상에 포함
핵심은 네이버가 "허용한 콘텐츠만 표시"하는 폐쇄적 구조라는 점입니다.
구글: 자동 발견 기반 시스템
구글은 링크를 따라가며 자동으로 웹을 탐색합니다. 다른 사이트에서 여러분의 사이트로 연결된 링크가 있으면, Googlebot이 그 링크를 발견하고 방문합니다. Search Console에 등록하지 않아도 인덱싱이 가능합니다.
구글의 크롤링 프로세스는 다음과 같습니다.
- URL 발견: 외부 링크, 사이트맵, Search Console 제출 등 다양한 경로
- 크롤링: Googlebot이 URL에 HTTP 요청을 보내 콘텐츠 수집
- 렌더링: JavaScript를 실행하여 최종 페이지 상태 확인
- 인덱싱: 콘텐츠를 분석하고 검색 인덱스에 저장
이 4단계 중 어디에서든 문제가 발생하면 구글 검색 결과에 나타나지 않습니다. 네이버는 1-2단계만 통과하면 되지만, 구글은 4단계를 모두 통과해야 합니다.
robots.txt가 구글만 차단하는 경우
가장 흔하고, 가장 단순한 원인입니다. robots.txt 파일이 Googlebot의 접근을 차단하고 있을 수 있습니다.
의도치 않은 차단 패턴
# 이 설정은 모든 검색 엔진을 차단합니다
User-agent: *
Disallow: /
# 하지만 네이버봇만 허용합니다
User-agent: Yeti
Allow: /
위 설정은 네이버봇(Yeti)에게는 전체 사이트를 허용하지만, Googlebot을 포함한 다른 모든 크롤러는 차단합니다. 한국 웹 개발 환경에서 이런 설정은 생각보다 흔합니다.
확인 방법
- 브라우저에서
사이트주소/robots.txt를 직접 확인 - Google Search Console의 "robots.txt 테스터" 도구 사용
Disallow: /가User-agent: *아래에 있는지 확인
robots.txt는 법적 강제력이 있는 규약은 아니지만, Googlebot은 이를 철저히 준수합니다. robots.txt에서 차단된 페이지는 크롤링 자체를 하지 않으므로, 해당 페이지의 콘텐츠를 구글이 알 수 없습니다.
단, robots.txt로 차단된 URL이라도 외부 사이트에서 링크가 걸려 있으면 구글 검색 결과에 URL만 표시될 수 있습니다. 제목이나 설명 없이 URL만 나오는 검색 결과를 본 적이 있다면, 이것이 원인일 가능성이 높습니다.
JavaScript 렌더링 차이: 네이버봇 vs Googlebot
SPA(Single Page Application)나 React, Vue.js 등으로 구축된 사이트에서 특히 문제가 됩니다.
Googlebot의 렌더링 방식
Googlebot은 Headless Chromium 기반으로 JavaScript를 실행합니다. 페이지를 크롤링한 후, 별도의 렌더링 큐에 넣어 JavaScript를 실행하고, 최종 렌더링된 DOM을 인덱싱합니다.
하지만 이 과정에서 문제가 발생할 수 있습니다.
- 렌더링 지연: 크롤링과 렌더링 사이에 시간차가 존재 — 수초에서 수일까지
- 리소스 차단: robots.txt가 CSS, JS 파일의 크롤링을 차단하면 렌더링 실패
- 2MB 제한: Googlebot은 개별 URL당 최대 2MB만 크롤링 — 대형 번들은 잘림
- 동적 콘텐츠 누락: 사용자 인터랙션(클릭, 스크롤) 후에만 로드되는 콘텐츠는 인덱싱 불가
네이버봇(Yeti)의 렌더링 방식
네이버봇은 JavaScript 렌더링 능력이 Googlebot에 비해 제한적입니다. 네이버는 자체 플랫폼 콘텐츠를 우선하는 구조이기 때문에, 외부 사이트의 JavaScript 실행에 많은 리소스를 투자하지 않습니다.
역설적으로, 이것이 네이버에서는 노출되고 구글에서는 안 되는 상황을 만들 수 있습니다. 네이버 Search Advisor에 등록할 때 사이트맵과 RSS를 함께 제출하면, 네이버는 이 메타데이터를 기반으로 콘텐츠를 인덱싱합니다. JavaScript 렌더링 없이도 기본 정보는 확보할 수 있는 것입니다.
반면 구글은 렌더링을 시도하다가 실패하면, 해당 페이지를 "콘텐츠 없음"으로 판단하고 인덱싱하지 않을 수 있습니다.
해결 방법
- SSR(Server-Side Rendering) 또는 SSG(Static Site Generation) 적용
- robots.txt에서 JS, CSS 파일의 크롤링을 허용
- 핵심 콘텐츠는 초기 HTML에 포함되도록 구현
window.onload이후에만 로드되는 콘텐츠 최소화
사이트맵 제출 차이
네이버와 구글에 사이트맵을 제출하는 방식도 다릅니다.
네이버 Search Advisor
네이버 Search Advisor에서는 사이트맵을 직접 제출하고, RSS 피드도 등록할 수 있습니다. 네이버는 이 두 가지를 모두 크롤링 시드(seed)로 활용합니다. 특히 RSS 제출은 신규 콘텐츠의 빠른 인덱싱에 효과적입니다.
Google Search Console
구글에서는 Search Console에 사이트맵을 제출합니다. 구글은 사이트맵 외에도 링크 기반 발견을 활용하지만, 사이트맵이 없으면 다음 문제가 발생합니다.
- 깊은 디렉토리의 페이지가 발견되지 않음
- 새 페이지의 인덱싱 속도가 느림
- 크롤 우선순위 정보(
lastmod,priority)를 전달할 수 없음
네이버에만 사이트맵을 제출하고 구글에는 제출하지 않은 경우, 구글이 외부 링크를 통해 사이트를 발견하지 못하면 인덱싱 자체가 되지 않습니다.
meta robots 태그 이슈
HTML의 <meta> 태그 또는 HTTP 헤더를 통해 검색 엔진별로 다른 인덱싱 지시를 내릴 수 있습니다. 이 설정이 구글에만 noindex를 적용하고 있을 수 있습니다.
흔한 문제 패턴
<!-- 모든 검색 엔진에 대해 noindex 설정 -->
<meta name="robots" content="noindex, nofollow">
이 태그가 있으면 구글은 해당 페이지를 인덱싱하지 않습니다. 네이버도 이론적으로 이 태그를 존중하지만, 네이버 자체 플랫폼의 콘텐츠(블로그, 카페)는 이 태그와 무관하게 네이버 검색에 노출됩니다.
구글 전용 noindex
<!-- Googlebot에만 noindex 적용 -->
<meta name="googlebot" content="noindex">
일부 CMS나 플러그인이 이 태그를 자동 삽입하는 경우가 있습니다. 워드프레스의 "검색 엔진이 사이트를 인덱싱하지 못하도록 합니다" 옵션을 체크하면 noindex 메타 태그가 추가됩니다.
주의할 점
구글은 noindex 태그를 발견하면 렌더링과 JavaScript 실행 자체를 생략할 수 있습니다. JavaScript로 noindex 태그를 동적으로 제거하는 방식은 작동하지 않습니다. 원본 HTML에 noindex가 있으면 구글은 그 페이지를 인덱싱하지 않습니다.
한국 호스팅과 서버 이슈
한국 호스팅 환경에서 발생하는 구조적 문제도 무시할 수 없습니다.
해외 IP 차단
한국의 많은 호스팅 서비스와 서버 관리자가 보안 목적으로 해외 IP 접근을 차단합니다. 문제는 Googlebot의 크롤링 서버가 미국에 위치한다는 점입니다.
- 방화벽 규칙에서 한국 IP만 허용하면 Googlebot 접근 불가
- DDoS 방지 시스템이 Googlebot의 높은 요청 빈도를 공격으로 오인하여 차단
- CDN 또는 WAF 설정에서 특정 국가 IP를 차단하면 Googlebot도 함께 차단
네이버봇(Yeti)은 한국 내 서버에서 크롤링하므로 이 문제에 영향을 받지 않습니다. 같은 사이트인데 네이버에서는 정상 노출되고 구글에서는 안 나오는 가장 대표적인 원인 중 하나입니다.
확인 방법
- Google Search Console의 "URL 검사" 도구에서 "크롤링 오류" 확인
- 서버 액세스 로그에서 Googlebot의 접근 시도 기록 확인
- 호스팅 업체에 "해외 IP 차단 정책이 Googlebot에 영향을 미치는지" 문의
서버 응답 속도
Googlebot은 서버 응답이 느리면 크롤 빈도를 줄입니다. 한국 호스팅 서버와 미국의 Googlebot 사이의 물리적 거리로 인해 응답 시간이 길어질 수 있습니다. 이 경우 크롤 버짓이 감소하여 전체 사이트의 인덱싱 속도가 느려집니다.
Google Search Console 미등록 문제
Google Search Console에 사이트를 등록하지 않았다고 해서 구글 검색에 나오지 않는 것은 아닙니다. 구글은 외부 링크를 통해 사이트를 자동으로 발견하고 인덱싱합니다.
하지만 Search Console 미등록 상태에서는 다음 문제가 발생합니다.
- 인덱싱 상태를 확인할 수 없음: 어떤 페이지가 인덱싱되었고, 어떤 페이지가 제외되었는지 알 수 없음
- 크롤링 오류를 진단할 수 없음: 서버 오류, 리다이렉트 문제, 차단 등의 문제를 파악 불가
- 사이트맵을 제출할 수 없음: 구글에 크롤링할 URL 목록을 직접 전달할 수 없음
- URL 인덱싱을 요청할 수 없음: 새 페이지나 수정된 페이지의 빠른 인덱싱을 요청할 수 없음
네이버 Search Advisor에는 등록했지만 Google Search Console에는 등록하지 않은 사이트가 많습니다. Search Console 등록은 무료이며, 사이트 소유권 확인만 완료하면 됩니다. 구글 노출 문제를 해결하는 첫 번째 단계는 Search Console 등록입니다.
실전 해결 체크리스트
구글에 사이트가 노출되지 않는 문제를 단계별로 진단하고 해결하는 체크리스트입니다.
1단계: 현황 확인
-
site:도메인.com으로 구글 검색 — 인덱싱된 페이지 수 확인 - Google Search Console에 사이트 등록 여부 확인
- 네이버 Search Advisor 등록 상태와 비교
2단계: 크롤링 차단 요소 제거
-
도메인.com/robots.txt확인 — Googlebot 차단 여부 점검 - HTML 소스에서
<meta name="robots">또는<meta name="googlebot">태그 확인 - HTTP 헤더의
X-Robots-Tag확인 - 워드프레스 사용 시 "검색 엔진 표시" 설정 확인
3단계: 서버 접근성 확인
- 호스팅 서버의 방화벽이 해외 IP를 차단하는지 확인
- Googlebot IP 대역에 대한 접근 허용 여부 확인
- Search Console의 "URL 검사"로 크롤링 가능 여부 테스트
- 서버 응답 속도 측정(200ms 이하 권장)
4단계: 사이트맵 및 구조 최적화
- XML 사이트맵 생성 및 Search Console에 제출
- 사이트맵 내 URL이 200 응답 코드를 반환하는지 확인
- 내부 링크 구조가 모든 주요 페이지에 도달 가능한지 확인
- canonical 태그가 올바르게 설정되었는지 확인
5단계: JavaScript 렌더링 점검
- Chrome DevTools의 "JavaScript 비활성화" 상태에서 콘텐츠 확인
- Search Console의 "URL 검사 > 라이브 테스트"로 렌더링 결과 확인
- 핵심 콘텐츠가 초기 HTML에 포함되는지 확인
- JS, CSS 파일이 robots.txt에서 차단되지 않았는지 확인
6단계: 모니터링 체계 구축
- Search Console에서 "페이지 인덱싱" 보고서 정기 확인
- 인덱싱 제외 사유별 페이지 수 추적
- 크롤 통계 보고서에서 Googlebot의 방문 빈도 모니터링
FAQ
Q. site:내도메인.com으로 검색했는데 결과가 0건입니다. 어디부터 확인해야 하나요?
첫 번째로 robots.txt를 확인하세요. 도메인/robots.txt에 접속해서 Disallow: /가 있는지 봅니다. 두 번째로 HTML 소스에서 noindex 메타 태그를 확인합니다. 세 번째로 Google Search Console에 등록하여 "페이지 인덱싱" 보고서에서 구글이 알려주는 구체적인 제외 사유를 확인하세요.
Q. 네이버 블로그는 구글에서 검색되나요?
아닙니다. 네이버는 자사 블로그, 카페, 지식iN 등의 콘텐츠에 대해 외부 검색 엔진의 크롤링을 차단하고 있습니다. robots.txt와 메타 태그로 Googlebot을 포함한 외부 크롤러의 접근을 막습니다. 구글 검색 노출이 필요하다면 독립 도메인에 콘텐츠를 발행해야 합니다.
Q. Search Console 등록 없이도 구글에 노출될 수 있나요?
네. 구글은 외부 사이트의 링크를 통해 새로운 URL을 자동으로 발견합니다. 하지만 Search Console 없이는 인덱싱 상태를 확인하거나 문제를 진단할 수 없고, 사이트맵 제출이나 인덱싱 요청도 불가능합니다. 무료이므로 반드시 등록하세요.
Q. 구글 인덱싱에 얼마나 시간이 걸리나요?
새 사이트의 경우 수일에서 수주까지 걸릴 수 있습니다. Search Console에 사이트맵을 제출하고 URL 인덱싱 요청을 하면 속도를 높일 수 있습니다. 기존에 인덱싱된 사이트의 새 페이지는 보통 몇 시간에서 며칠 내에 인덱싱됩니다. 외부 백링크가 많을수록 Googlebot의 방문 빈도가 높아져 인덱싱이 빨라집니다.
Q. 네이버와 구글 모두에 최적화하려면 어떻게 해야 하나요?
두 검색 엔진에 동시에 최적화하는 것이 가능합니다. 핵심은 기술적 기반을 먼저 확보하는 것입니다. robots.txt에서 양쪽 크롤러를 모두 허용하고, 네이버 Search Advisor와 Google Search Console 양쪽 모두에 사이트맵을 제출하세요. SSR 또는 SSG를 적용하고, 해외 IP 차단을 해제하면 대부분의 기술적 문제가 해결됩니다. 상세한 체크리스트는 네이버-구글 듀얼 SEO 체크리스트를 참고하세요.
구글 검색 노출 문제가 해결되지 않는다면, 기술 SEO 진단으로 정확한 원인을 파악할 수 있습니다. XEO 무료 진단을 신청하세요.