Plik robots.txt – jak go skonfigurować pod SEO

Czasem wystarczy jedna linijka w niepozornym pliku tekstowym, żeby cała strona zniknęła z Google. Brzmi dramatycznie, ale widzieliśmy to na własne oczy: świeżo postawiony serwis, ładny, szybki, a po dwóch tygodniach zero ruchu z wyszukiwarki. Powód? Plik robots.txt z deweloperki został przeniesiony na produkcję razem z dyrektywą blokującą całą witrynę. W tym poradniku pokażę Ci, jak ten plik działa, jak go ustawić i gdzie najłatwiej o kosztowny błąd.

Robots.txt to jeden z tych elementów technicznego SEO, który większość właścicieli firm ignoruje – dopóki coś nie pójdzie nie tak. A wtedy bywa drogo: spadek widoczności, przepalony budżet na pozycjonowanie i tygodnie czekania, aż Google ponownie przejdzie po stronie. Z naszej praktyki to jeden z pierwszych plików, które sprawdzamy przy każdym audycie technicznym.

Poniżej rozkładam temat na czynniki pierwsze: czym jest plik robots.txt, jak dyrektywy Disallow i Allow sterują robotami, czym różni się od meta noindex i jak wygląda poprawna konfiguracja dla WordPressa oraz sklepu internetowego. Z gotowymi przykładami, które możesz podejrzeć i dopasować do siebie.

Spis treści

Czym jest plik robots.txt i gdzie go znaleźć

Plik robots.txt to zwykły plik tekstowy w głównym katalogu witryny, w którym mówisz robotom wyszukiwarek, po których częściach serwisu mogą chodzić, a których mają nie ruszać. To pierwsze, co robot Google sprawdza, zanim zacznie skanować Twoją stronę – rodzaj regulaminu wstępu przy drzwiach.

Jeśli zastanawiasz się, gdzie jest plik robots.txt, odpowiedź jest zawsze taka sama: pod adresem twojadomena.pl/robots.txt. Wpisz to w przeglądarkę dla dowolnej strony, też konkurencji, i zobaczysz jej zawartość. Plik musi leżeć dokładnie w katalogu głównym – nie w podfolderze, nie w podstronie. Robot szuka go tylko w jednym, sztywno określonym miejscu.

Ważna rzecz, którą trzeba zrozumieć od początku: robots.txt to prośba, a nie zapora. Roboty Google, Bing czy innych dużych wyszukiwarek respektują jego zapisy. Ale złośliwe boty, scrapery czy narzędzia do podbierania treści mogą go zwyczajnie zignorować. Nie traktuj tego pliku jak zabezpieczenia – od tego są hasła i ograniczenia po stronie serwera.

Pro-tip: nigdy nie wpisuj do robots.txt ścieżek do paneli logowania, katalogów z danymi czy plików, które mają zostać niewidoczne. Robisz wtedy dokładnie odwrotnie, niż myślisz – publikujesz publiczną mapę wrażliwych miejsc. Każdy, kto otworzy Twój robots.txt, dostaje listę adresów, których „nie chcesz pokazywać”.

Jak działają dyrektywy: User-agent, Disallow i Allow

Cała składnia robots.txt opiera się na kilku poleceniach. Nie trzeba być programistą, żeby je ogarnąć – logika jest prostsza, niż wygląda. Trzy najważniejsze dyrektywy to User-agent, Disallow i Allow.

Dyrektywa Co robi Przykład
User-agent Wskazuje, do którego robota mówisz. Gwiazdka oznacza „do wszystkich” User-agent: *
Disallow Blokuje dostęp do ścieżki lub katalogu Disallow: /koszyk/
Allow Robi wyjątek wewnątrz zablokowanego katalogu Allow: /wp-admin/admin-ajax.php
Sitemap Wskazuje robotowi adres mapy strony Sitemap: https://domena.pl/sitemap.xml

Blokowanie robotów Google sprowadza się więc do dyrektywy Disallow. Wpisując Disallow: /tag/, mówisz: „nie skanuj adresów zaczynających się od /tag/”. Wpisując Disallow: / – blokujesz całą stronę. I tu zaczyna się większość katastrof, o których za chwilę.

Dyrektywa Allow przydaje się, gdy chcesz zablokować cały katalog, ale wpuścić robota do jednego pliku w środku. Najczęstszy przykład to WordPress: blokujesz folder /wp-admin/, ale dopuszczasz admin-ajax.php, bo z niego korzystają wtyczki renderujące treść. Bez tego Google może mieć problem z poprawnym wyświetleniem strony.

Pamiętaj o kolejności logiki: reguły dotyczą tego konkretnego User-agenta, pod którym są zapisane. Możesz mieć osobny blok dla Googlebota, osobny dla bota od reklam, osobny dla wszystkich pozostałych. W praktyce dla 90% firm w zupełności wystarczy jeden blok User-agent: * i kilka rozsądnych wykluczeń.

robots.txt a meta noindex – to nie to samo

To różnica, na której potyka się najwięcej osób, włącznie z częścią „specjalistów” SEO. Zapamiętaj jedno zdanie: robots.txt steruje skanowaniem, a meta noindex steruje indeksowaniem. To dwa różne etapy i dwa różne narzędzia.

Dyrektywa Disallow mówi robotowi „nie wchodź na tę stronę”. Ale jeśli do tej strony prowadzą linki z innych miejsc w sieci, Google może i tak wrzucić ją do indeksu – bez treści, z dopiskiem „brak informacji o tej stronie”. Czyli zablokowałeś skanowanie, a adres mimo wszystko ląduje w wynikach. Temat robots.txt a indeksacja bywa kontrintuicyjny właśnie dlatego.

Jeśli chcesz, żeby konkretna podstrona w ogóle nie pojawiała się w Google, użyj znacznika <meta name="robots" content="noindex"> w sekcji head tej strony. Ale uwaga na pułapkę: żeby robot zobaczył ten znacznik, musi mieć prawo wejść na stronę. Jeśli równocześnie zablokujesz ją w robots.txt, Google nigdy nie odczyta noindex – i strona może zostać w indeksie mimo Twoich intencji.

Pro-tip: chcesz usunąć stronę z wyników? Najpierw zostaw ją otwartą w robots.txt i dodaj meta noindex. Poczekaj, aż Google ją przeskanuje i wyrzuci z indeksu. Dopiero potem – jeśli w ogóle – możesz ją zablokować w robots.txt. Odwrotna kolejność to klasyczny błąd, który „zamraża” stronę w indeksie na miesiące.

W skrócie: robots.txt służy do oszczędzania budżetu skanowania i odsiewania śmieciowych adresów, a nie do chowania pojedynczych stron przed wyszukiwarką. To rozróżnienie omawiamy szerzej w tekście o budżecie skanowania i indeksacji strony, bo te dwa tematy chodzą parą.

Gotowe przykłady robots.txt dla WordPressa i sklepów

Teoria teorią, ale najszybciej uczysz się na konkretach. Poniżej znajdziesz przykłady robots.txt, które realnie stosujemy na kontach klientów. Potraktuj je jako punkt wyjścia, nie jako uniwersalny szablon – każda strona ma swoją specyfikę.

Minimalny, bezpieczny robots.txt dla zwykłej strony firmowej

Jeśli masz prostą stronę-wizytówkę albo blog firmowy i nie wiesz, od czego zacząć, najlepszy plik robots.txt to taki, który prawie nic nie blokuje:

User-agent: *
Disallow:

Sitemap: https://twojadomena.pl/sitemap.xml

Puste Disallow oznacza „wszystko dozwolone”. To świadoma decyzja, nie zaniedbanie – dla większości małych firm im mniej blokad, tym lepiej. Dodaj tylko adres mapy strony, żeby robot szybciej znalazł Twoje podstrony.

robots.txt dla WordPressa

Tu warto odciąć kilka technicznych katalogów, które nie wnoszą nic do wyników wyszukiwania, a tylko zjadają budżet skanowania. Oto sprawdzony układ, czyli jak skonfigurować robots.txt pod WordPressa:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-login.php
Disallow: /?s=
Disallow: /search/

Sitemap: https://twojadomena.pl/sitemap_index.xml

Co tu się dzieje? Blokujemy panel administracyjny i logowanie, ale dopuszczamy admin-ajax.php, bo z niego korzystają wtyczki. Odcinamy też strony wyników wyszukiwania wewnętrznego (/?s=), bo generują dziesiątki bezwartościowych adresów. Nie blokujemy katalogu /wp-content/uploads/ – tam są Twoje zdjęcia, a te powinny się indeksować, zwłaszcza po optymalizacji obrazów pod SEO.

robots.txt dla sklepu internetowego

W e-commerce główny problem to setki adresów generowanych przez filtry, sortowanie i koszyk. To one rozsadzają budżet skanowania. Przykładowa konfiguracja dla sklepu:

User-agent: *
Disallow: /koszyk/
Disallow: /zamowienie/
Disallow: /moje-konto/
Disallow: /*?orderby=
Disallow: /*?filter
Disallow: /*?add-to-cart=

Sitemap: https://twojsklep.pl/sitemap.xml

Blokujemy koszyk, proces zamówienia i konto klienta, bo te strony nie mają czego szukać w Google. Odcinamy też parametry sortowania i filtrowania, które tworzą tysiące niemal identycznych adresów. Ale uważaj: jeśli Twoje strony kategorii z filtrami przyciągają ruch (np. „buty trekkingowe rozmiar 42”), nie blokuj ich w ciemno – najpierw sprawdź, które filtry mają wartość SEO. To temat, który zawsze analizujemy indywidualnie przy technicznym audycie SEO strony.

Pro-tip: zanim zablokujesz jakikolwiek katalog parametrem typu /*?filter, wejdź do Google i wpisz site:twojadomena.pl z fragmentem tego adresu. Jeśli widzisz tam strony, które przynoszą ruch, zatrzymaj się. Blokada w robots.txt wytnie je z budżetu skanowania i z czasem mogą wypaść z indeksu.

Najkosztowniejszy błąd: zablokowanie całej witryny

Jest jeden zapis, który potrafi wyzerować ruch organiczny szybciej niż jakikolwiek inny błąd techniczny. To dwie linijki:

User-agent: *
Disallow: /

Ten pojedynczy ukośnik po Disallow oznacza „nie skanuj niczego”. Zablokowanie całej witryny zdarza się najczęściej z jednego powodu: WordPress ma w ustawieniach opcję „Proś wyszukiwarki o nieindeksowanie tej witryny”, którą włącza się na czas budowy strony. Programista zapomina ją wyłączyć przy przenosinach na produkcję – i gotowe. Strona żyje, sprzedaje, a Google jej nie widzi.

Mini-scenka z naszej praktyki: klient dzwoni, że po przebudowie sklepu sprzedaż z Google „kompletnie umarła”, choć kampanie płatne chodzą normalnie. Pierwsze, co sprawdzamy, to domena.pl/robots.txt. I tam, czarno na białym, Disallow: /. Naprawa zajmuje pięć minut, ale odbudowa pozycji po dwóch tygodniach niewidoczności to już kilka tygodni czekania. Dlatego ten plik sprawdzamy zawsze przed startem każdego projektu.

Druga, subtelniejsza wersja tego błędu to przypadkowe blokady ważnych zasobów – plików CSS i JavaScript. Kiedyś dało się je odcinać bez konsekwencji. Dziś Google renderuje strony jak przeglądarka i jeśli zablokujesz mu pliki układu i skryptów, zobaczy rozsypaną, „połamaną” wersję serwisu. To realnie obniża ocenę strony i może uderzyć w pozycje.

Pro-tip: po każdym wdrożeniu nowej strony albo dużej zmianie na serwerze otwórz domena.pl/robots.txt w przeglądarce i przeczytaj go na spokojnie. Trzydzieści sekund kontroli ratuje przed tygodniami niewidoczności. To najtańsze ubezpieczenie SEO, jakie istnieje.

Jak sprawdzić i wdrożyć plik robots.txt

Sama edycja pliku jest banalna – schody zaczynają się przy weryfikacji, czy reguły robią dokładnie to, co chcesz. Oto kolejność, którą stosujemy.

  1. Zobacz, co masz teraz. Otwórz twojadomena.pl/robots.txt i przeczytaj zawartość. Jeśli plik nie istnieje, serwer zwykle zachowuje się tak, jakby wszystko było dozwolone – ale lepiej go założyć i mieć kontrolę.
  2. Edytuj go we właściwym miejscu. Na WordPressie najwygodniej przez wtyczkę SEO (np. Yoast albo Rank Math), która ma wbudowany edytor robots.txt. Na własnym serwerze – wgrywasz plik tekstowy do katalogu głównego przez FTP lub menedżer plików.
  3. Przetestuj reguły w Google Search Console. To darmowe narzędzie pokazuje, czy konkretny adres jest zablokowany, czy dozwolony. Sprawdź kilka kluczowych podstron, zanim uznasz temat za zamknięty.
  4. Dodaj adres mapy strony. Linia Sitemap: z pełnym adresem pliku sitemap.xml ułatwia robotom znalezienie wszystkich podstron. To drobiazg, który przyspiesza indeksację nowych treści.
  5. Wróć po kilku dniach do Search Console. Sprawdź raport indeksowania – czy nie pojawiły się komunikaty o stronach zablokowanych przez robots.txt, których blokować nie chciałeś.

Jeśli to wszystko brzmi jak za dużo technicznych klocków na raz, to normalne – robots.txt jest jednym z elementów większej układanki technicznego SEO. Bezpieczna konfiguracja powinna iść w parze z audytem strony WWW, poprawną mapą witryny i przemyślaną strategią pozycjonowania. Dobrze ustawiony plik nic nie da, jeśli reszta fundamentów kuleje.

Plik robots.txt zwykle ustawiamy raz, na etapie budowy lub przebudowy strony – i właśnie dlatego o nim zapominamy, dopóki coś nie pęknie. Jeśli stawiasz nowy serwis, zadbaj o niego od razu w ramach tworzenia strony WWW, a nie po fakcie.

Jako certyfikowany partner Google i zespół, który na co dzień prowadzi audyty techniczne i pozycjonowanie, w Social Plan widzimy te błędy regularnie – i równie regularnie je naprawiamy. Jeśli nie masz pewności, czy Twój plik robots.txt nie blokuje czegoś ważnego, napisz do nas. Sprawdzimy go razem z resztą fundamentów technicznych i powiemy wprost, co poprawić.

Najczęściej zadawane pytania

Gdzie jest plik robots.txt i jak go otworzyć?
Plik robots.txt zawsze leży w katalogu głównym domeny, pod adresem twojadomena.pl/robots.txt. Wystarczy wpisać ten adres w przeglądarce, żeby zobaczyć jego zawartość – dla dowolnej strony, też konkurencji. Jeśli plik nie istnieje, dostaniesz błąd 404 i warto go założyć.

Czy robots.txt usuwa stronę z Google?
Nie do końca. Dyrektywa Disallow blokuje skanowanie, ale strona z linkami z zewnątrz może i tak trafić do indeksu – bez treści, z dopiskiem o braku informacji. Żeby naprawdę usunąć stronę z wyników, użyj meta noindex i pozostaw ją otwartą w robots.txt, aż Google ją przeskanuje.

Jak skonfigurować robots.txt na WordPressie?
Najprościej przez wtyczkę SEO, jak Yoast albo Rank Math, która ma wbudowany edytor. Zablokuj /wp-admin/ z wyjątkiem admin-ajax.php, odetnij strony wyszukiwania wewnętrznego i dodaj adres mapy witryny. Nie blokuj katalogu z grafikami ani plików CSS i JavaScript.

Co się stanie, gdy zablokuję całą witrynę przez Disallow: /?
Google przestanie skanować stronę i z czasem wypadnie ona z wyników wyszukiwania, a ruch organiczny spadnie do zera. To najczęstszy i najkosztowniejszy błąd w robots.txt, zwykle pozostałość po fazie budowy strony. Sprawdź ten plik po każdym wdrożeniu.

Czy każda strona musi mieć plik robots.txt?
Technicznie nie – bez pliku roboty zakładają, że mogą skanować wszystko. Ale lepiej go mieć, żeby świadomie sterować budżetem skanowania, odciąć śmieciowe adresy i wskazać mapę witryny. Dla małej strony firmowej wystarczy minimalny, bezpieczny plik z jedną linią Sitemap.