Gids voor JavaScript-SEO: hoe Google JS-pagina's crawlt, rendert en indexeert, CSR versus SSR versus statisch renderen, waarom AI-crawlers JS-content vaak missen en hoe je dit test en oplost.

Vat dit artikel samen met AI
Kort samengevat: JavaScript-SEO zorgt ervoor dat content en links die door JavaScript worden gegenereerd, gecrawld, gerenderd en geïndexeerd kunnen worden. Google kan JavaScript renderen, maar in een aparte stap die vertraagd kan worden en die mislukt wanneer scripts worden geblokkeerd of een klik nodig hebben. Veel AI-crawlers voeren helemaal geen JavaScript uit. De veiligste opzet is server-side rendering of statische generatie, echte "a href"-links en de belangrijke content in de initiële HTML.
Moderne frameworks zoals React, Vue, Angular of Svelte bouwen pagina's in de browser. Dat is prima voor interactiviteit en riskant voor zichtbaarheid. JavaScript-SEO is het geheel van werkwijzen waarmee een JS-site leesbaar blijft voor zoekmachines en voor de AI's. Deze gids legt uit hoe Google JavaScript verwerkt, welke rendermethoden er zijn, wat de veelgemaakte fouten zijn en hoe je je pagina's test.
In drie fasen: crawlen, renderen, indexeren. Google Search Central beschrijft de pijplijn zo:
Het gevolg: alles wat in de ruwe HTML ontbreekt, hangt af van een geslaagde renderstap. Als een script mislukt, een time-out krijgt of door robots.txt wordt geblokkeerd, indexeert Google wat het eerder zag, en dat kan een lege schil zijn.
Het verschil is waar de HTML wordt opgebouwd: in de browser, op de server bij elk verzoek of één keer tijdens het bouwen.
| Rendermodus | Hoe het werkt | Impact op SEO |
|---|---|---|
| Client-side rendering (CSR) | De server stuurt minimale HTML; JavaScript bouwt de pagina in de browser | Grootste risico: content hangt af van renderen en is vaak onzichtbaar voor AI-crawlers |
| Server-side rendering (SSR) | De server bouwt bij elk verzoek volledige HTML, waarna JavaScript die hydrateert | Veilig: content en links in de eerste HTML |
| Statische generatie (SSG) | HTML wordt tijdens het bouwen gegenereerd en als bestanden geserveerd | Het veiligst en snelst voor contentpagina's |
| Hybride (SSR of SSG plus islands) | Statische of server-HTML, JavaScript alleen voor interactieve onderdelen | Goede balans voor de meeste sites |
| Dynamic rendering | Bots krijgen een vooraf gerenderde versie, gebruikers de JS-app | Noodoplossing die Google niet meer aanbeveelt |
Frameworks zoals Next.js, Nuxt, SvelteKit of Astro maken SSR en statische generatie de standaard voor contentpagina's. Voor een blog, documentatie of productpagina's is er zelden een reden om content alleen in de browser te renderen.
De meeste problemen komen voort uit content of links die pas na een interactie bestaan.
Omdat de meeste AI-crawlers alleen de ruwe HTML lezen. Analyses van crawlerlogs, zoals de studie van Vercel uit 2024 naar het verkeer van AI-crawlers, lieten zien dat de bots van OpenAI en Anthropic JavaScript-bestanden ophalen maar niet uitvoeren. Een pagina waarvan de tekst pas verschijnt nadat JavaScript is uitgevoerd, kan er leeg uitzien voor de systemen die ChatGPT, Claude of Perplexity voeden, ook als Google de pagina correct indexeert.
Als geciteerd worden door de AI's voor jou belangrijk is, zet het hoofdantwoord, de koppen, tabellen en links dan in de server-HTML en controleer of je robots.txt de AI-crawlers toelaat die je wilt. In onze gids over robots.txt voor AI-crawlers staan de belangrijkste bots en de audit van AI-crawlbaarheid laat zien wat ze op je pagina's kunnen lezen.
Vergelijk de ruwe HTML met wat Google rendert.
Zes regels dekken de meeste gevallen:
JavaScript en SEO werken samen wanneer de content niet van JavaScript afhangt om te bestaan. Render contentpagina's op de server of tijdens het bouwen, houd links echt en test wat Google en de AI's daadwerkelijk zien. Sorank publiceert zijn artikelen als schone HTML rechtstreeks in je CMS, met interne links en gestructureerde data, op autopilot: bekijk de abonnementen en de gratis proefperiode van 3 dagen.

Ja. Google rendert pagina's met een recente versie van Chromium en kan dus content zien die door JavaScript is toegevoegd. Het renderen gebeurt na het crawlen, soms met vertraging, en mislukt als scripts worden geblokkeerd, te traag zijn of afhangen van acties van gebruikers. Content die in de initiële HTML staat is altijd de veiligste optie.
Niet automatisch, maar het brengt wel risico met zich mee. Bij client-side rendering is de eerste HTML bijna leeg, dus moeten zoekmachines JavaScript uitvoeren om de content te zien, en veel AI-crawlers doen dat niet. Server-side rendering of statische generatie leveren de content direct en voorkomen deze problemen.
De meeste doen dat op dit moment niet. Analyses van crawlerlogs, zoals die welke Vercel in 2024 publiceerde, lieten zien dat de crawlers van OpenAI en Anthropic JavaScript-bestanden downloaden zonder ze uit te voeren. Content die pas verschijnt nadat JavaScript is uitgevoerd, is dus vaak onzichtbaar voor ChatGPT, Claude en vergelijkbare assistenten.
ZIJ PROBEERDEN SORANK VOOR JOU
