Discussion Technical SEO JavaScript

Náš React SPA je pre AI crawlerov úplne neviditeľný – ako to vyriešiť?

RE
ReactDev_Marcus · Frontend Lead
· · 82 upvotes · 10 comments
RM
ReactDev_Marcus
Frontend Lead · January 9, 2026

Postavili sme našu stránku ako React SPA pred tromi rokmi. Skvelý užívateľský zážitok, rýchle interakcie.

Ale teraz zisťujeme, že AI crawlery nevidia nič. Keď kontrolujem serverové logy:

  • GPTBot dostane náš prázdny HTML shell
  • PerplexityBot to isté
  • Všetok reálny obsah sa načítava cez JavaScript

Problém:

  • Nulová AI viditeľnosť
  • Konkurenti s tradičnými stránkami sú citovaní
  • Máme skvelý obsah, ale AI k nemu nemá prístup

Náš aktuálny stack:

  • React 18 s React Routerom
  • Len klientské renderovanie
  • Načítavanie obsahu cez API
  • Routing na základe hashov (/#/page)

Otázky:

  1. Ako vážny je tento problém?
  2. Aká je najrýchlejšia oprava?
  3. Musíme stavať nanovo v Next.js?
  4. Existujú riešenia bez zásadného refaktoringu?

Nemôžeme si dovoliť kompletný rebuild, ale potrebujeme AI viditeľnosť.

10 comments

10 komentárov

TE
TechSEO_Expert_Sarah Expert Technical SEO Consultant · January 9, 2026

Toto je častý a vážny problém. Rozdelím to:

Ako fungujú AI crawlery:

Na rozdiel od Googlu (ktorý vie renderovať JavaScript) väčšina AI crawlerov NEDOKÁŽE:

  • GPTBot (OpenAI): Nevykonáva JavaScript
  • PerplexityBot: Nevykonáva JavaScript
  • ClaudeBot (Anthropic): Nevykonáva JavaScript

Vidia IBA váš počiatočný HTML. Pri SPA je to zvyčajne:

<div id="root"></div>
<script src="bundle.js"></script>

Nulový obsah = nulová AI viditeľnosť.

Dobrá správa: Nemusíte nutne prerábať celý web. Existujú riešenia aj pre existujúce SPA.

RM
RenderingOptions_Mike · January 9, 2026
Replying to TechSEO_Expert_Sarah

Vaše možnosti od najrýchlejšej po najkomplexnejšiu:

Možnosť 1: Prerenderingová služba (najrýchlejšia)

  • Služby ako Prerender.io, Rendertron
  • Deteguje user-agenty crawlerov
  • Podáva cachovaný HTML crawlerom
  • Nie sú potrebné zmeny v kóde
  • Implementácia: hodiny

Možnosť 2: Dynamické renderovanie

  • Podáva rôzny obsah podľa user-agenta
  • SPA pre užívateľov, statický HTML pre crawlery
  • Implementácia cez middleware
  • Implementácia: dni

Možnosť 3: SSR migrácia (najlepšia dlhodobo)

  • Migrácia na Next.js/Remix
  • Plné server-side renderovanie
  • Najlepšie pre AI aj klasické SEO
  • Implementácia: týždne až mesiace

Odporúčanie:

Začnite s prerenderingom TERAZ pre okamžitú viditeľnosť. Plánujte SSR migráciu dlhodobo, ak máte zdroje.

RiešenieČas implementácieZložitosťAI viditeľnosť
PrerenderingHodinyNízkaDobrá
Dynamické renderovanieDniStrednáDobrá
SSR (Next.js)Týždne-mesiaceVysokáVýborná
PE
PrerenderPro_Emma DevOps Engineer · January 9, 2026

Detaily implementácie prerenderingu:

Ako to funguje:

  1. Detekcia user-agenta na edge/serveri
  2. Ak je detegovaný AI crawler, presmeruje na cachovaný HTML
  3. Ak je bežný užívateľ, podáva normálne SPA

Rýchle nasadenie s Prerender.io:

// Express middleware
const prerender = require('prerender-node');
app.use(prerender.set('prerenderToken', 'YOUR_TOKEN'));

Bot patterny na obslúženie:

User-agent: GPTBot
User-agent: PerplexityBot
User-agent: ClaudeBot
User-agent: ChatGPT-User
User-agent: Googlebot

Výsledky, ktoré sme zaznamenali:

  • Indexácia stúpla z <25% na ~80% stránok
  • AI viditeľnosť do 2-3 týždňov po nasadení
  • Žiadny dopad na užívateľský zážitok

Cena: Väčšina prerendering služieb stojí 15-100 $/mesiac podľa návštevnosti.

Toto je najrýchlejšia cesta k AI viditeľnosti.

RM
ReactDev_Marcus OP Frontend Lead · January 9, 2026

Prerendering znie ako rýchle víťazstvo, ktoré potrebujeme.

Otázka: Spomenuli ste, že naše hash-based URL sú problém. Ako kritické je to riešiť?

UT
URLStructure_Tom Expert · January 8, 2026

Hash URL sú VÁŽNY problém:

Ako crawlery vnímajú hash URL:

  • Vaša URL: example.com/#/products/shoes
  • Čo crawler vidí: example.com/
  • Všetky hash routy = rovnaká stránka pre crawlery

Riešenie – použite History API:

// Predtým (hash routing)
<Route path="/#/products/:id" />

// Potom (browser history)
<Route path="/products/:id" />

// Nastavenie React Routera
<BrowserRouter>
  <Routes>
    <Route path="/products/:id" element={<Product />} />
  </Routes>
</BrowserRouter>

Potrebná serverová konfigurácia:

# nginx – podávať index.html pre všetky routy
location / {
    try_files $uri $uri/ /index.html;
}

Priorita: Toto je ešte dôležitejšie ako prerendering. Hash URL znamenajú, že crawlery doslova nerozoznajú vaše stránky.

Najprv opravte URL, potom implementujte prerendering.

SC
SSRMigration_Chris · January 8, 2026

Ak zvažujete migráciu na Next.js časom:

Výhody SSR oproti prerenderingu:

  • Lepšie pre dynamický obsah
  • Žiadne problémy so zastaranou cache
  • Lepší výkon pri prvom načítaní
  • Lepšie Core Web Vitals
  • Budúca pripravenosť na AI

Migračný postup z React na Next.js:

  1. Začnite len s kľúčovými stránkami

    • Migrujte najnavštevovanejšie stránky ako prvé
    • Zvyšok webu nechajte ako SPA
    • Postupné zavádzanie
  2. Použite Next.js App Router

    • React Server Components
    • Zabudované renderovacie možnosti
    • Dobrá kompatibilita s Reactom
  3. Zachovajte štruktúru URL

    • Rovnaké routy, nové renderovanie
    • Bez narušenia SEO

Odhadovaný čas:

  • Jednoduchý web: 2-4 týždne
  • Stredná zložitosť: 4-8 týždňov
  • Veľký/komplexný: 2-4 mesiace

Nečakajte s rozhodnutím: Začnite s prerenderingom už teraz, plánujte migráciu súbežne.

SL
StructuredDataSPA_Lisa · January 8, 2026

Štruktúrované dáta v SPA:

Súčasný problém: Váš JSON-LD sa pravdepodobne načítava aj cez JavaScript.

Riešenie: Kritickú schému vložte priamo do počiatočného HTML:

<head>
  <script type="application/ld+json">
  {
    "@context": "https://schema.org",
    "@type": "Organization",
    "name": "Your Company",
    ...
  }
  </script>
</head>

Pre dynamické stránky: Prerendering by mal zachytiť schému, ak je správne implementovaný.

Otestujte schému:

  1. Pozrite si zdrojový kód stránky (nie Inspect)
  2. Skontrolujte, či schéma je v počiatočnom HTML
  3. Ak nie je viditeľná, crawlery ju nevidia

Štruktúrované dáta pomáhajú AI pochopiť váš obsah aj s prerenderingom.

RM
ReactDev_Marcus OP Frontend Lead · January 8, 2026

Náš plán implementácie:

1. týždeň: Rýchle opravy

  1. Migrácia z hash routovania na browser history
  2. Nastavenie servera pre SPA routing
  3. Presun kritických meta tagov do počiatočného HTML

2.–3. týždeň: Prerendering

  1. Implementácia Prerender.io
  2. Nastavenie pre AI crawler user-agenty
  3. Overenie správnosti cachovaných stránok
  4. Monitorovanie crawl logov

2. mesiac a ďalej: Zváženie SSR

  1. Vyhodnotenie komplexnosti migrácie na Next.js
  2. Pilot na 1–2 kľúčových stránkach
  3. Rozhodnutie o časovom pláne plnej migrácie

Monitoring:

  1. Kontrola serverových logov na prístup AI crawlerov
  2. Použitie Am I Cited na sledovanie AI viditeľnosti
  3. Testovanie AI dopytov na náš obsah

Takto budeme rýchlo viditeľní a zároveň plánujeme dlhodobé riešenie.

MD
MonitorCrawlers_Dan · January 7, 2026

Ako overiť, že AI crawlery vidia váš obsah:

Skontrolujte serverové logy na:

GPTBot - OpenAI
PerplexityBot - Perplexity
ClaudeBot - Anthropic
ChatGPT-User - ChatGPT browsing

Simulujte, čo crawlery vidia:

  1. Vypnite JavaScript v prehliadači
  2. Pozrite si vaše stránky
  3. Toto vidia crawlery

Po prerenderingu:

  • Skontrolujte, že crawlery dostávajú odpoveď 200
  • Overte, že HTML obsahuje skutočný obsah
  • Otestujte cez curl:
curl -H "User-Agent: GPTBot" https://yoursite.com/page

Sledujte frekvenciu crawlovania:

  • Monitorujte, ako často AI boty navštevujú stránky
  • Dobrá implementácia prerenderingu = častejšie crawlery
  • Overte, že všetky dôležité stránky sú cachované

Overenie crawlovania vám ukáže, či oprava fungovala.

CR
ContentStrategy_Rachel · January 7, 2026

Okrem renderovania – obsah je stále dôležitý:

Keď crawlery už vidia váš obsah:

  • Stále potrebujete AI-optimalizovanú štruktúru obsahu
  • Jasné nadpisy a odpovede
  • Implementáciu štruktúrovaných dát
  • Čerstvý, aktualizovaný obsah

Nezabudnite:

  • Renderovacie úpravy riešia iba PRÍSTUP
  • AI citovanie stále vyžaduje kvalitný obsah
  • Platí rovnaká optimalizačná logika

Render fix vás dostane do hry. Optimalizácia obsahu vám ju vyhrá.

Have a Question About This Topic?

Get personalized help from our team. We'll respond within 24 hours.

Frequently Asked Questions

Prečo AI crawlery nevidia obsah SPA?
Väčšina AI crawlerov nedokáže vykonať JavaScript. Keď navštívia SPA, vidia iba počiatočný HTML shell bez dynamicky načítaného obsahu. Keďže AI systémy nemajú plnohodnotné prehliadačové prostredie, nevedia spracovať JavaScriptové inštrukcie, ktoré renderujú skutočný obsah stránky.
Aké je najlepšie riešenie, aby boli SPA viditeľné pre AI?
Server-side rendering (SSR) je zlatý štandard. Frameworky ako Next.js, Nuxt.js a Remix renderujú kompletný HTML na serveri. Pre existujúce SPA môžu služby na prerendering (napr. Prerender.io) poskytovať statický HTML crawlerom bez zmeny vašej architektúry.
Funguje prerendering pre AI crawlery?
Áno, prerendering je veľmi efektívny. Generuje statické HTML snapshoty, ktoré sú prístupné AI crawlerom. Služby detegujú user-agenty crawlerov (GPTBot, PerplexityBot, ClaudeBot) a podávajú vopred vyrenderované verzie, zatiaľ čo bežní užívatelia majú SPA zážitok.
Ako ovplyvňuje štruktúra URL AI viditeľnosť SPA?
Hash fragmenty (#) v URL sú problémové – AI crawlery ich považujú za jednu stránku. Použite History API a pushState na tvorbu čistých URL ako /products/item-name namiesto /products#123. Každý pohľad potrebuje unikátnu, popisnú URL.

Sledujte AI viditeľnosť vášho SPA

Monitorujte, či AI crawlery vidia a citujú váš JavaScriptom renderovaný obsah naprieč AI platformami.

Zistiť viac