robots.txt i sitemap.xml: dwa pliki, które decydują o indeksacji
Różnica między blokadą crawlowania a blokadą indeksowania, dlaczego przestarzała mapa witryny marnuje budżet crawlowania i jednolinijkowy błąd ukrywający cały dział.
SEO · Opublikowano: 6 września 2026 · 3 min czytania · Марк Лебедев
Te dwa pliki to najkrótsza konfiguracja na witrynie i najwygodniejsze miejsce, by wyrządzić trwałą szkodę. Jedna linia w robots.txt potrafi usunąć dział z wyszukiwarki i nie będzie to wyglądać na awarię: strony się otwierają, linki działają, ruch po prostu ustaje.
robots.txt robi co innego, niż większość sądzi
Steruje crawlowaniem, nie indeksowaniem. Zablokowany adres wciąż może pojawić się w wynikach — bez opisu, bo crawlerowi nie pozwolono go przeczytać. Jeśli cel brzmi "ta strona nie ma być w wyszukiwarce", robots.txt jest złym narzędziem: potrzebny jest <meta name="robots" content="noindex">, a strona musi być przy tym dostępna do crawlowania, inaczej crawler nigdy nie zobaczy noindex.
Właśnie ta kombinacja to klasyczny błąd:
Disallow: /private/ # w robots.txt
<meta name="robots" content="noindex"> # na stronie
Wzajemnie się znoszą. Wyszukiwarka nie może pobrać strony, więc nigdy się nie dowiaduje, że ma ją usunąć.
Co należy do robots.txt
Wyszukiwarka wewnętrzna, adresy filtrów fasetowych, nieskończone kalendarze, koszyk i konto — wszystko, co generuje nieskończone warianty bez wartości. Trzymaj plik krótki i konkretny. Dwie zasady: wygrywa najbardziej szczegółowe dopasowanie, a zablokowanie /assets/ czy /static/ może uniemożliwić crawlerowi wyrenderowanie stron w ogóle, co wpłynie na ich ocenę.
I wskaż stamtąd mapę witryny:
Sitemap: https://site.com/sitemap.xml
Co należy do mapy witryny
Tylko adresy, które naprawdę chcesz mieć w indeksie: status 200, canonical na siebie, niezablokowane w robots.txt, bez noindex. Każdy adres, który nie przechodzi jednego z tych testów, to zmarnowana wskazówka, a mapie pełnej takich wskazówek ufa się mniej.
lastmod warto ustawiać uczciwie — czyli zmieniać przy zmianie treści, a nie przy każdym buildzie. Mapa, w której wszystkie strony są "zmienione dzisiaj", uczy crawlera ignorować to pole. Z kolei priority i changefreq duże wyszukiwarki w zasadzie ignorują; nie trać na nie czasu.
Powyżej 50 000 adresów albo 50 MB dziel na kilka plików pod indeksem map. Generuj mapę z tego samego źródła co trasy, żeby usunięta strona znikała od razu w obu miejscach.
Co sprawdzać
- Adresy w mapie, które przekierowują, zwracają 404 albo są zablokowane w robots.txt.
- Strony, które istnieją i są w nawigacji, ale nie trafiły do żadnej mapy.
Disallow: /pozostawiony po środowisku testowym i wdrożony na produkcję. Ta linia kosztuje witrynę całą obecność w wyszukiwarce i zdarza się częściej, niż ktokolwiek przyzna.- Mapa witryny niezmieniana od poprzedniej migracji CMS-a.
Weryfikuj z zewnątrz
Liczy się nie kontrola "plik wygląda poprawnie", lecz zestawienie "to, co mówi, zgadza się z witryną". Przeskanuj witrynę, weź graf linków, weź mapę i porównaj oba zbiory: strony znalezione crawlem, a nieobecne w mapie, oraz adresy z mapy, do których crawl nie dociera albo które odpowiadają czymś innym niż 200. Rozbieżności między tymi listami to niezmiennie najcenniejsze znaleziska SEO, jakie witryna ma do zaoferowania.
Przeczytaj także
Sprawdź, ile z tego dotyczy Twojej strony
Darmowe skanowanie pokaże uszkodzone linki, błędy JS i problemy z wydajnością w minutę.