Strona sierota (ang. orphan page) to adres URL, który istnieje, odpowiada kodem 200 i często jest nawet w indeksie, ale nie prowadzi do niego żaden link wewnętrzny. Robot ani użytkownik nie trafią na nią, klikając w nawigację, kategorie czy treść artykułów. W praktyce takie strony potrafią zbierać ruch z długiego ogona i konwertować, a mimo to wypadają z każdej analizy struktury serwisu, bo crawler startujący od strony głównej po prostu ich nie widzi.
Dobra wiadomość: wykrycie stron sierot to zadanie czysto mechaniczne. Wymaga zestawienia trzech list adresów i kilku decyzji przy fałszywych alarmach. Poniżej procedura, którą da się powtórzyć raz na kwartał w każdym serwisie, od bloga po sklep z kilkudziesięcioma tysiącami produktów.
Czym jest strona sierota i skąd się bierze
Definicja jest prosta: strona sierota ma zero linków przychodzących z innych podstron tej samej domeny. Nie liczą się linki z mapy witryny XML, z kampanii mailowych ani z zewnętrznych serwisów. Google może o niej wiedzieć (z sitemapy, z dawnych linków, z backlinków), ale nie dostaje sygnału, że w serwisie ma ona jakiekolwiek znaczenie. Dlatego takie adresy często lądują w statusie, który opisujemy w tekście wykryto, obecnie nie zaindeksowano, albo wypadają z indeksu po kilku miesiącach.
Najczęstsze źródła sierot:
- zmiana struktury kategorii, po której stare podstrony nie zostały przepięte do nowych,
- produkty wycofane z listingu, ale pozostawione pod działającym adresem,
- landing page’e kampanii tworzone poza menu i zapomniane po jej końcu,
- strony generowane masowo, np. z szablonu i arkusza danych, bez zaplanowanego linkowania,
- paginacja archiwów, która przy dużej liczbie wpisów odsuwa starsze teksty bardzo głęboko.
Ten ostatni przypadek to formalnie nie sierota, tylko strona o dużej głębokości kliknięć. Warto jednak trzymać obie grupy w jednej analizie, bo leczenie jest podobne.
Trzy źródła danych potrzebne do wykrycia
Żadne pojedyncze źródło nie wystarcza. Crawler zna tylko to, co podlinkowane; sitemapa zna to, co CMS uznał za publiczne; Search Console zna to, co Google faktycznie wyświetla. Sierota to adres obecny w dwóch ostatnich zbiorach i nieobecny w pierwszym.
| Źródło | Co zawiera | Jak pobrać |
|---|---|---|
| Crawl serwisu | Adresy osiągalne przez linki od strony głównej | Screaming Frog, Sitebulb lub własny crawler; eksport URL z kodem 200 i liczbą inlinków |
| Mapa witryny XML | Adresy, które CMS deklaruje jako publiczne | Pobranie indeksu sitemap i wszystkich podmap, spłaszczenie do jednej listy |
| Google Search Console | Adresy z wyświetleniami w wynikach wyszukiwania | Raport Skuteczność z wymiarem strony, najlepiej przez API lub eksport do BigQuery |
Interfejs Search Console pokazuje maksymalnie 1000 wierszy, co w średnim sklepie nie wystarczy. Przy większych serwisach lepiej sięgnąć po masowy eksport Search Console do BigQuery, gdzie lista wszystkich adresów z wyświetleniami za 90 dni to jedno zapytanie SQL. Opcjonalnym czwartym źródłem są logi serwera: adresy odwiedzane przez Googlebota, których nie ma w crawlu, to bardzo mocni kandydaci na sieroty.
Zestawienie list krok po kroku
- Normalizacja. Zanim porównasz cokolwiek, sprowadź adresy do jednej postaci: ten sam protokół, ten sam host (z www lub bez), jednolity ukośnik na końcu, małe litery w ścieżce tam, gdzie serwer je rozróżnia, usunięte parametry UTM. Bez tego połowa wyników to fałszywe różnice typu „/kategoria/” kontra „/kategoria”.
- Crawl bez sitemapy. Uruchom crawler od strony głównej z wyłączonym pobieraniem adresów z sitemapy. Inaczej narzędzie samo dociągnie sieroty i pokaże je jako znalezione.
- Różnica zbiorów. W arkuszu lub w SQL wylicz: (sitemapa ∪ Search Console) minus crawl. W Screaming Frog jest do tego gotowy raport Orphan URLs po podpięciu sitemapy i API Search Console w trybie analizy po crawlu.
- Weryfikacja statusu. Każdy kandydat dostaje ponowne sprawdzenie kodu odpowiedzi. Adresy z 301, 404 czy 410 to nie sieroty, tylko śmieci w sitemapie lub stare dane w GSC.
- Wzbogacenie. Do listy dołącz wyświetlenia, kliknięcia i średnią pozycję z ostatnich 90 dni oraz datę ostatniej modyfikacji. Te kolumny zdecydują o dalszym losie strony.
Krok drugi jest najczęściej pomijany, a to on decyduje o wiarygodności wyniku. Jeśli crawler korzysta z sitemapy jako źródła startowego, raport sierot zawsze wyjdzie pusty.
Fałszywe alarmy: paginacja, filtry, strony techniczne
Surowa lista kandydatów zwykle zawiera sporo adresów, które nie wymagają żadnej akcji. Typowe grupy:
- Kolejne strony paginacji (/page/7/), które Search Console raportuje, a crawler z limitem głębokości nie dotarł. To problem głębokości, nie brak linków.
- Adresy filtrów i sortowania z parametrami. Jeśli mają kanoniczny wskazujący na kategorię, ich obecność w GSC to szum.
- Strony techniczne: koszyk, logowanie, podziękowanie po formularzu, wyniki wyszukiwarki wewnętrznej. Powinny mieć noindex i nie powinny trafiać do sitemapy.
- Załączniki i archiwa autora w WordPressie, które wtyczka SEO dodała do mapy witryny.
- Różnice w zapisie adresu, które przetrwały normalizację, np. zakodowane polskie znaki.
Warto też pamiętać o ograniczeniu samego crawlera. Jeśli ustawisz limit głębokości na 5 kliknięć, każda strona leżąca na poziomie 6 wyjdzie jako „nieosiągalna”, choć ma linki. Zanim oznaczysz adres jako sierotę, sprawdź go w crawlu bez limitu głębokości.
Decyzja: podlinkować, scalić czy usunąć
Po odsianiu szumu zostaje lista prawdziwych sierot. Każda dostaje jedną z trzech decyzji:
| Sytuacja | Decyzja |
|---|---|
| Strona ma wyświetlenia lub kliknięcia, temat jest aktualny | Podlinkować z 2–5 tematycznie bliskich podstron i z właściwej kategorii |
| Strona dubluje temat innej, mocniejszej podstrony | Scalić treść i ustawić przekierowanie 301 na stronę docelową |
| Brak ruchu, treść nieaktualna, brak backlinków | Usunąć z kodem 410 lub przekierować na kategorię nadrzędną |
| Strona celowo ukryta (np. landing kampanii płatnej) | Zostawić, ale dodać noindex i usunąć z sitemapy |
Przy podlinkowaniu liczy się kontekst. Link z akapitu tekstu o tym samym temacie działa lepiej niż pozycja w stopce czy w bloku „zobacz też”. Google opisuje w dokumentacji o linkach możliwych do zindeksowania, że robot podąża za standardowymi elementami <a href>; linki osadzone w skryptach czy zdarzeniach onclick mogą zostać pominięte, więc sierota „podlinkowana” w ten sposób nadal będzie sierotą.
Jak zapobiegać powstawaniu sierot
Sieroty to objaw procesu, a nie jednorazowy błąd. Kilka zasad ogranicza ich powstawanie:
- każda nowa podstrona przed publikacją ma przypisaną kategorię i minimum dwa linki przychodzące z istniejących tekstów,
- przy wycofaniu produktu albo zmianie kategorii decyzja o przekierowaniu jest częścią tego samego zadania,
- generowanie stron masowo zawsze idzie w parze z generowaniem stron zbiorczych, które je linkują,
- raport różnicy crawl kontra sitemapa jest uruchamiany automatycznie, np. co miesiąc.
Szczególnie ryzykowne są projekty programmatic SEO. Jeśli budujesz strony programmatic z arkusza Google, zaplanuj od początku strony hubowe i linki między rekordami, bo inaczej setki nowych adresów będą znane wyłącznie z sitemapy. Sama mapa witryny pomaga w odkryciu adresu, ale jak podkreśla Google Search Central, nie gwarantuje indeksowania.
Jak sprawdzić efekt po podlinkowaniu
Po wdrożeniu linków nie oczekuj zmian następnego dnia. Rozsądny plan pomiaru wygląda tak:
- Zapisz listę podlinkowanych adresów z datą wdrożenia i stanem wyjściowym (status indeksowania, wyświetlenia za 28 dni, data ostatniego crawla z narzędzia Sprawdzanie adresu URL).
- Po 2–3 tygodniach sprawdź, czy Googlebot odwiedził strony ponownie. Najpewniej widać to w logach serwera, pośrednio w dacie ostatniego crawla w Search Console.
- Po 6–8 tygodniach porównaj wyświetlenia i średnią pozycję z grupą kontrolną, czyli sierotami, których celowo jeszcze nie podlinkowano.
Grupa kontrolna jest ważna, bo ruch całego serwisu zmienia się sezonowo i po aktualizacjach algorytmu. Bez niej trudno odróżnić efekt linkowania od ogólnego trendu. Jeśli po dwóch miesiącach podlinkowane strony nadal nie zostały pobrane przez robota, problem leży głębiej: w ocenie jakości treści albo w budżecie indeksowania całej domeny.
FAQ
Czy strona sierota może być w indeksie Google?
Tak. Google mógł ją poznać wcześniej, z sitemapy albo z linku zewnętrznego, i nadal ją wyświetlać. Brak linków wewnętrznych osłabia jednak jej pozycję i zwiększa ryzyko, że przy kolejnej ocenie wypadnie z indeksu.
Czy wystarczy dodać stronę do mapy witryny XML?
Nie. Sitemapa pomaga robotowi odkryć adres, ale nie przekazuje sygnałów o znaczeniu strony w strukturze serwisu. Strona obecna tylko w sitemapie nadal jest sierotą.
Jak często szukać stron sierot?
W serwisach publikujących kilka tekstów tygodniowo wystarczy raz na kwartał. W sklepach z rotacją asortymentu i w projektach generujących strony masowo lepiej uruchamiać raport co miesiąc.
Czy link w stopce lub w menu „rozwiązuje” problem sieroty?
Formalnie tak, bo strona przestaje mieć zero linków. Praktycznie link kontekstowy z tekstu o pokrewnym temacie daje robotowi więcej informacji o tym, czego dotyczy strona, i zwykle działa lepiej.
Które narzędzie wykrywa sieroty automatycznie?
Screaming Frog i Sitebulb mają raporty stron osieroconych po podpięciu sitemapy oraz Search Console lub Google Analytics. Ten sam wynik da się uzyskać w arkuszu albo w SQL, porównując eksporty z trzech źródeł.
