Sitemap xml — это список адресов, который сайт сам передаёт поисковой системе. Он не заставляет индексировать и не влияет на позиции: его задача — рассказать роботу о страницах, до которых тот иначе добирался бы долго или не добрался вовсе.
Кому sitemap xml нужен, а кому почти нет
Пользы от неё тем больше, чем хуже устроена перелинковка. Большой каталог, где до карточки товара четыре клика; свежий сайт, на который ещё никто не ссылается; раздел, доступный только через фильтр, — вот случаи, где sitemap xml реально ускоряет обход.
Небольшому сайту на двадцать страниц с внятным меню она почти ничего не даёт. Вреда тоже нет, поэтому делать её стоит всё равно — но ждать от неё роста позиций не надо.
Что в файле должно быть
В sitemap xml попадают только те адреса, которые вы хотите видеть в поиске: код ответа 200, канонические, не закрытые от индексации. Каждое нарушение этого правила — сигнал системе, что вы сами не знаете, какие страницы у вас основные.
Дата последнего изменения имеет смысл только настоящая. Если она проставляется датой сборки и меняется у всех страниц разом, робот перестаёт ей верить — и тогда она не работает даже там, где страница действительно обновилась. Приоритет и частоту обновления Google игнорирует давно, Яндекс тоже; заполнять их можно, но это ни на что не влияет.
Ограничения жёсткие: не больше 50 000 адресов и 50 МБ в несжатом виде на один файл. Больше — разбивать на несколько и связывать индексным файлом.
Где проверка sitemap находит расхождения
Самое частое — карта отдаётся, выглядит рабочей, а в ней половина сайта. Обычно потому, что генератор собирает её по одному разделу или обрывается на ошибке и молча сохраняет то, что успел.
Второе — в карте есть адреса, закрытые в robots.txt или отдающие редирект и 404. Файл при этом валиден по формату, и никакой валидатор синтаксиса такого не покажет.
Третье — карта есть, но о ней никто не знает: строки Sitemap в robots.txt нет, в панель вебмастера файл не добавлен. Робот найдёт его сам по стандартному адресу не всегда.
Четвёртое — файл отдаётся с неверным типом содержимого или через редирект, и часть роботов его просто не читает.
Как читать результат
Смотреть надо не на «файл найден», а на два числа: сколько адресов в карте сайта и сколько страниц у сайта на самом деле. Расхождение в разы означает, что карта собрана неправильно, даже если формально всё в порядке.
Наша проверка показывает состав карты и расхождения сразу по адресу сайта. Дальше стоит свериться с панелью вебмастера: там видно, сколько адресов из карты робот действительно обошёл, а это уже другой вопрос — не «знает ли он о страницах», а «дошли ли до них руки». Рядом полезно посмотреть robots.txt: эти два файла работают в паре, и карта, не указанная в robots, наполовину бесполезна.