Перейти к содержимому

Краулинговый бюджет и анализ логов: куда робот тратит внимание

У Googlebot нет бесконечного времени на ваш сайт. Он успевает обойти лишь какое-то число адресов за период, и это число называют краулинговым бюджетом. На небольшом сайте о нём можно не думать, робот и так обходит всё. А вот на крупном проекте от десятков тысяч страниц бюджет становится реальным ограничением, и если он утекает на мусор, важные страницы сканируются и обновляются в индексе реже.

Это продвинутая тема. Если у вас сотня-другая страниц, смело переходите дальше, она не про вас.

Google объясняет бюджет через две вещи.

  • Лимит сканирования. Сколько одновременных запросов робот готов слать вашему серверу, не перегружая его. Если сайт отвечает быстро и без ошибок, лимит растёт. Если сервер тормозит и отдаёт ошибки, робот сбавляет темп.
  • Потребность в сканировании. Насколько Google вообще хочет обходить ваш сайт. Зависит от его размера, популярности, свежести контента и того, как часто страницы меняются.

Грубо говоря, первое это «сколько сервер выдержит», а второе это «сколько Google считает нужным». Бюджет это пересечение этих двух величин.

По наблюдениям, на крупных сайтах заметная часть обходов уходит в никуда. Вот главные пожиратели бюджета.

  • Дубли и параметрические адреса. Один контент по десяткам адресов с utm, сортировками и фильтрами заставляет робота сканировать одно и то же.
  • Бесконечные пространства. Календари, фасетная навигация и фильтры, которые плодят миллионы комбинаций адресов.
  • Soft 404. Удалённые страницы, которые отдают код 200 вместо 404 или 410, и робот продолжает в них ходить.
  • Цепочки редиректов. Каждый лишний переход это потраченный запрос.
  • Медленные ответы сервера. Чем дольше отвечает страница, тем меньше робот успеет обойти.
  • Консолидируйте дубли каноническими адресами и аккуратной структурой адресов.
  • Закрывайте действительно ненужные разделы в robots.txt. Google советует именно robots.txt, а не noindex, потому что страницу с noindex робот всё равно обязан сначала скачать.
  • Для навсегда удалённых страниц отдавайте код 404 или 410, а не прячьте их.
  • Держите карту сайта актуальной и используйте тег <lastmod>, чтобы подсказать роботу свежие страницы.
  • Убирайте цепочки редиректов и ускоряйте ответ сервера.

Анализ логов: что робот делает на самом деле

Заголовок раздела «Анализ логов: что робот делает на самом деле»

Все способы выше это гипотезы. А единственный источник правды о том, что робот реально сканирует, это логи сервера. В них записан каждый запрос, в том числе от Googlebot, и по ним видно то, чего не покажет ни один сторонний инструмент.

Я смотрю логи в трёх разрезах.

  • По user-agent. Отделяю настоящего Googlebot от обычных пользователей и других ботов. Заодно полезно проверить, что под Googlebot не маскируется кто-то чужой.
  • По коду ответа. Всплеск 404 и 5xx у бота это прямой сигнал проблемы. Много 301 это потраченный на редиректы бюджет.
  • По разделам сайта. Видно, на какие папки робот тратит время. Часто оказывается, что половина обходов уходит в технический или малоценный раздел, а важные страницы робот навещает редко.
важные 40% дубли 35% ошибки 15% 10%

Типичная картина на запущенном крупном сайте: больше половины обходов робота уходит не на те страницы.

Цель анализа простая. Сделать так, чтобы робот тратил максимум внимания на важные страницы, а не на дубли и ошибки. Для разбора логов на больших объёмах удобны Screaming Frog Log File Analyser, JetOctopus, Oncrawl и подобные инструменты, но на сайте поменьше хватит и выгрузки логов с базовой группировкой.