XML-карта сайта (sitemap)

Файл со списком URL и иногда датами обновления, который подсказывает поисковым роботам, что стоит обойти. Дополняет обычные ссылки на сайте и настройки в вебмастере, но не заменяет их.

Кратко

Это список адресов страниц в формате XML, который отдают поисковым системам, чтобы проще находить и обновлять страницы. Для большого сайта карту обычно делят на несколько файлов или сжимают.

Зачем нужен

Карта не гарантирует индексацию и не поднимает ранжирование сама по себе. Она снижает задержку между публикацией и первым визитом робота, помогает при слабой внутренней перелинковке и после миграций, когда структура ссылок ещё не устоялась.

Укажите абсолютные канонические URL в loc. Если в карте и на сайте разные версии страницы, вы усложняете жизнь и себе, и поиску.

Поля url и sitemapindex

Ниже — только элементы базового протокола sitemaps.org. Расширения (картинки, видео, новости, hreflang) подключаются отдельными пространствами имён и тегами внутри url.

Дочерние теги элемента url

ТегОбязательностьНазначение
locДаАбсолютный канонический URL страницы (обычно https, без сессионных параметров)
lastmodНетДата последнего существенного изменения страницы в формате W3C Datetime (например 2026-05-01 или с часовым поясом)
changefreqНетПодсказка частоты изменений: always, hourly, daily, weekly, monthly, yearly, never (поисковики часто игнорируют)
priorityНетЧисло от 0.0 до 1.0 относительно других URL того же сайта; не влияет на позиции в выдаче

Дочерние теги элемента sitemap (внутри sitemapindex)

ТегОбязательностьНазначение
locДаURL дочернего файла sitemap (XML или сжатый .xml.gz)
lastmodНетОжидаемое время изменения дочернего sitemap (подсказка для обхода)

Пример: обычный urlset

Корневой элемент urlset объявляет пространство имён по умолчанию http://www.sitemaps.org/schemas/sitemap/0.9. Внутри — один или много блоков url; в каждом обязателен ровно один loc.

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.example.com/</loc>
    <lastmod>2026-05-01</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://www.example.com/blog/sitemap-xml</loc>
    <lastmod>2026-05-01T12:00:00+03:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
</urlset>

Пример: индекс sitemap

Индекс sitemapindex не содержит url напрямую: он только перечисляет дочерние карты. Удобно дробить по разделам (блог, каталог, лендинги) или по типам контента.

XML
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://www.example.com/sitemaps/static.xml</loc>
    <lastmod>2026-05-01</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://www.example.com/sitemaps/blog.xml.gz</loc>
    <lastmod>2026-05-01</lastmod>
  </sitemap>
</sitemapindex>

Пример: новости (News)

Расширение Google для свежих новостных URL: в url добавляется блок news:news с публикацией, языком, датой публикации и заголовком. Обычно отдельный файл или отдельный дочерний sitemap только для новостей; см. официальные лимиты по возрасту URL.

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>https://www.example.com/news/roboty-obnovili-indeks</loc>
    <news:news>
      <news:publication>
        <news:name>Example Times</news:name>
        <news:language>ru</news:language>
      </news:publication>
      <news:publication_date>2026-05-01T09:15:00+03:00</news:publication_date>
      <news:title>Роботы обновили индекс</news:title>
    </news:news>
  </url>
</urlset>

Пример: изображения

Для страницы с loc можно перечислить одно или несколько изображений через image:image. Минимально достаточно image:loc (URL картинки); caption и title улучшают контекст.

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
  <url>
    <loc>https://www.example.com/gallery/moscow-night</loc>
    <image:image>
      <image:loc>https://cdn.example.com/photos/moscow-1600.webp</image:loc>
      <image:caption>Ночная панорама Москвы</image:caption>
      <image:title>Москва, набережная</image:title>
    </image:image>
    <image:image>
      <image:loc>https://cdn.example.com/photos/moscow-thumb.webp</image:loc>
    </image:image>
  </url>
</urlset>

Пример: видео

Блок video:video описывает ролик: миниатюра, заголовок, описание, файл или страницу плеера, длительность в секундах. Точный набор обязательных полей зависит от сценария (см. документацию Google).

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://www.example.com/watch/seo-audit-intro</loc>
    <video:video>
      <video:thumbnail_loc>https://cdn.example.com/thumbs/audit-intro.jpg</video:thumbnail_loc>
      <video:title>Введение в техаудит</video:title>
      <video:description>Коротко о структуре технического аудита сайта.</video:description>
      <video:content_loc>https://cdn.example.com/video/audit-intro.mp4</video:content_loc>
      <video:duration>612</video:duration>
    </video:video>
  </url>
</urlset>

Пример: мультиязычность (hreflang)

Альтернативные языковые версии можно перечислить в том же элементе url через xhtml:link с rel="alternate" и hreflang. Часто дублируют набор ссылок на каждой языковой странице; hreflang на странице и в карте должны совпадать.

XML
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://www.example.com/ru/services/seo-audit</loc>
    <xhtml:link rel="alternate" hreflang="ru" href="https://www.example.com/ru/services/seo-audit"/>
    <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/en/services/seo-audit"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://www.example.com/en/services/seo-audit"/>
  </url>
  <url>
    <loc>https://www.example.com/en/services/seo-audit</loc>
    <xhtml:link rel="alternate" hreflang="ru" href="https://www.example.com/ru/services/seo-audit"/>
    <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/en/services/seo-audit"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://www.example.com/en/services/seo-audit"/>
  </url>
</urlset>

Формат и лимиты

Обычно до 50 000 URL и до 50 МБ несжатого XML на один логический файл; при превышении делите на несколько sitemap и перечислите их в индекс-файле. Ссылку на индекс добавляют в robots.txt директивой Sitemap; в Search Console карту можно отправить отдельно.

  • Расширения (news, image, video, xhtml) увеличивают размер файла — следите за лимитом 50 МБ и 50 000 URL.
  • lastmod держите правдивым: массовые ложные обновления снижают доверие.
  • changefreq и priority поисковики часто игнорируют — не тратьте время на «магические» значения.
  • Проверяйте кодировку UTF-8 и валидность XML после генерации из CMS.

Качество карты

  • Исключайте 404, редиректы на другие URL, дубли и параметрический мусор.
  • Синхронизируйте карту с каноникалами и фактически индексируемым контентом.
  • Мониторьте покрытие в отчётах вебмастера и логах обхода.

Частые вопросы

Нет, но для крупных и быстро меняющихся проектов он практически стандарт. Маленький сайт с сильной перелинковкой может обходиться без него.
Это подсказка приоритета обхода, а не фактор ранжирования. Не ожидайте эффекта в выдаче от чисел priority.
После значимых изменений структуры или контента; автоматизируйте генерацию из CMS или CI, чтобы карта не отставала.
Технически да, но это противоречие сигналов: лучше держать в карте только URL, которые должны обходиться и индексироваться.
Не обязательно, но для новостных издателей часто выделяют отдельный файл с расширением news — так проще соблюдать лимиты и свежесть записей.
Прямые контакты

Обсудим ваш проект?

Расскажите о целях и сайте — предложу формат работы и следующий шаг.