Co widzą crawlery AI – a czego nie
Wiele z tego, co w codziennym SEO uznaje się za oczywistość, jest niewidoczne dla modeli LLM w trybie konwersacyjnym. Nowe badanie Writesonic 2026 przeanalizowało sześć dużych crawlerów LLM (ChatGPT, Claude, Gemini-Conversation, Perplexity, Bing Copilot, Google AI Overviews) i potwierdziło: wszystkie treści muszą być dostarczane w taki sposób, aby pozostały zrozumiałe bez JavaScript, bez nadmiernego przewijania i bez metadanych w sekcji head.
Trzy poziomy crawlerów (HTML-only / Headless / Full-Browser)
Dla uporządkowania warto posłużyć się prostą klasyfikacją, w której dzisiejsze crawlery LLM plasują się zazwyczaj na poziomach 1–2:- Poziom 1: Parsery HTML-only – czytają statyczny HTML, podążają za linkami w ograniczonym zakresie, nie wykonują JavaScriptu, nie przewijają stron.
- Poziom 2: Headless Light – potrafią solidniej parsować HTML, uwzględniać poszczególne rozwiązania alternatywne (np.
- Poziom 3: Full-Browser – wykonują JavaScript oraz złożone renderowanie i przewijają strony. W badaniu dominowały jednak zachowania z poziomów 1–2.
Co wszystkie 6 LLM widzą niezawodnie — a czego nie
Testy Writesonic ujawniają wyraźne wzorce:- 3 z 6 LLM nie wykonuje kodu JavaScript. Treści JS-only (SPA, opinie wstrzykiwane po stronie klienta, treści typu lazy-load) pozostają niewidoczne.
- 0 z 6 LLM czyta JSON-LD w trybie konwersacji na żywo. Ważne: JSON-LD pozostaje istotny dla indeksu wyszukiwarki Google – to dwa różne światy.
- 0 z 6 LLM czyta Meta-Description lub tagi OG w trybie konwersacji.
- 5 z 6 LLM niezawodnie czyta tag
. Jest on zatem najważniejszym elementem sekcji head dla odczytu przez LLM. - 0 z 6 LLM przewija strony. Treści „below the fold” oraz leniwie ładowane (lazy-load) obrazy/bloki tekstu są ignorowane.
- 4 z 6 LLM czyta rozwiązania alternatywne
- Treści ukryte za pomocą CSS (np. display:none, akordeony) są widoczne; treści pseudo-elementów ::before/::after są niewidoczne.
- Mikrodane w sekcji body są czytane lepiej niż JSON-LD w sekcji head.
Tag Title to nowe złoto — praktyczna rekomendacja
Skoro 5 z 6 crawlerów niezawodnie czyta tytuł, staje się on kluczowym narzędziem. Rekomendacje:- Precyzyjny, gęsty informacyjnie, poniżej 60 znaków; unikaj pustych frazesów.
- Propozycja struktury: Temat prymarny | konkretna korzyść | marka.
- Różnicuj w zależności od typu strony (kategoria, produkt, poradnik), ale zachowaj spójną terminologię.
- Najsilniejsze pojęcia umieszczaj na początku; nazwę marki na końcu, chyba że istnieje silne zapytanie o brand.
- Synchronizuj semantycznie H1 i Title, unikając ślepego kopiowania: Title streszcza, H1 wyjaśnia.
JSON-LD nie umarł, ale Mikrodane wygrywają w odczycie LLM
Badanie pokazuje: w trybie konwersacyjnym JSON-LD nie jest czytany, natomiast mikrodane w body – jak najbardziej. Rekomendacja działania:- Zachowaj JSON-LD dla indeksu wyszukiwania (produkty, FAQ, organizacja, breadcrumbs).
- Powielaj krytyczne fakty dodatkowo jako mikrodane bezpośrednio w widocznej części body (ceny, dostępność, oceny), zachowując spójność treści z JSON-LD.
- Unikaj sprzeczności między danymi strukturalnymi a widocznym tekstem.
- Używaj semantycznych elementów HTML (article, header, nav, main, footer), aby przejrzyście ustrukturyzować zawartość body dla parserów.
Lazy Loading & Below-the-fold — niedoceniani zabójcy
Ponieważ 0 z 6 LLM przewija strony, mechanizmy lazy-load odcinają kluczowe treści od percepcji. Konsekwencje:- Umieszczaj główny przekaz, zalety produktu (USP), ceny i podstawowe wezwania do działania (CTA) powyżej pierwszej linii przewijania (viewport height).
- Ładuj obrazy typu hero i kluczowe treści tekstowe bez lazy-load (lub z serwerowym inline-fallback). Nie używaj czystego wstrzykiwania po stronie klienta dla głównych treści.
- Oferuj rozwiązania alternatywne
- Sprawdź aplikacje SPA i widgety z opiniami: bez renderowania po stronie serwera pozostają niewidoczne.
Co nasz audyt z tym robi
Rozszerzamy audyty techniczne o cztery ukierunkowane testy i umiarkowanie dostosowujemy wagę czynników:- title_tag_present: Sprawdza obecność, długość i precyzję tagu Title dla każdego adresu URL.
- lazy_loaded_main_content: Ostrzeżenie, gdy istotne treści są ładowane wyłącznie leniwie lub stają się widoczne dopiero po interakcji.
- noscript_fallback_present: Rejestruje, czy dla krytycznych obrazów/modułów tekstowych istnieje rozwiązanie alternatywne
- css_generated_critical_content: Zgłasza ryzyko, gdy istotne treści są generowane przez pseudo-elementy CSS (::before/::after).