구글 서치 콘솔 "발견됨 / 크롤링됨 - 현재 색인이 생성되지 않음" 차이와 확인할 것

서치 콘솔의 '발견됨 - 현재 색인이 생성되지 않음'과 '크롤링됨 - 현재 색인이 생성되지 않음'은 멈춘 단계가 다르다. 두 상태의 뜻과 각각 확인할 것, 보고서와 site: 숫자가 다른 이유까지 정리했다.

블로그 글이 검색에 안 나온다

구글 서치 콘솔(Google Search Console)의 페이지 색인 생성(Page indexing) 보고서를 열면, 색인되지 않은 이유 목록에 이 두 줄이 자주 보인다.

  • 발견됨 - 현재 색인이 생성되지 않음 (Discovered - currently not indexed)
  • 크롤링됨 - 현재 색인이 생성되지 않음 (Crawled - currently not indexed)

문구가 거의 같아서 같은 문제처럼 보이지만, 둘은 멈춘 단계가 다르다. 그래서 확인할 것도 다르다. 이 블로그에서 실제로 두 상태를 모두 겪으면서 확인한 내용을 정리한다.


먼저: 구글이 글을 검색에 올리는 단계

구글 검색에 글이 나오려면 발견 → 크롤링 → 색인 단계를 차례로 거쳐야 한다. 서치 콘솔의 상태는 "어느 단계에서 멈췄는지"를 알려준다.

단계하는 일여기서 멈추면
발견 (Discovery)링크나 사이트맵(sitemap)에서 URL이 있다는 걸 알게 된다구글이 URL 자체를 모른다
크롤링 (Crawling)Googlebot이 실제로 페이지를 가져가 읽는다발견됨 - 현재 색인이 생성되지 않음
색인 (Indexing)내용을 분석해서 검색에 쓸 수 있게 저장한다크롤링됨 - 현재 색인이 생성되지 않음
게재 (Serving)검색어에 맞으면 결과에 보여준다색인은 됐지만 순위가 낮다

사이트맵을 제출하는 건 첫 단계인 발견을 돕는 것이다. 사이트맵에 있다고 크롤링이나 색인이 보장되지는 않는다.


"발견됨 - 현재 색인이 생성되지 않음"

구글이 URL이 있다는 건 알지만, 아직 가져가서 읽지 않은 상태다.

구글 도움말 설명을 요약하면, 구글이 크롤링하려 했지만 사이트에 부담을 줄 수 있다고 판단해 크롤링을 뒤로 미룬 상태다. 그래서 URL 검사(URL Inspection)를 해보면 최근 크롤링이 "해당사항 없음" 으로 나온다. 한 번도 가져간 적이 없으니 당연하다.

실제로 이 블로그의 한 글을 URL 검사했을 때 이렇게 나왔다.

URL이 Google에 등록되어 있지 않음
페이지 색인이 생성되지 않음: 발견됨 - 현재 색인이 생성되지 않음
참조 페이지: /?tag=nodejs, /ko/javascript-nullish-..., /blog/js-data-01
최근 크롤링: 해당사항 없음

참조 페이지(Referring page) 는 구글이 이 URL을 어디서 처음 알았는지 보여준다. 여기서는 목록의 태그 필터 주소와, 주소를 옮기기 전의 예전 글 주소(/blog/...)에서 링크를 보고 발견했다는 걸 알 수 있다.

확인할 것

확인할 것왜
글로 가는 일반 링크(<a href>) 가 사이트 안에 있는가사이트맵에만 있고 링크가 없는 글은 구글 입장에서 중요도를 판단할 근거가 적다. "더 보기" 버튼 뒤에 숨은 글이 대표적인 예다
서버가 느리거나 에러(5xx)를 내지 않는가응답이 느리거나 실패하면 구글이 크롤링 속도를 낮춘다
새 URL이 한꺼번에 많이 생기지 않았는가주소 이전, 글 대량 발행 직후에는 크롤링이 따라오는 데 시간이 걸린다
필터·검색 결과 같은 가치 낮은 URL이 많지 않은가같은 내용의 주소가 많으면 진짜 글보다 그쪽에 크롤링이 쓰일 수 있다

흔히 "크롤링 예산(crawl budget)이 부족하다"고들 하는데, 구글 문서에 따르면 크롤링 예산은 주로 페이지가 아주 많은 대형 사이트의 문제다. 글이 수십 개 정도인 개인 블로그라면 예산보다는 새 사이트라서 우선순위가 낮거나, 링크 구조가 약한 경우를 먼저 의심하는 게 맞다.


"크롤링됨 - 현재 색인이 생성되지 않음"

구글이 페이지를 가져가서 읽었지만, 색인하지 않기로 (아직은) 결정한 상태다.

발견됨과 달리 크롤링은 이미 끝났다. 구글 도움말은 이 상태에 대해 나중에 색인될 수도, 안 될 수도 있으며, 크롤링을 다시 요청할 필요는 없다고 설명한다. 기술적인 에러가 아니라 구글의 판단이라는 뜻이다.

확인할 것

확인할 것왜
다른 페이지와 내용이 거의 같지 않은가같은 내용의 페이지가 여러 개면 구글은 하나만 색인한다. 필터 주소, 태그 목록 페이지가 흔한 원인이다
내용이 너무 짧거나 비어 있지 않은가본문이 거의 없는 페이지는 색인할 가치가 낮다고 볼 수 있다
크롤링 당시 페이지가 정상이었는가그때 에러 화면이나 빈 목록이 보였다면, 그 상태로 판단했을 수 있다
canonical이 맞는 주소를 가리키는가canonical이 다른 주소를 가리키면 그 페이지는 색인 대상이 아니다

이걸 고쳤다면 보고서의 해당 항목에서 수정 결과 확인(Validate fix) 을 누르면 된다. 이 블로그도 이 상태인 페이지 2개에 대해 확인을 시작해 둔 상태다.


두 상태 한눈에 비교

발견됨 - 현재 색인이 생성되지 않음크롤링됨 - 현재 색인이 생성되지 않음
멈춘 단계크롤링 전색인 전
구글이 페이지를 읽었나아니오 (최근 크롤링: 해당사항 없음)예
주로 의심할 것링크 구조, 서버 상태, 새 URL이 많은 시기중복, 얇은 내용, 크롤링 당시 상태
할 일내부 링크 보강, 중요한 글은 색인 생성 요청내용 개선, 중복 정리 후 수정 결과 확인

숫자가 서로 다를 때: 보고서 vs URL 검사 vs site:

이 블로그에서 가장 헷갈렸던 건 숫자였다. 페이지 색인 생성 보고서에는 색인된 페이지가 8개라고 나오는데, site: 검색을 해보면 그보다 훨씬 많은 결과가 4페이지에 걸쳐 나왔다.

도구기준 시점특징
페이지 색인 생성 보고서화면의 "최종 업데이트" 날짜며칠씩 늦게 갱신된다. 이 블로그는 10월 14일에 봤는데 최종 업데이트가 10월 9일이었다
URL 검사거의 현재URL 하나의 최신 상태. 보고서보다 먼저 바뀐다
URL 검사의 실시간 테스트지금 이 순간"지금 가져가면 색인할 수 있는가"를 본다. 실제 색인 여부가 아니다
site: 검색현재결과 수는 대략적인 값이다. 정확한 색인 수로 쓰면 안 된다

또 보고서의 색인된 8개를 열어보니 전부 주소를 옮기기 전의 예전 주소(/blog/...) 였고, 마지막 크롤링 날짜도 모두 주소를 옮긴 10월 8일 전이었다. 보고서는 "그 날짜까지 구글이 알고 있던 상태"를 보여줄 뿐이다. 주소 이전에 대한 내용은 Nitro 리다이렉트로 글 주소 옮기기 글에 정리했다.

실시간 테스트의 "URL을 Google에 등록할 수 있음" 과 Google 색인 탭의 "URL이 Google에 등록되어 있음" 은 다르다. 앞의 것은 "지금 가져가면 문제없다"는 뜻이고, 뒤의 것이 실제로 색인되어 있다는 뜻이다.


색인 생성 요청은 여러 번 눌러도 빨라지지 않는다

URL 검사 화면의 색인 생성 요청(Request indexing) 은 중요한 글을 구글에 알리는 데 쓸 수 있다. 다만 구글 문서에 따르면 하루 요청 수에 한도가 있고, 같은 URL을 여러 번 요청해도 더 빨리 크롤링되지 않는다. 크롤링까지는 며칠에서 몇 주가 걸릴 수 있다.

그래서 순서는 이렇게 하는 게 좋다.

  1. 원인을 먼저 고친다 (링크 구조, 에러, 중복).
  2. 가장 중요한 글 몇 개만 색인 생성 요청을 한다.
  3. 사이트맵이 최신인지 확인한다.
  4. 보고서의 "최종 업데이트" 날짜가 고친 날 이후로 바뀔 때까지 기다렸다가 다시 본다.

정리

상태한 줄 요약먼저 볼 것
발견됨 - 현재 색인이 생성되지 않음구글이 아직 안 읽었다그 글로 가는 <a href> 링크가 있는가
크롤링됨 - 현재 색인이 생성되지 않음읽었지만 색인하지 않았다내용이 중복되거나 얇지 않은가

두 상태 모두 "에러"가 아니라 아직 단계를 다 통과하지 못했다는 뜻이다. 상태 문구에서 어느 단계에서 멈췄는지를 먼저 읽고, 그 단계에 맞는 것을 확인하면 된다. 그리고 보고서 숫자는 늦게 갱신되니, 고친 직후의 숫자로 판단하지 않는 게 좋다.

이 블로그에서 "발견" 단계를 막고 있던 구체적인 사례는 다음 글에 정리했다: "더 보기" 버튼 페이지네이션과 SEO

참고 자료