Jak sprawdzić meta robots i canonical?
Meta robots i canonical to dwa tagi, od których zaczyna się większość diagnoz indeksacji. Pierwszy mówi robotowi, czy stronę wolno pokazać w wynikach wyszukiwania, drugi wskazuje adres, który ma reprezentować daną treść. Gdy któryś z nich jest ustawiony błędnie, pozostałe prace nad stroną tracą sens — adres albo wypada z indeksu, albo konkuruje sam ze sobą.
Czym jest meta robots i gdzie go szukać
Meta robots to instrukcja dla robotów wyszukiwarek zapisana w kodzie strony. Znajduje się w sekcji <head> dokumentu HTML i dotyczy wyłącznie tej jednej strony — nie całego serwisu ani wybranej sekcji.
Tag ma prostą budowę: atrybut name określa adresata, a content — co robot ma zrobić. Najczęstsza postać wygląda tak: <meta name="robots" content="noindex, follow">. Wartości można łączyć, a kolejność w atrybucie nie ma znaczenia.
Oprócz wariantu ogólnego spotyka się tagi kierowane do konkretnego robota, na przykład googlebot. Warto sprawdzić oba miejsca, bo reguła zapisana dla jednego robota nie musi obowiązywać pozostałych.
Meta robots działa tylko w dokumencie HTML. Dla plików PDF, obrazów i dokumentów biurowych tę samą rolę pełni nagłówek X-Robots-Tag wysyłany przez serwer. Przy stronach generowanych dynamicznie warto sprawdzić, czy noindex nie siedzi właśnie w nagłówku, niezależnie od tego, co widać w kodzie.
index, noindex, follow, nofollow — jak łączą się wartości
O zachowaniu strony decydują dwie niezależne osie: indeksowanie i śledzenie linków. Wartość index pozwala umieścić adres w indeksie, noindex to blokuje. Follow oznacza, że robot może przechodzić po linkach, nofollow — że nie powinien.
| Wartość w content | Co robi ze stroną | Kiedy ma sens |
|---|---|---|
| index, follow | Strona może trafić do indeksu, linki są śledzone | Domyślne ustawienie zwykłych stron |
| noindex, follow | Strona wypada z wyników, linki nadal są odkrywane | Strony techniczne, podziękowania, panele |
| index, nofollow | Strona zostaje w indeksie, linki nie przekazują sygnału | Rzadko; gdy linki mają być tylko dla ludzi |
| noindex, nofollow | Ani indeksowania, ani śledzenia linków | Wersje testowe i tymczasowe |
| Brak tagu | Działa ustawienie domyślne, czyli index, follow | Większość normalnych podstron |
Wartości działają niezależnie, dlatego noindex, follow ma sens: strona znika z wyników, ale linki na niej wciąż są odkrywane. Zmiana nie działa natychmiast — robot musi najpierw ponownie pobrać stronę, żeby zastosować nową regułę.
Brak tagu oznacza ustawienie domyślne. Dlatego tak łatwo przeoczyć noindex wstawiony kiedyś na chwilę: strona wygląda normalnie, tylko przestaje pojawiać się w wynikach.
Najczęstsze błędy z meta robots
Większość problemów z noindex wynika z pośpiechu, a nie ze złych intencji. W praktyce najczęściej trafia się kilka schematów:
- noindex pozostawiony po testach — strona wraca na produkcję z blokadą, którą ktoś wstawił na czas przenoszenia domeny;
- noindex wpisany w szablon globalny — miał objąć jedną stronę, a obejmuje wszystkie podstrony serwisu;
- noindex na całej stronie zamiast na wydzielonym fragmencie — na przykład wtedy, gdy chodziło tylko o stronę podziękowania po formularzu;
- sprzeczne tagi robots w jednym dokumencie — przy konflikcie zwykle wygrywa wartość bardziej restrykcyjna, więc jeden stary tag psuje całą konfigurację;
- tag wstrzyknięty skryptem albo umieszczony poza sekcją head — robot może go w ogóle nie odczytać.
Osobna pułapka to robots.txt. Blokada w tym pliku nie usuwa noindex — ona w ogóle uniemożliwia pobranie strony, więc robot nie ma jak zobaczyć ani noindex, ani canonicala. Efekt bywa odwrotny do zamierzonego: adres może pojawić się w wynikach jako goły link bez opisu.
Kolejność działań ma więc znaczenie. Najpierw zezwól na pobranie strony w robots.txt, potem ustaw noindex i poczekaj na ponowne odwiedziny. Dopiero gdy adres zniknie z indeksu, można zablokować go w pliku robots.
Canonical, czyli wskazanie adresu preferowanego
Canonical to tag w sekcji head, który mówi: spośród kilku adresów pokazujących tę samą treść ten jeden jest właściwy. Zapis wygląda następująco: <link rel="canonical" href="/kategoria/nowy-produkt">. Google przyjmuje zarówno adresy względne, jak i pełne, ale pełna wersja z protokołem i hostem jest mniej podatna na pomyłki, gdy szablon kopiuje się między sekcjami serwisu.
Znaczenie ma każdy szczegół adresu: protokół, obecność www, końcowy ukośnik, wielkość liter i parametry. Dla robota strona.pl/kontakt oraz www.strona.pl/kontakt/ to dwa różne adresy, nawet jeśli użytkownik widzi identyczną treść.
Tag stosuje się tam, gdzie duplikacja jest naturalna i nie da się jej usunąć przekierowaniem. Chodzi o adresy, które muszą istnieć, ale nie powinny ze sobą konkurować w wynikach.
Gdzie canonical robi najwięcej pracy
Paginacja to klasyczny przykład. Kolejne strony listy pokazują inne fragmenty tej samej kolekcji, a canonical pozwala jasno określić, czy mają być osobnymi adresami, czy wariantami jednego widoku. Google zwykle zaleca, by każda strona paginacji wskazywała na siebie — dzięki temu dalsze podstrony listy pozostają indeksowalne.
Filtry i sortowanie generują dziesiątki wariantów tego samego katalogu. Parametry typu kolor, rozmiar czy kolejność nie zmieniają treści na tyle, by zasługiwały na osobne miejsce w indeksie — canonical zbiera je w jeden adres.
Parametry kampanii, takie jak utm_source czy gclid, to osobny przypadek. Nie zmieniają treści, ale potrafią rozmnożyć adres w indeksie, jeśli takie linki prowadzą do serwisu z zewnątrz. Canonical na czysty adres zwykle załatwia sprawę, o ile parametry nie są potrzebne do poprawnego działania strony.
Duble protokołu i hosta to najczęstszy przypadek po wdrożeniu HTTPS. Wersje http i https oraz adresy z www i bez www powinny wskazywać na jedną, ostateczną postać. Najlepiej, gdy dodatkowo działają przekierowania 301 — canonical jest wtedy zabezpieczeniem, a nie jedynym mechanizmem.
Błędy w canonicalu i granice jego działania
Najczęstszy błąd to canonical wskazujący adres, który nie istnieje albo zwraca błąd 404. Taki tag nie pomaga — robot go zignoruje i sam wybierze wersję reprezentatywną.
Drugi wariant to łańcuchy: strona A wskazuje B, a B wskazuje C. Działa to słabiej niż bezpośrednie wskazanie finalnego adresu, a przy dłuższych łańcuchach bywa pomijane.
Trzeci to canonical na stronę z noindex. Sygnały wykluczają się nawzajem: jedna instrukcja mówi „to jest wersja główna”, druga — „nie pokazuj jej w wynikach”.
Czwarty to różne canonicale u kopii, gdy A wskazuje B, a B wskazuje A. Robot dostaje sprzeczne informacje i rozstrzyga po swojemu, często inaczej, niż zakładał właściciel serwisu.
Warto pamiętać, że canonical jest podpowiedzią, a nie dyrektywą. Google może ją zignorować, jeśli uzna, że dwie strony różnią się na tyle, by traktować je osobno — dlatego duplikat warto najpierw uporządkować u źródła.
Canonical nie jest też przekierowaniem. Użytkownik zostaje na adresie, który otworzył, a treść nie zmienia miejsca. To narzędzie porządkujące sygnały, a nie mechanizm przenoszenia ruchu.
Jak sprawdzić meta robots i canonical krok po kroku
Najprościej zacząć od źródła strony — skrót Ctrl+U w przeglądarce albo opcja „Pokaż źródło strony”. W sekcji head szukasz fraz robots i canonical; obie powinny być widoczne w pierwszych linijkach dokumentu.
Potem porównaj canonical z adresem, który faktycznie masz w pasku przeglądarki. Sprawdź protokół, www, ukośnik na końcu i parametry. Wklej adres z canonicala do przeglądarki i upewnij się, że otwiera się bez przekierowania i zwraca kod 200.
Przy większej liczbie adresów potrzebny jest crawler, który zbiera tagi z całego serwisu i pokazuje rozbieżności w jednej tabeli. W Search Console pomocne jest „Sprawdzenie adresu URL” — widać tam zarówno canonical wybrany przez Google, jak i informację, czy strona jest zaindeksowana.
Jeśli chcesz sprawdzić pojedynczy adres bez przeglądania kodu, nasze narzędzia wyciągną ze strony meta robots, canonical, title oraz H1 i pokażą je w jednym miejscu. Wystarczy wkleić adres i porównać wynik z tym, co widzisz w pasku przeglądarki.