sitemap.xml: как создать, разместить и проверить
Файл sitemap.xml — это карта сайта для поисковых роботов. В нём перечислены все URL, которые владелец хочет видеть в индексе Google и Яндекса, с датами последнего изменения и подсказками о приоритете. Для маленького сайта карта не обязательна, но для интернет-магазина на 10 000 товаров или медиа с тысячей статей — это основной канал, по которому поисковик узнаёт о новых страницах.
В гайде разбираем формат файла, ограничения (50 000 URL, 50 МБ), четыре способа создать sitemap, как подключить его через robots.txt и загрузить в Search Console. Отдельный раздел — шесть частых ошибок и разоблачение мифа про атрибуты priority и changefreq.
Что такое sitemap.xml и кому он нужен
sitemap.xml — XML-файл со списком URL сайта в стандартном формате протокола sitemaps.org. Поисковые роботы Google, Яндекса и Bing используют его как подсказку о том, какие страницы есть на сайте и когда они обновлялись.
Файл не заменяет внутреннюю перелинковку и не гарантирует, что все URL попадут в индекс. Но он сильно помогает в трёх случаях: когда на сайте много страниц, не связанных ссылками между собой (товары в глубоких категориях); когда сайт новый и ссылок на него ещё мало; когда часто публикуется свежий контент и важна скорость переобхода.
Для сайта до 50–100 страниц карта обычно не критична — Google находит контент через внутренние ссылки. Для всего остального — обязательна.
Структура файла и теги
Минимальный sitemap.xml — это XML-документ с корневым элементом <urlset>, внутри которого список <url>. Каждый <url> содержит обязательный <loc> и опциональные атрибуты.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-04-15</lastmod>
</url>
<url>
<loc>https://example.com/about</loc>
<lastmod>2026-03-20</lastmod>
</url>
</urlset>
Обязательные теги
| Тег | Описание | Пример |
|---|---|---|
<urlset> | Корневой элемент, содержит атрибут namespace | <urlset xmlns="..."> |
<url> | Одна запись на одну страницу | <url>...</url> |
<loc> | Абсолютный URL страницы, до 2048 символов | <loc>https://example.com/page</loc> |
Опциональные теги
| Тег | Описание | Пример |
|---|---|---|
<lastmod> | Дата последнего изменения в формате ISO 8601 | <lastmod>2026-04-15</lastmod> |
<changefreq> | Подсказка о частоте обновления | <changefreq>weekly</changefreq> |
<priority> | Подсказка о приоритете, 0.0–1.0 | <priority>0.8</priority> |
Расширенный пример с полным набором:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-04-15</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://example.com/blog/article-1</loc>
<lastmod>2026-04-10</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
Файл обязательно сохраняется в кодировке UTF-8 без BOM, с корректным XML-заголовком. Спецсимволы в URL экранируются: & → &, ' → ', " → ".
Отдельный sitemap для мультиязычных сайтов
Если у сайта есть версии на разных языках, атрибут hreflang добавляется через namespace xhtml:
<url>
<loc>https://example.com/ru/page</loc>
<xhtml:link rel="alternate" hreflang="ru" href="https://example.com/ru/page"/>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/page"/>
</url>
Подробнее о настройке международной версии — в справке hreflang в SEO Crawler.
Как создать sitemap.xml
Четыре способа, от самого трудоёмкого к автоматическому.
| Способ | Сложность | Для кого | Автообновление |
|---|---|---|---|
| Вручную | Высокая | Лендинг, 5–20 страниц | Нет |
| Плагин CMS | Низкая | WordPress, Bitrix, Tilda | Да |
| Онлайн-генератор | Средняя | Одноразовая задача | Нет |
| Краулер | Низкая | Любой сайт | По расписанию |
Вручную
Подходит для сайта до 20 страниц, которые редко меняются. Создаёте файл в текстовом редакторе, копируете шаблон выше, подставляете свои URL. Главное — сохранить в UTF-8 без BOM и экранировать спецсимволы.
Плагином CMS
WordPress: Yoast SEO или Rank Math генерируют sitemap.xml автоматически и обновляют при каждой публикации. Bitrix: в модуле «SEO» есть встроенный генератор. Tilda: карта собирается автоматически, доступна по адресу /sitemap.xml без настройки.
Онлайн-генератором
Сервисы вроде XML-Sitemaps выдают готовый файл по URL сайта. Минус — разовый результат: при добавлении новых страниц нужно генерировать заново.
Краулером
Инструмент обходит сайт и собирает sitemap динамически. Плюс — всегда актуальный файл, можно настроить расписание. Генератор sitemap от SEO Crawler работает так: указываете домен, сервис обходит страницы, отдаёт готовый sitemap.xml с корректными <lastmod> по датам последнего изменения.
Ограничения: 50 000 URL, 50 МБ, сжатие
Стандарт протокола задаёт три жёстких лимита:
- 50 000 URL в одном файле — ни больше, ни меньше
- 50 МБ размер файла в разархивированном виде
- UTF-8 — единственная допустимая кодировка
Если сайт превышает лимит по URL или размеру, нужно разбить sitemap на несколько файлов и объединить их через sitemap index (раздел ниже).
Допустимо сжимать файл алгоритмом gzip — это рекомендуется для больших sitemap, уменьшает трафик. Сжатый файл имеет расширение .xml.gz. Google и Яндекс распаковывают gzip автоматически; в robots.txt указывать нужно адрес сжатого файла.
Sitemap: https://example.com/sitemap.xml.gz
Лимит 50 МБ применяется к разархивированному размеру, а не к скачанному файлу.
Sitemap index — когда он нужен
Sitemap index — отдельный XML-файл, который содержит ссылки на несколько sitemap.xml. Нужен в двух случаях: когда на сайте больше 50 000 URL; когда имеет смысл разделить карту по типам контента (товары, категории, блог, теги).
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap-products.xml</loc>
<lastmod>2026-04-15</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-blog.xml</loc>
<lastmod>2026-04-14</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-pages.xml</loc>
<lastmod>2026-04-01</lastmod>
</sitemap>
</sitemapindex>
В robots.txt и Search Console указывается только sitemap index — файлы внутри он найдёт сам.
Лимит на index — тоже 50 000 элементов и 50 МБ. То есть один sitemap index может агрегировать до 2.5 миллиарда URL — этого хватит любому проекту.
Как разместить sitemap: robots.txt, Search Console, Вебмастер
После генерации файл нужно загрузить на сервер и зарегистрировать в поисковиках.
1. Загрузка на сервер
Файл должен быть доступен по адресу в корне сайта: https://example.com/sitemap.xml. HTTP-статус — 200 OK. Если отдаётся 404 или 301-редирект, ни Google, ни Яндекс не примут.
2. Указание в robots.txt
Добавьте строку с абсолютным URL до файла:
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
Директива работает вне блока User-agent и читается всеми поисковиками. Подробнее о файле — в статье «robots.txt для SEO».
3. Google Search Console
Зайдите в свой проект → «Sitemaps» → укажите путь /sitemap.xml или полный URL. Google начнёт обработку в течение нескольких часов. В отчёте будет видно: сколько URL принято, сколько отклонено, какие ошибки.
4. Яндекс.Вебмастер
«Индексирование» → «Файлы Sitemap» → «Добавить». После загрузки можно посмотреть отчёт о найденных URL и ошибках. Обработка обычно занимает от часа до суток.
6 частых ошибок в sitemap.xml
- Неправильный HTTP-статус. Файл отдаёт 404 или 301-редирект. Поисковик не загружает и не обрабатывает — Search Console покажет ошибку «Couldn't fetch».
- URL в sitemap не совпадают с canonical. В sitemap —
https://example.com/page/, а canonical тег на странице указывает наhttps://example.com/page(без слеша). Google предпочитает canonical, URL из sitemap фактически игнорируется. - Sitemap содержит закрытые robots.txt URL. Конфликт: в sitemap страница заявлена как «пожалуйста, обойди», а в robots.txt запрещён обход. Google помечает sitemap как «содержит ошибки».
- В sitemap — страницы с noindex. Аналогично — не запрещены для обхода, но не для индексации. Google обойдёт, но не добавит, а sitemap снова «с ошибками».
- Неверный
lastmod. Дата в будущем, неправильный формат, одна и та же дата на всех URL — первый повод не доверять файлу. Если не уверены в точностиlastmod— лучше не указывать совсем, чем указать плохо. - Дубли URL в разных sitemap. Один товар одновременно в
sitemap-products.xmlиsitemap-categories.xml. Размывает crawl budget, Google может обойти один URL в несколько раз.
Как проверить sitemap
Первая проверка — открыть https://yoursite.ru/sitemap.xml в браузере. Должен показаться валидный XML. Если ошибка «Парсинг не удался» — проблема в синтаксисе.
Вторая — валидация по протоколу. Проверка sitemap в SEO Crawler сверяет файл с robots.txt, находит закрытые URL, проверяет HTTP-статусы всех страниц из sitemap, показывает конфликты с noindex. Для большого сайта на 5000+ URL сделать это вручную невозможно.
Третья — в Search Console. Отчёт «Покрытие» показывает, сколько URL из sitemap проиндексировано, сколько отклонено и по каким причинам. Яндекс.Вебмастер даёт аналогичный отчёт.
Подробнее о комплексной проверке — в статье «Проверка сайта на ошибки SEO».
Часто задаваемые вопросы
Нужен ли sitemap маленькому сайту?
Для сайта до 100 страниц Google обычно находит контент и без sitemap — через внутренние ссылки. Но наличие файла не вредит и ускоряет переобход после изменений. Для SEO-проекта лучше сделать.
Обязателен ли <lastmod>?
Нет, но с ним переобход происходит быстрее. Главное — указывайте реальную дату изменения. Ложные lastmod (например, текущая дата на всех URL каждый день) понижают доверие к sitemap, Google начинает игнорировать файл.
Влияют ли priority и changefreq на ранжирование?
Нет. Google официально игнорирует оба атрибута — об этом неоднократно говорил Джон Мюллер. Яндекс учитывает changefreq как слабую подсказку, не больше. Можно не заполнять — результат не изменится.
Что делать, если URL больше 50 000?
Разбить sitemap на несколько файлов (до 50 000 URL в каждом) и объединить через sitemap index. Типичное деление — по типам контента: товары, категории, блог, теги, статические страницы.
Можно ли добавить закрытые robots.txt страницы в sitemap?
Нет. Это конфликт: в sitemap страница заявлена к обходу, а в robots.txt обход запрещён. Google и Яндекс помечают такие карты как «с ошибками». Решение — убрать URL из sitemap или открыть в robots.txt.
Как часто обновлять sitemap?
Автоматически при публикации или удалении страниц — оптимально. Если сайт обновляется плагином или краулером, sitemap перестраивается сам. Ручное обновление — минимум раз в месяц, при крупных правках структуры — сразу.