Logo
Sitemap.xml: що має бути в карті сайту і як її не зламати

Sitemap.xml: що має бути в карті сайту і як її не зламати

Sitemap.xml це список адрес сайту, які ви хочете бачити в індексі Google, з датою останньої зміни кожної. У карті мають бути тільки канонічні сторінки з кодом 200, відкриті для індексації, а все інше (редиректи, noindex, дублі з параметрами) з неї треба прибрати. Нижче розбираємо, коли карта сайту справді потрібна, як виглядає правильний файл, що робити з lastmod, як дробити великі карти, як віддати її Google і на яких помилках сайти зазвичай «ламають» власну карту.

Розробник переглядає файл sitemap.xml у редакторі коду на екрані ноутбука

Google знаходить сторінки двома шляхами: за посиланнями під час обходу і за списком у карті. Карта не змушує індексувати, вона лише каже «ось адреси, які я вважаю важливими, і ось коли вони змінювались». Для маленького сайту на 30 сторінок із нормальним меню карта майже нічого не змінює: краулер і так дійде до всього за один прохід. Google у власній документації прямо пише, що сайту до кількох сотень сторінок з добрими внутрішніми посиланнями карта сайту не обов'язкова.

Вона стає потрібною, коли:

  • сторінок тисячі, і частина з них лежить глибоко (товари в підкатегоріях, фільтри, архіви);
  • сайт новий і зовнішніх посилань на нього майже немає;
  • контент часто оновлюється, і важливо, щоб Google перезчитував саме змінені сторінки;
  • є багато зображень або відео, які мають ранжуватись окремо;
  • частина сторінок недосяжна за посиланнями (наприклад, лендінги для реклами, які ви все ж хочете в індексі).

На практиці ми в Query ставимо карту на кожен проєкт, навіть невеликий. Шкоди від коректної карти немає, а звіт «Файли Sitemap» у Search Console дає зручний спосіб бачити, скільки сторінок зі списку реально в індексі.

Як виглядає правильний sitemap.xml

Формат стандартний і описаний на sitemaps.org. Мінімальний файл для двох сторінок:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>https://site.ua/</loc><lastmod>2026-09-10</lastmod></url>
<url><loc>https://site.ua/catalog/boilers/</loc><lastmod>2026-09-14T08:30:00+03:00</lastmod></url>
</urlset>

Кілька правил, які легко порушити. Адреси тільки абсолютні, з протоколом і тим самим доменом, на якому лежить карта: файл на https://site.ua/sitemap.xml не може містити http:// або www.site.ua, якщо основний хост без www. Кодування UTF-8, спецсимволи в URL екрановані (& як &amp;). Дата в lastmod у форматі ISO 8601: або просто день, або день із часом і зоною.

Що включати в карту сайту, а що ні

Головний принцип: у карті лише ті адреси, які ви хочете бачити у видачі, і кожна з них має бути тією самою, яку Google обере канонічною. Розбіжність між картою і реальним станом сайту Google трактує як шум і з часом починає карті довіряти менше.

ВключатиНе включати
Сторінки з кодом 200Сторінки з noindex
Канонічні адресиРедиректи, 404, 410
Усі мовні версіїДублі з параметрами, utm
Відкриту пагінаціюФільтри без попиту, кошик, кабінет
Зображення й відео (розширення)Адреси, закриті в robots.txt

Типовий випадок з інтернет-магазинів: CMS кладе в карту всі 40 000 комбінацій фільтрів, з яких в індексі корисні дві сотні. Результат: Search Console показує «виявлено, не проіндексовано» на десятки тисяч адрес, а важливі товари чекають у черзі. Карту треба генерувати за тими самими правилами, за якими сторінки відкриті або закриті для індексації, і ніяк інакше.

lastmod чесно, priority і changefreq не потрібні

lastmod це єдине додаткове поле, яке Google реально використовує, і використовує лише за умови, що воно правдиве. Якщо кожна сторінка щодня отримує «сьогоднішню» дату, бо генератор ставить час створення файлу, Google це помічає за кілька обходів і починає поле ігнорувати по всьому сайту. Ставте дату реальної зміни контенту сторінки: оновили текст або ціну, змінилась дата. Змінився лише блок «схожі товари» в сайдбарі, дата лишається.

Поля priority і changefreq Google не читає з 2015 року, це підтверджено публічно неодноразово. Вони не шкодять, але й не допомагають, тому в новій карті їх простіше не генерувати: файл менший, плутанини менше.

Залиште заявку

Вкажіть ваше ім'я та email, наші менеджери зв'яжуться з Вами найближчим часом
Надсилаючи форму, ви погоджуєтесь з політикою конфіденційності.

Ліміти 50 000 URL і 50 МБ, індекс сайтмапів і окремі карти

Один файл карти вміщує до 50 000 адрес і важить до 50 МБ у нестиснутому вигляді. Стиснення gzip (sitemap.xml.gz) дозволене і зменшує трафік, але ліміт рахується за розпакованим розміром. Коли адрес більше, створюють кілька файлів і об'єднують їх індексом сайтмапів:

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap><loc>https://site.ua/sitemap-pages.xml</loc><lastmod>2026-09-14</lastmod></sitemap>
<sitemap><loc>https://site.ua/sitemap-products-1.xml</loc></sitemap>
</sitemapindex>

Індекс теж обмежений 50 000 записів, тобто теоретична межа 2,5 мільярда адрес, чого вистачає всім. Дробити карту варто не лише через ліміт, а й для зручності: окремі файли для категорій, товарів, статей і мовних версій дають у Search Console окремі рядки статистики, і одразу видно, який тип сторінок «не заходить» в індекс.

Для медіа є власні розширення. Карта зображень додає в <url> елементи <image:image> з адресою файлу, і це єдиний спосіб передати Google картинки, які підвантажуються скриптом. Карта новин (<news:news>) призначена для видань у Google News: містить лише матеріали за останні два дні і до 1000 адрес. Відео-карта передає тривалість, обкладинку й опис ролика. Звичайному бізнес-сайту зазвичай достатньо базової карти плюс зображень, якщо каталог живе з фото.

Спеціаліст перевіряє звіт Файли Sitemap у Google Search Console на моніторі в офісі

Як віддати карту Google

Два способи, і краще використовувати обидва:

  1. У Google Search Console у розділі «Файли Sitemap» вставити адресу файлу або індексу. Після обробки з'явиться статус («Успішно», «Не вдалося отримати», «Є помилки») і кількість виявлених адрес. Як користуватись самим сервісом, ми розібрали в окремій статті.
  2. У robots.txt додати рядок Sitemap: https://site.ua/sitemap.xml з повною адресою. Цей рядок читають усі пошуковики, і він не залежить від того, чи підтверджений сайт у чиємусь кабінеті.

Окремо про частоту: Google перечитує карту сам, орієнтуючись на lastmod індексу і на власний графік обходу. Надсилати її повторно після кожної зміни не потрібно. Пінг-ендпоінт /ping?sitemap= Google вимкнув у 2023 році, тож інструкції з «пінгуйте після оновлення» застаріли.

Типові помилки в карті сайту

Це список того, з чим ми найчастіше стикаємось під час технічної оптимізації. Більшість цих речей не видно очима, вони вилазять тільки у звітах або після краулу.

ПомилкаНаслідокВиправлення
Редиректи або 404 у картіМарний обхід, менше довіриГенерувати з бази живих сторінок
Сторінки з noindexСуперечність сигналівОдне правило для тега і карти
Неканонічні адресиGoogle обирає іншу адресуРівно те, що в rel="canonical"
Інший хост або протоколКарту не приймаютьТой самий домен і https
Однакова дата на всіхlastmod ігноруєтьсяДата реальної зміни
Статичний файлНових сторінок немаєГенерація за розкладом
Карта закрита«Не вдалося отримати»Перевірити анонімним запитом
Мовні версії без hreflangВерсії не зв'язаніxhtml:link у карті або hreflang

Як перевірити, що Google читає карту

  • Звіт «Файли Sitemap» у Search Console: статус має бути «Успішно», дата останнього читання свіжою, а кількість виявлених адрес збігатись із тим, що ви згенерували.
  • Звіт «Індексування сторінок» із фільтром «Усі надіслані сторінки»: показує, скільки адрес із карти в індексі, а скільки в статусах «виявлено, не проіндексовано» чи «сторінка з переспрямуванням». Саме тут видно сміття в карті.
  • Логи сервера: запити від Googlebot до sitemap.xml з'являються регулярно, зазвичай від кількох разів на день до кількох на тиждень залежно від сайту.
  • Валідність XML: будь-який онлайн-валідатор або краулер (Screaming Frog має режим перевірки карти) покаже зламаний тег, неекранований символ чи перевищення ліміту.

Повний перелік вимог до формату, розширень і лімітів є в документації Google зі створення карти сайту. Якщо ваша CMS робить щось інакше, довіряти треба документації, а не плагіну.

З чого почати

  1. Відкрити /sitemap.xml і перевірити, що він існує, віддає 200 і містить актуальні адреси, а не файл дворічної давності.
  2. Прогнати адреси з карти краулером і прибрати все, що не 200, не канонічне або з noindex.
  3. Перевірити lastmod: дати мають різнитись і відповідати реальним оновленням.
  4. Розбити карту на тематичні файли через індекс, якщо адрес більше кількох тисяч.
  5. Додати карту в Search Console і в robots.txt, за тиждень звірити «надіслано» з «проіндексовано».

Коректна карта сайту не підіймає позиції сама по собі, але вона прибирає найдешевшу з причин, чому нові сторінки тижнями не потрапляють в індекс. Це одна година роботи для невеликого сайту і день для великого каталогу, після чого звіти Search Console нарешті починають показувати правду.

Інші статті

Інші послуги

Зв'яжіться з нами
Месенджери