Руководство

Что включать в sitemap.xml: лучшие практики

Хорошая карта сайта — это короткий и честный список канонических страниц. Разбираем, что в неё включать, что выбрасывать и как поддерживать её в форме.

Автор: Редакция WebDoctor·16 июля 2026·5 мин чтения


В XML-карту сайта включайте только канонические, индексируемые страницы, отвечающие кодом 200. Поддерживайте lastmod правдивым, не тратьте силы на changefreq и priority — Google их игнорирует, — следите за лимитами в 50 000 URL и 50 МБ и объявляйте карту в robots.txt. Остальное — детали, и о них ниже.

Что должно быть в карте сайта

Карта сайта — это не опись всего, что умеет отдавать сервер, а список страниц, которые вы просите проиндексировать. Каждый URL в ней должен одновременно удовлетворять трём условиям:

  • Канонический. Только та версия страницы, на которую указывает rel="canonical". Дубликаты с параметрами, версии для печати, http-варианты при каноническом https — всё это в карту не входит.
  • Индексируемый. Без noindex, не закрыт в robots.txt, доступен без авторизации.
  • Отвечает кодом 200. Не редирект, не 404, не «мягкая» страница ошибки. Каждый URL с редиректом в карте — впустую потраченный запрос краулера.

Соответственно, в карте не место страницам пагинации ради пагинации, результатам внутреннего поиска, техническим страницам корзины и личного кабинета, а также «тонким» страницам, которые вы сами не хотели бы видеть в выдаче.

Честный lastmod — единственное поле, которое работает

Google использует <lastmod> как сигнал для переобхода, но только при одном условии: даты должны быть стабильно точными. Если при каждой сборке сайта все страницы получают «сегодняшнюю» дату, поле быстро теряет доверие и игнорируется. Правильная стратегия — писать в lastmod дату последнего содержательного изменения страницы: правки текста, обновления цены, нового отзыва. Косметика вроде смены года в подвале изменением не считается.

changefreq и priority: можно не заполнять

Скажем прямо: Google игнорирует и <changefreq>, и <priority> — это подтверждено официальной документацией Google. Яндекс тоже по большей части не учитывает priority. Эти поля — валидный XML, ошибкой они не являются, но реального влияния на обход не оказывают. Частоту переобхода определяют честный lastmod, внутренняя перелинковка и общая «живость» сайта, а не число 0.9 в приоритете. Если генератор их проставляет — пусть, но тратить время на их «оптимизацию» не нужно.

Откуда брать дату? Лучший источник — поле «обновлено» в базе данных или системе управления контентом, привязанное к содержательным правкам. Для статических сайтов подойдёт дата коммита, в котором менялся файл страницы. Худший вариант — время сборки: оно превращает lastmod в шум и лишает вас единственного рабочего сигнала переобхода.

Мифы и реальность

МифРеальность
priority=1.0 поднимает страницу в выдачеGoogle и, по большей части, Яндекс игнорируют priority. На ранжирование поле не влияет вовсе
changefreq=always заставит краулер приходить чащеGoogle игнорирует changefreq. Частоту обхода определяют lastmod и реальные изменения
Карта сайта гарантирует индексациюКарта — рекомендация краулеру, а не приказ. Страница всё равно должна пройти отбор на качество
Чем больше URL в карте, тем лучшеЛишние и неканонические URL тратят краулинговый бюджет и размывают сигнал
lastmod можно ставить «сегодня» для всех страницGoogle использует lastmod только при стабильной точности; массовые фальшивые даты обнуляют поле
Без карты сайт не проиндексируетсяНебольшой сайт с хорошей перелинковкой индексируется и без карты; карта ускоряет и упорядочивает процесс

Лимиты, разбиение и gzip

Один файл — не более 50 000 URL и 50 МБ в несжатом виде. На практике разбивать карту стоит раньше: файлы по 10 000–20 000 URL быстрее генерируются, быстрее отдаются и удобнее отлаживаются. Части перечисляются в файле индекса Sitemap — как его устроить, разобрано в отдельном руководстве. Карту можно сжимать в gzip (sitemap.xml.gz): это экономит трафик и время отдачи, но помните, что лимит в 50 МБ применяется к распакованному содержимому.

Автообнаружение через robots.txt

Добавьте в robots.txt строку с абсолютным адресом карты:

Sitemap: https://example.com/sitemap.xml

Эту строку понимают все крупные поисковые системы, и она работает даже для тех, где вы не заводили кабинет вебмастера. Строк Sitemap может быть несколько, а указывать в них лучше индекс, если он есть.

Отправка в панели вебмастера

Автообнаружения достаточно для обхода, но отправка через панель даёт главное — обратную связь и статистику:

  • Google Search Console — раздел «Файлы Sitemap»: статус обработки, количество обнаруженных URL и список ошибок.
  • Яндекс.Вебмастер — «Индексирование → Файлы Sitemap»: для аудитории Рунета это обязательный шаг, Яндекс активно опирается на карту при обходе. Подробности — в справке Яндекса.
  • Bing Webmaster Tools — той же дорогой; Bing умеет импортировать данные из Search Console.

Как часто перегенерировать карту

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

Динамическая или статическая генерация

Оба подхода легальны. Статическая карта собирается на этапе сборки сайта — предсказуемо, быстро отдаётся, идеально для статических сайтов и генераторов. Динамическая формируется приложением на лету и всегда актуальна, но требует кэширования: генерация карты на 50 000 URL на каждый запрос — лишняя нагрузка. Выбирайте по архитектуре сайта, а не по моде; краулеру важен только корректный XML с кодом 200.

Какой бы способ вы ни выбрали, встройте проверку в процесс: у динамических карт после каждого релиза приложения, у статических — после каждой сборки. Ошибка в шаблоне генератора тиражируется на все записи сразу, поэтому один прогон через валидатор после изменения кода дешевле, чем неделя недообхода после молчаливой поломки.

Чек-лист сопровождения

  1. В карте — только канонические, индексируемые URL со статусом 200.
  2. lastmod отражает реальные изменения; changefreq и priority не трогаем.
  3. Разбиение через индекс задолго до лимита в 50 000 URL.
  4. Строка Sitemap: в robots.txt указывает на актуальный адрес.
  5. Карта отправлена в Google Search Console, Яндекс.Вебмастер и Bing Webmaster Tools.
  6. Регенерация синхронизирована с публикацией контента.
  7. После каждого изменения генератора — проверка в валидаторе.

Если валидатор находит проблемы, точные исправления для каждой ошибки собраны в руководстве об ошибках карты сайта.

sitemapлучшие практикиSEO

Frequently asked questions

Какие страницы включать в XML-карту сайта?
Только канонические, индексируемые страницы, отвечающие кодом 200: те, которые вы действительно хотите видеть в поиске. Редиректы, страницы с noindex, дубликаты с параметрами и URL, закрытые в robots.txt, из карты нужно исключить.
Учитывает ли Google changefreq и priority?
Нет. Google официально подтвердил, что игнорирует оба поля; Яндекс также по большей части не учитывает priority. Единственное поле, влияющее на переобход, — lastmod, и то лишь при стабильно точных датах.
Нужно ли сжимать карту сайта в gzip?
Необязательно, но полезно для больших файлов: sitemap.xml.gz экономит трафик и ускоряет отдачу. Учтите, что лимит в 50 МБ считается по распакованному содержимому, поэтому от разбиения больших карт gzip не освобождает.
Куда отправлять карту сайта?
Пропишите строку Sitemap: в robots.txt для автообнаружения и отправьте карту в Google Search Console, Яндекс.Вебмастер и Bing Webmaster Tools — панели дают статистику обработки и сообщают об ошибках.
Как часто нужно обновлять карту сайта?
С той же частотой, с какой меняется контент: новостному сайту — при каждой публикации, магазину — при изменении каталога, небольшому статичному сайту — при редизайне. Устаревшая карта направляет краулер на удалённые страницы.

Запустить проверку

Читайте также