JavaScript SEO útmutató: hogyan térképezi fel, rendereli és indexeli a Google a JS-oldalakat, a CSR, az SSR és a statikus renderelés összehasonlítása, miért hagyják ki gyakran az AI-botok a JS-tartalmat, és hogyan teszteld és javítsd.

Ezen az oldalon
Röviden
A JavaScript SEO biztosítja, hogy a JavaScript által generált tartalom és linkek feltérképezhetők, renderelhetők és indexelhetők legyenek. A Google tud JavaScriptet renderelni, de ezt külön lépésben teszi, ami késhet, és elbukik, ha a szkripteket letiltják vagy kattintás kell hozzá. Sok AI-bot egyáltalán nem futtat JavaScriptet. A legbiztonságosabb felállás a szerveroldali renderelés vagy a statikus generálás, valódi „a href” linkek, és a fontos tartalom a kezdeti HTML-ben.
Szeretnél többet megtudni? Kérdezd meg
Gyors kvíz
Ki javítsa a weboldalad technikai oldalát?
Javaslatunk neked
Ellenőrizd magad, ingyenes Google-eszközökkel
A Search Console felsorolja azokat az oldalakat, amelyeket a Google nem tud beolvasni, a PageSpeed Insights pedig tesztel a sebességet. Sok kisebb problémát a weboldalkészítő beállításaiból lehet javítani.
Javaslatunk neked
Webfejlesztő
A problémád a kódban vagy a szerveren van: a SEO-t ismerő fejlesztő a megfelelő ember. Add neki a Search Console hibalistáját.
Javaslatunk neked
Technikai auditeszköz
A weboldalad sok oldalas: egy crawler úgy olvassa be mindet, ahogy a Google, és oldalanként teljes listát ad a javítandó hibákról.
Javaslatunk neked
Automatikus audit, utána tartalom
A weboldalad működik, de kevés látogatót hoz: a technikai problémák ritkán az okok. A Sorank átvizsgálja az oldalt, majd megírja azokat az oldalakat, amelyek forgalmat hoznak.
A React, Vue, Angular vagy Svelte típusú modern keretrendszerek a böngészőben építik fel az oldalakat. Ez nagyszerű az interaktivitás szempontjából, a láthatóság szempontjából viszont kockázatos. A JavaScript SEO azokat a gyakorlatokat jelenti, amelyek a JS-alapú oldalt olvashatóvá teszik a keresőmotorok és az AI-k számára. Ez az útmutató bemutatja, hogyan dolgozza fel a Google a JavaScriptet, a renderelési lehetőségeket, a gyakori hibákat, és azt, hogyan teszteld az oldalaidat.
Három szakaszban: feltérképezés, renderelés, indexelés. A Google Search Central így írja le a folyamatot:
Ebből az következik, hogy ami hiányzik a nyers HTML-ből, az a renderelési lépés sikerétől függ. Ha egy szkript hibázik, időtúllépésbe fut, vagy a robots.txt letiltja, a Google azt indexeli, amit addig látott, ami lehet egy üres váz.
Abban térnek el, hol épül fel a HTML: a böngészőben, a szerveren minden kérésnél, vagy egyszer, a build idején.
| Renderelési mód | Működés | SEO-hatás |
|---|---|---|
| Kliensoldali renderelés (CSR) | A szerver minimális HTML-t küld; a JavaScript építi fel az oldalt a böngészőben | Legnagyobb kockázat: a tartalom a rendereléstől függ, az AI-botok gyakran nem látják |
| Szerveroldali renderelés (SSR) | A szerver minden kérésre teljes HTML-t épít, majd a JavaScript hidratálja | Biztonságos: a tartalom és a linkek az első HTML-ben vannak |
| Statikus generálás (SSG) | A HTML build idején készül, és fájlként szolgálja ki | A legbiztonságosabb és leggyorsabb tartalmi oldalakhoz |
| Hibrid (SSR vagy SSG és szigetek) | Statikus vagy szerveroldali HTML, a JavaScript csak az interaktív részekhez | Jó egyensúly a legtöbb oldalnak |
| Dinamikus renderelés | A botok előrenderelt változatot kapnak, a felhasználók a JS-alkalmazást | Megkerülő megoldás, amelyet a Google már nem ajánl |
A Next.js, a Nuxt, a SvelteKit vagy az Astro alapértelmezetten SSR-t vagy statikus generálást használ a tartalmi oldalaknál. Blogra, dokumentációra vagy termékoldalakra ritkán van ok, hogy a tartalmat csak a böngészőben rendereljük.
A legtöbb probléma abból ered, hogy a tartalom vagy a linkek csak egy interakció után léteznek.
Mert a legtöbb AI-bot csak a nyers HTML-t olvassa. Az AI-botforgalomról készült naplóelemzések, például a Vercel 2024-es tanulmánya azt találták, hogy az OpenAI és az Anthropic botjai letöltik ugyan a JavaScript-fájlokat, de nem futtatják azokat. Az az oldal, amelynek szövege csak a JavaScript lefutása után jelenik meg, üresnek tűnhet a rendszereknek, amelyek a ChatGPT-t, a Claude-ot vagy a Perplexityt táplálják, még akkor is, ha a Google helyesen indexeli.
Ha fontos, hogy az AI-k idézzenek, tedd a fő választ, a címsorokat, a táblázatokat és a linkeket a szerveroldali HTML-be, és ellenőrizd, hogy a robots.txt beengedi a kívánt AI-botokat. A robots.txt AI-botoknak útmutatónk felsorolja a fő botokat, az AI-feltérképezhetőségi audit pedig megmutatja, mit olvashatnak az oldalaidon.
Hasonlítsd össze a nyers HTML-t azzal, amit a Google renderel.
Hat szabály fedi le a legtöbb esetet:
A JavaScript és a SEO akkor működik együtt, ha a tartalom nem függ attól, hogy a JavaScript létrehozza. Rendereld a tartalmi oldalakat szerveren vagy build idején, tartsd valódinak a linkeket, és teszteld, mit lát valójában a Google és az AI-k. A Sorank a cikkeket tiszta HTML-ként, belső linkekkel és strukturált adatokkal, közvetlenül a CMS-edbe publikálja, autopilot módban: nézd meg a csomagokat és a 3 napos ingyenes próbaidőszakot.

Igen. A Google a Chromium egy friss verziójával rendereli az oldalakat, így látja a JavaScript által hozzáadott tartalmat. A renderelés a feltérképezés után történik, néha késéssel, és elbukik, ha a szkriptek le vannak tiltva, túl lassúak, vagy felhasználói műveletektől függenek. A kezdeti HTML-ben lévő tartalom mindig a legbiztonságosabb választás.
Nem automatikusan, de növeli a kockázatot. Kliensoldali renderelésnél az első HTML szinte üres, ezért a keresőmotoroknak le kell futtatniuk a JavaScriptet, hogy lássák a tartalmat, sok AI-bot pedig ezt nem teszi meg. A szerveroldali renderelés vagy a statikus generálás közvetlenül kiszolgálja a tartalmat, és elkerüli ezeket a problémákat.
A legtöbb ma nem. A naplóelemzések, például a Vercel 2024-es elemzése szerint az OpenAI és az Anthropic botjai letöltik a JavaScript-fájlokat, de nem futtatják azokat. A JavaScript lefutása után megjelenő tartalom ezért gyakran láthatatlan a ChatGPT, a Claude és a hasonló asszisztensek számára.
A TE ELŐTTED PRÓBÁLTÁK KI A SORANKOT
