Crawl budget – co to jest i jak nie marnować limitów bota Google?

Wyobraź sobie, że Googlebot to niezwykle zapracowany urzędnik, który codziennie musi skontrolować miliony budynków. Kiedy puka do drzwi Twojej witryny, nie zamierza spędzić w niej całego dnia. Ma w swoim kalendarzu ściśle określony czas – powiedzmy, pięć minut. Jeśli Twój serwis jest czysty, dobrze zorganizowany i ma jasne drogowskazy, urzędnik w te pięć minut przejrzy wszystkie najważniejsze pokoje, podstempluje dokumenty i wyjdzie.

Jeśli jednak w Twoim budynku panuje chaos, korytarze prowadzą do ślepych zaułków, a w windzie utknie na kilka minut, czas minie, zanim urzędnik dotrze do najważniejszych pomieszczeń. Wyjdzie sfrustrowany, a nieprzejrzane pokoje zostaną nieoficjalne.

W świecie SEO ten ograniczony czas i zasoby to Crawl Budget (budżet indeksowania). Zrozumienie, jak działa i jak go nie marnować, to klucz do technicznego pozycjonowania każdej rozbudowanej witryny.

Czym jest crawl budget?

Definicja: crawl rate limit + crawl demand

Crawl budget nie jest losową wartością branżową – Google oficjalnie definiuje go jako wypadkową dwóch kluczowych elementów: Crawl Rate Limit (limit współczynnika skanowania) oraz Crawl Demand (zapotrzebowanie na skanowanie).

1. Crawl Rate Limit (Ograniczenie techniczne)

Googlebot chce być dobrym gościem. Jego głównym celem jest pobranie zawartości Twojej strony, ale nie kosztem jej wydajności. Limit ten określa, ile jednoczesnych zapytań bot może wysłać do Twojego serwera, aby nie spowolnić działania strony dla prawdziwych użytkowników. Jeśli Twój serwer błyskawicznie odpowiada na żądania, bot podkręca tempo. Jeśli serwer zaczyna łapać zadyszkę i zwraca błędy, Googlebot zwalnia, drastycznie ucinając limit.

2. Crawl Demand (Potrzeba biznesowa)

Google nie skanuje stron bezcelowo. Algorytm ocenia, czy Twoja strona zasługuje na częste odwiedziny. Zapotrzebowanie zależy od:

  • Popularności: Strony z ogromnym ruchem i mocnym profilem linków zewnętrznych są odwiedzane znacznie częściej.
  • Świeżości: Jeśli prowadzisz portal informacyjny, który publikuje artykuły co 10 minut, Googlebot będzie u Ciebie mieszkał. Jeśli masz statyczną wizytówkę firmy, bot wpadnie raz na kilka tygodni.

Crawl Budget to moment, w którym te dwie linie się przecinają: to maksymalna liczba adresów URL, które Googlebot może i chce skanować w Twojej witrynie w danym przedziale czasu.

Dla kogo ma znaczenie?

Jeśli prowadzisz mały blog, lokalną stronę usługową lub prosty sklep e-commerce z setką produktów, możesz całkowicie zapomnieć o crawl budget. Google bez problemu poradzi sobie z przeskanowaniem kilkuset podstron.

Zarządzanie budżetem indeksowania staje się sprawą życia i śmierci dla:

  • Dużych sklepów e-commerce (powyżej 10-20 tysięcy produktów): Gdzie kombinacje filtrów tworzą miliony adresów.
  • Portali ogłoszeniowych i marketplace’ów: Gdzie treść zmienia się dynamicznie co sekundę.
  • Dużych serwisów informacyjnych: Generujących ogromne ilości contentu i tagów.
  • Stron w trakcie wielkich migracji: Gdzie trzeba przetworzyć setki tysięcy starych i nowych adresów jednocześnie.

Co marnuje crawl budget?

Zanim zaczniesz optymalizować kod, musisz dowiedzieć się, gdzie uciekają Twoje limity. Oto najwięksi „złodzieje” budżetu indeksowania.

URL-e z parametrami (sortowanie, filtry)

To główny wróg e-commerce. Załóżmy, że masz kategorię „Buty sportowe”. Użytkownik może je sortować po cenie, filtrować po rozmiarze (40, 41, 42), kolorze (czarny, biały, czerwony) i marce. Dla człowieka to wciąż ta sama lista produktów. Dla Googlebota każdy zaznaczony filtr generuje zupełnie nowy, unikalny adres URL, np.: twojsklep.pl/buty?sort=price_asc&color=black&size=42

Liczba kombinacji rośnie lawinowo (tzw. eksplozja przestrzeni adresowej). Bot potrafi spędzić kilka dni na skanowaniu milionów wariantów tej samej kategorii, zupełnie ignorując nowo dodane produkty w innych sekcjach sklepu.

Strony bez wartości: 404, strony tagów, duplikaty

  • Błędy 404: Każde zapytanie bota do nieistniejącego adresu zużywa ułamek budżetu. Jeśli masz w serwisie tysiące starych, nieoczyszczonych linków 404, bot traci energię na pukanie do pustych drzwi.
  • Automatyczne strony tagów: Systemy typu WordPress potrafią dla każdego wpisu stworzyć osobną stronę tagu. Jeśli do tagu „promocja” przypiszesz jeden artykuł, powstaje pusta podstrona o zerowej wartości dla użytkownika (thin content), którą bot i tak musi pobrać.
  • Duplikaty (Internal Duplicate Content): Te same treści dostępne pod różnymi adresami (np. produkt przypisany do pięciu różnych kategorii, wersje z ukośnikiem na końcu / i bez). Bot pobiera tę samą treść pięciokrotnie.

Nieskończone paginacje

Długie listy produktów podzielone na setki stron (/odziez?page=1, /odziez?page=2/odziez?page=485) potrafią skutecznie uwięzić robota. Jeśli struktura paginacji jest źle zaplanowana (np. brakuje linków wewnętrznych do pomijania stron), bot krąży po kolejnych numerkach stron, zamiast przechodzić głębiej do kart konkretnych produktów.

Blokowanie CSS/JS – Google widzi pustą stronę

Nowoczesny Googlebot nie tylko czyta tekst – on renderuje stronę jak normalna przeglądarka. Jeśli w pliku robots.txt przez pomyłkę zablokujesz botowi dostęp do kluczowych skryptów JavaScript lub arkuszy stylów CSS, robot pobierze surowy kod HTML, ale nie będzie w stanie go poprawnie złożyć. Z jego perspektywy strona wyda się uszkodzona lub pusta, co drastycznie obniży wskaźnik Crawl Demand.

Jak zoptymalizować crawl budget?

Skoro znasz już zagrożenia, czas na wdrożenie technicznych blokad i usprawnień.

Blokowanie bezwartościowych URL-i w robots.txt

Plik robots.txt to Twoja pierwsza linia obrony. To jedyne miejsce, które potrafi powstrzymać bota przed samym faktem pobrania strony. Jeśli zablokujesz adres w robots.txt, Googlebot nie zużyje na niego ani jednej milisekundy swojego budżetu.

Przykładowe reguły odcinające botowi dostęp do filtrów i wewnętrznej wyszukiwarki:

Plaintext

User-agent: Googlebot
Disallow: /*?sort=
Disallow: /*&price=
Disallow: /search/
Disallow: /wp-admin/

Canonical dla duplikatów

Tag rel="canonical" nie blokuje fizycznego wejścia bota na stronę (bot i tak musi ją pobrać, by przeczytać tag), ale pomaga w optymalizacji Crawl Demand. Kiedy Googlebot widzi dziesięć podobnych adresów URL, ale każdy z nich wskazuje na ten sam kanoniczny adres główny, algorytm uczy się rzadziej odwiedzać wersje alternatywne, skupiając całą moc na indeksacji oryginału.

Usunięcie i przekierowanie stron 404

Regularnie czyść serwis z błędów 404. Jeśli usunąłeś produkt na stałe, a miał on do siebie jakieś linki wewnętrzne lub zewnętrzne, przekieruj go kodem 301 na najbardziej zbliżony produkt lub kategorię nadrzędną. Jeśli produkt nie ma zamiennika, upewnij się, że usunąłeś absolutnie wszystkie linki wewnętrzne w menu czy treści, które do niego prowadziły – bot nie trafia na błędy 404 znikąd, zawsze idzie po jakimś śladzie.

Poprawa szybkości serwera (TTFB)

To czysta matematyka. Jeśli średni czas odpowiedzi Twojego serwera (Time to First Byte – TTFB) wynosi 800 milisekund, bot w ciągu minuty pobierze zaledwie kilkadziesiąt stron. Jeśli zoptymalizujesz kod, wdrożysz agresywne buforowanie (caching) i skrócisz TTFB do 100 milisekund, ten sam bot w tym samym czasie pobierze kilkaset podstron.

Analiza logu serwera

Wszelkie narzędzia SEO (takie jak ahrefs czy Semstorm) jedynie symulują zachowanie robotów wyszukiwarki. Jeśli chcesz poznać stuprocentową prawdę o tym, jak Googlebot traktuje Twoją stronę, musisz sięgnąć do źródła: do logów serwera.

Co to są logi dostępu?

Log serwera (access log) to czarna skrzynka Twojej witryny. To surowy plik tekstowy, w którym serwer (np. Apache czy Nginx) rejestruje absolutnie każde pojedyncze kliknięcie, pobranie obrazka czy wywołanie skryptu. Każda linijka w takim logu zawiera:

  • Adres IP składającego zapytanie,
  • Dokładną datę i godzinę,
  • Metodę (np. GET/POST) i żądany adres URL,
  • Kod odpowiedzi HTTP (np. 200, 301, 404),
  • Tzw. User-Agent (informację o przeglądarce lub robocie).

Jak filtrować aktywność Googlebota?

Surowy plik logu potrafi ważyć gigabajty. Aby wyciągnąć z niego dane o crawl budget, musisz przefiltrować wpisy po polu User-Agent, szukając frazy Googlebot.

Uwaga na oszustów: Wiele złośliwych botów skanujących sieć podszywa się pod Googlebota, wpisując jego nazwę w pole User-Agent. Profesjonalny audyt wymaga przeprowadzenia tzw. odwrotnego wyszukiwania DNS (reverse DNS lookup), aby upewnić się, że zapytanie faktycznie pochodziło z adresu IP należącego do Google.

Narzędzia: Screaming Frog Log File Analyser

Ręczne przeglądanie logów w notatniku jest niemożliwe. Do analizy służą specjalistyczne programy, z których najpopularniejszym jest Screaming Frog Log File Analyser (darmowy do projektów analizujących do 1000 linii kodu logu).

Wrzucasz plik z logami do programu, a on zamienia surowy tekst w czytelne wykresy. Dzięki temu natychmiast dowiesz się:

  • Jakie sekcje strony bot odwiedza najczęściej (i czy przypadkiem nie marnuje 80% czasu na podstrony regulaminów lub koszyka),
  • Ile unikalnych adresów URL Googlebot odwiedził w ciągu ostatniego miesiąca,
  • Jakie kody odpowiedzi serwera bot napotyka najczęściej (jeśli wykres kołowy pokazuje duży czerwony wycinek z kodami 404 lub 500, masz jasny plan działania).

GSC – monitorowanie crawlowania

Jeśli nie masz dostępu do logów serwera (bo np. korzystasz z uproszczonego hostingu współdzielonego, który ich nie udostępnia), Twoim podstawowym panelem kontrolnym staje się Google Search Console.

Raport Crawl Stats (Statystyki indeksowania) w GSC

Dostęp do tego zaawansowanego raportu jest nieco ukryty. Nie znajdziesz go w głównym menu bocznym. Musisz wejść w Ustawienia na samym dole menu, a następnie w sekcji Indeksowanie kliknąć pozycję Otwórz raport obok pozycji Statystyki indeksowania.

Zobaczysz tam potężną dawkę danych podzieloną na cztery główne sekcje:

  1. Wykresy ogólne: Pokazują łączną liczbę żądań skanowania, łączny rozmiar pobieranych danych w bajtach oraz średni czas reakcji serwera. Szukaj tutaj nagłych spadków liczby żądań – mogą one oznaczać problemy z wydajnością hostingu.
  2. Żądania skanowania według celu: Informują, czy bot wchodził na stronę, by zaktualizować już znany content (Odświeżenie), czy też odkrywał zupełnie nowe, nieznane wcześniej adresy URL (Odkrywanie).
  3. Żądania skanowania według typu pliku: Zobaczysz, czy bot pobiera głównie pliki HTML, czy też traci cenne limity na potężne skrypty JavaScript lub ciężkie obrazy, które nie zostały poprawnie skompresowane.
  4. Żądania skanowania według kodu odpowiedzi: Idealne odzwierciedlenie tego, co dzieje się w logach serwera. Widzisz procentowy udział kodów 200, 301, 304 czy 404.

Błędy crawlowania – jak reagować?

Podczas analizy raportu w GSC zwracaj szczególną uwagę na sekcję Stan hosta (Host status) na samej górze ekranu. Zielony ptaszek oznacza, że Google nie napotkało żadnych problemów technicznych z połączeniem. Jeśli jednak zobaczysz tam ostrzeżenia, oznacza to, że Twój crawl budget drastycznie ucierpiał z jednego z trzech powodów:

  • Pobieranie pliku robots.txt: Jeśli Twój serwer był przeciążony i podczas próby pobrania pliku robots.txt zwrócił błąd serii 5xx (Server Error), Googlebot całkowicie wstrzyma skanowanie całej witryny. Bot wychodzi z założenia, że skoro nie może przeczytać instrukcji bezpieczeństwa, bezpieczniej będzie nie dotykać żadnej podstrony.
  • Rozwiązywanie nazw w usłudze DNS: Serwery Google nie były w stanie przetłumaczyć Twojej nazwy domeny na adres IP serwera. To znak, że musisz zmienić dostawcę DNS na stabilniejsze rozwiązanie (np. darmowy Cloudflare).
  • Połączenie z serwerem: Bot napotkał przekroczenie czasu oczekiwania (timeout) lub serwer odrzucił połączenie. To bezpośredni sygnał do zmiany pakietu hostingowego na wydajniejszy.

Dbając o optymalną architekturę informacji, eliminując techniczny szum informacyjny i zapewniając serwerowi maksymalną prędkość działania, dajesz Googlebotowi szansę na błyskawiczne i bezbłędne przetworzenie tego, co w Twoim biznesie najważniejsze – stron, które zarabiają pieniądze.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *