Зачем оптимизировать краулинговый бюджет
Краулинговый бюджет (crawl budget) — это количество страниц, которое поисковый робот готов просканировать на вашем сайте за определённый период. У каждого сайта этот бюджет ограничен. Робот не будет сканировать бесконечно: он выделяет ресурсы пропорционально авторитету сайта, скорости ответа сервера и количеству полезных страниц.
Для сайта на 50 страниц краулинговый бюджет не является проблемой — робот обойдёт его целиком за один визит. Но для сайтов с тысячами и десятками тысяч страниц оптимизация бюджета критична. Если робот тратит ресурсы на обход мусорных страниц (фильтры, пагинация, служебные URL, дубли), он может не добраться до новых или обновлённых важных страниц.
Результат — новые статьи индексируются неделями вместо дней, обновления на коммерческих страницах не учитываются, а в индексе висят тысячи мусорных URL, которые не приносят трафика и портят общую оценку качества сайта.
Яндекс в Вебмастере показывает статистику обхода: сколько страниц сканируется в день, какие коды ответа получает робот, какова скорость ответа сервера. Это прямая видимость расхода краулингового бюджета. Я использую эти данные на каждом аудите, чтобы понять, эффективно ли робот расходует свои визиты.
Пошаговая инструкция
Шаг 1. Проанализируйте текущее состояние
Прежде чем оптимизировать, нужно понять, что сканирует робот и как расходуется бюджет.
Яндекс Вебмастер:
- Перейдите в «Индексирование» → «Статистика обхода».
- Посмотрите график «Загрузка страниц в день» — сколько страниц Яндекс сканирует ежедневно.
- Проверьте «Коды ответа» — какую долю составляют 200 (ОК), 301 (редирект), 404 (не найдено), 500 (ошибки сервера). В идеале 95%+ ответов — код 200.
- Посмотрите «Время загрузки» — если сервер отвечает медленно, робот будет сканировать меньше страниц.
Google Search Console (ограничен в РФ с 2022 года, но консоль работает):
- «Настройки» → «Статистика сканирования».
- Посмотрите «Общее количество запросов на сканирование», «Средний размер скачанного файла», «Среднее время ответа».
- Вкладка «По типу файла» — где робот тратит бюджет: HTML, CSS, JS, изображения, PDF.
- Вкладка «По коду ответа» — какую долю составляют коды 200, 301, 404.
Сопоставьте количество сканируемых URL с количеством нужных URL. Если на сайте 5 000 полезных страниц, а робот сканирует 15 000 URL — значит, 10 000 запросов тратятся на мусор. Это сигнал к оптимизации.
Шаг 2. Найдите мусорные страницы в индексе
Составьте список URL, которые не должны индексироваться и тратить бюджет:
Через Яндекс Вебмастер: «Индексирование» → «Страницы в поиске». Экспортируйте полный список. Отфильтруйте по паттернам:
- URL с параметрами фильтрации:
?color=red,?sort=price,?page=15. - Страницы результатов поиска:
?s=. - Дубли с трейлинг-слешем и без:
/uslugiи/uslugi/. - Дубли www/без www, http/https.
- Страницы тегов с 1-2 записями.
- Архивы по датам, авторам.
- Страницы вложений (attachment).
- Служебные URL:
/wp-json/,/feed/,/xmlrpc.php.
Через Screaming Frog: просканируйте сайт и экспортируйте полный список URL. Сравните с XML-картой сайта: URL, которые есть при сканировании, но нет в sitemap — кандидаты на проверку. URL, которых нет нигде, но они в индексе — потенциальный мусор.
Шаг 3. Удалите мусорные страницы из индекса
Для каждого типа мусорных страниц выберите подходящий инструмент:
Meta noindex: для страниц, которые должны существовать, но не индексироваться (корзина, личный кабинет, страницы тегов, архивы). Добавьте <meta name="robots" content="noindex, follow">. Робот просканирует страницу, увидит noindex и уберёт из индекса.
Robots.txt Disallow: для целых разделов и паттернов URL, которые не нужно даже сканировать (параметризованные URL фильтров, страницы поиска, служебные директории). Закройте в robots.txt — робот не будет тратить бюджет на их обход.
301-редирект: для дублей. Если одна страница доступна по нескольким URL — настройте редирект с дубля на каноничный URL.
410 Gone: для страниц, которые удалены навсегда. Код 410 сигнализирует роботу, что страницу восстанавливать не планируется, и он быстрее уберёт её из индекса и перестанет сканировать.
Удаление URL через Яндекс Вебмастер: «Инструменты» → «Удаление страниц» — позволяет ускорить удаление конкретного URL из индекса. Работает как временная мера; для постоянного эффекта нужен noindex или 410.
Шаг 4. Настройте параметры URL в Яндекс Вебмастере
В Яндекс Вебмастере есть инструмент для управления параметрами URL: «Индексирование» → «Параметры URL». Здесь можно указать, какие GET-параметры не влияют на содержимое страницы.
Например, если параметры ?utm_source, ?utm_medium, ?utm_campaign создают дубли, укажите их как «Параметр не влияет на содержимое страницы». Яндекс перестанет считать URL с этими параметрами отдельными страницами.
То же самое для параметров сортировки (?sort=), отображения (?view=grid) и сессионных параметров (?sid=, ?session=).
Шаг 5. Оптимизируйте XML-карту сайта
XML-sitemap — прямой сигнал роботу о том, какие страницы вы считаете важными. Чистый sitemap помогает роботу расставить приоритеты.
Правила чистого sitemap:
- Только каноничные URL с кодом 200. Никаких 301, 404, noindex-страниц в sitemap.
- Никаких дублей. Один URL — один раз.
- Актуальная lastmod. Дата последнего изменения должна обновляться только при реальном изменении контента, а не при каждой перезагрузке кеша. Если все страницы имеют одинаковую lastmod — робот перестаёт доверять этому параметру.
- Разбивка по типам. Для крупных сайтов:
sitemap-posts.xml,sitemap-pages.xml,sitemap-products.xml,sitemap-categories.xml. Индекс sitemap объединяет их. - Не более 50 000 URL или 50 МБ на один файл sitemap (ограничение стандарта).
В WordPress Yoast SEO генерирует sitemap автоматически: /sitemap_index.xml. Проверьте его: убедитесь, что в sitemap нет noindex-страниц, 404, редиректов.
Шаг 6. Улучшите скорость ответа сервера
Скорость ответа сервера напрямую влияет на краулинговый бюджет. Если сервер отвечает за 2 секунды вместо 200 мс, робот просканирует в 10 раз меньше страниц за тот же период.
Проверьте время ответа сервера (TTFB — Time To First Byte):
- Яндекс Вебмастер: «Индексирование» → «Статистика обхода» → «Время загрузки». Нормальное значение — менее 500 мс, идеально — менее 200 мс.
- curl:
curl -o /dev/null -s -w "%{time_starttransfer}\n" https://vash-sajt.ru/— покажет TTFB в секундах.
Если TTFB высокий:
- Включите серверный кеш (WP Super Cache, W3 Total Cache, LiteSpeed Cache).
- Используйте PHP OPcache — кеширование скомпилированного PHP-кода.
- Оптимизируйте базу данных: удалите ревизии, транзиенты, спам-комментарии.
- Проверьте хостинг: shared-хостинг часто медленный. Выделенный VPS с SSD-диском и достаточным объёмом RAM — стандарт для SEO-проектов.
Шаг 7. Приоритизируйте важные страницы
После удаления мусора из индекса направьте бюджет на важные страницы:
- Внутренняя перелинковка. Чем больше внутренних ссылок ведёт на страницу, тем чаще робот её сканирует. Убедитесь, что коммерческие страницы получают больше всего внутренних ссылок.
- Обновляйте контент. Робот чаще возвращается на страницы, которые обновляются. Регулярные обновления ключевых страниц (новые данные, свежие примеры, актуальные цены) стимулируют более частое сканирование.
- Свежий sitemap. Обновляйте lastmod в sitemap при каждом реальном изменении контента. Робот проверяет lastmod и приоритизирует недавно обновлённые страницы.
- Подавайте новые URL через Яндекс Вебмастер. «Индексирование» → «Переобход страниц» — подайте URL новых или обновлённых страниц вручную. Это не гарантирует мгновенную индексацию, но ускоряет процесс.
Шаг 8. Настройте мониторинг
Оптимизация краулингового бюджета — не разовая задача. Мусор накапливается постоянно: добавляются новые товары и фильтры, создаются теги, публикуются записи, плагины генерируют служебные URL.
Настройте регулярный мониторинг:
- Еженедельно: проверяйте статистику обхода в Яндекс Вебмастере. Следите за аномалиями: резкий рост количества сканируемых URL (появился новый источник мусора), рост времени ответа (проблемы с сервером), рост ошибок 404/500.
- Ежемесячно: сканируйте сайт Screaming Frog. Сравнивайте количество URL в текущем сканировании с предыдущим. Если разница значительная — ищите источник новых страниц.
- При каждом изменении: добавление новых разделов каталога, установка плагинов, изменение структуры URL — проверяйте, не появились ли новые мусорные URL.
Для автоматического мониторинга можно анализировать серверные логи: в них видно, какие URL запрашивает робот Яндекса (User-Agent: YandexBot) и Google (User-Agent: Googlebot). Логи покажут точную картину расхода бюджета — что именно сканирует робот, с какой частотой и какие ответы получает.
Типичные ошибки
- Оптимизировать краулинговый бюджет на маленьком сайте. Если на сайте 100-200 страниц, бюджет не является проблемой. Робот обойдёт все страницы без труда. Оптимизация актуальна для сайтов от 1000+ страниц или для сайтов с динамическими URL (фильтры, параметры), которые генерируют тысячи виртуальных страниц.
- Закрывать в robots.txt уже проиндексированные страницы. Robots.txt запрещает сканирование, но не гарантирует деиндексацию. Если страница уже в индексе, закрытие в robots.txt не уберёт её — только помешает роботу увидеть noindex. Сначала noindex, потом, после деиндексации, можно добавить Disallow.
- Удалять страницы из sitemap вместо работы с ними. Если мусорная страница убрана из sitemap, но доступна через внутренние ссылки — робот всё равно найдёт и просканирует её. Sitemap — лишь один из каналов обнаружения URL. Нужно работать с источником: noindex, 410 или удаление ссылок.
- Все lastmod в sitemap — одна дата. Если все 5 000 страниц в sitemap имеют lastmod = сегодня, робот перестаёт доверять этому параметру и игнорирует его. Lastmod должен отражать реальную дату изменения контента.
- Не учитывать JavaScript-генерируемые ссылки. Если JS создаёт ссылки на параметризованные URL (фильтры, сортировки), робот может их обнаружить и пойти по ним. Это скрытый источник мусорных URL. Проверяйте через Screaming Frog в режиме JavaScript Rendering.
- Игнорировать soft-404. Soft-404 — это страница, которая выглядит как ошибка, но отдаёт код 200. Типичный пример: пустая страница фильтра «Товаров не найдено» с кодом 200. Для робота это обычная страница, он тратит бюджет на её сканирование. Убедитесь, что пустые страницы отдают 404 или noindex.
- Не анализировать серверные логи. Статистика в Вебмастере и GSC — агрегированные данные. Серверные логи показывают каждый конкретный запрос робота. Если робот регулярно запрашивает URL, которые вы не ожидали — в логах это будет видно.
Что проверить в итоге
- В Яндекс Вебмастере статистика обхода показывает, что 90%+ сканируемых URL имеют код ответа 200.
- Доля ответов 301, 404 и 500 в статистике обхода — минимальна (менее 5% каждый).
- Время ответа сервера (TTFB) — менее 500 мс, идеально менее 200 мс.
- В индексе Яндекса (оператор
site:) нет мусорных страниц: пустых фильтров, дублей с параметрами, архивов по датам, страниц вложений. - XML-sitemap содержит только каноничные URL с кодом 200 и noindex-страниц в нём нет.
- Lastmod в sitemap отражает реальные даты изменения контента, а не одну дату для всех страниц.
- В Яндекс Вебмастере настроены параметры URL: UTM-метки и параметры сортировки/фильтрации помечены как не влияющие на содержимое.
- Robots.txt закрывает технические директории и паттерны URL, не нуждающиеся в сканировании.
- Новые и обновлённые страницы подаются через «Переобход страниц» в Яндекс Вебмастере.
- Настроен регулярный мониторинг: еженедельная проверка статистики обхода, ежемесячное сканирование Screaming Frog.