Home › Blog › Vindbaar in Google en AI

Vindbaar in Google en AI

JavaScript en SEO: wat Google wel en niet uitvoert

JavaScript SEO uitgelegd: hoe Google je pagina's rendert, waar de wachtrij vertraagt en waarom AI-crawlers zoals GPTBot je content missen.

In het kort

  • Googlebot leest eerst de kale HTML en voert JavaScript pas later uit in een renderwachtrij.
  • AI-crawlers zoals GPTBot voeren doorgaans geen JavaScript uit en zien alleen de server-HTML.
  • Zet kerninhoud, links en metadata altijd in de eerste HTML-respons van je server.

Steeds meer sites laden menu's, producten en teksten via JavaScript in, en steeds meer eigenaren ontdekken dat een deel daarvan onvindbaar is. Na dit artikel weet je welke content risico loopt, hoe je in twee minuten test wat crawlers echt zien, en hoe je het oplost zonder je site om te bouwen.

Hoe Google JavaScript verwerkt: eerst HTML, dan de renderwachtrij

Googlebot verwerkt een pagina in drie stappen: crawlen, renderen en indexeren. Eerst haalt de crawler de HTML op zoals je server die verstuurt. Links en content die daarin staan, worden direct verwerkt. Daarna komt de pagina in een renderwachtrij: een aparte ronde waarin een actuele Chromium-versie de JavaScript uitvoert en de pagina opbouwt zoals een bezoeker hem ziet. Pas dan wordt content die via JavaScript verschijnt zichtbaar voor de index.

Die tweede ronde draait wanneer er capaciteit is. Google noemt geen vaste doorlooptijd: meestal volgt het renderen snel, maar het kan langer duren, zeker op grote sites. Alles wat pas na het renderen bestaat, denk aan tekst, links en structured data, loopt dus per definitie achter op alles wat al in de eerste HTML stond. Voor een blog die wekelijks publiceert maakt dat weinig uit. Voor een webshop met dagelijks wisselende voorraad en prijzen wel.

Deze content loopt het grootste risico

  • Client-side gerenderde pagina's: single page applications (React, Vue, Angular) die een vrijwel lege HTML versturen en alles in de browser opbouwen. De eerste crawlronde ziet dan letterlijk niets.
  • Dynamisch nageladen content: producten, prijzen, voorraadstatussen of reviews die via een API-call verschijnen nadat de pagina geladen is. Mislukt of vertraagt die call tijdens het renderen, dan ontbreekt de content in de index.
  • Content na interactie: tekst die pas verschijnt na een klik, muisbeweging of formulierkeuze. Googlebot klikt niet en voert geen handelingen uit; wat interactie vereist, blijft onzichtbaar.
  • Links zonder echte anchor: navigatie via <div onclick> of buttons in plaats van <a href>. Zulke links volgt geen enkele crawler, dus de achterliggende pagina's worden niet ontdekt.
  • Routing met een hekje: URL's zoals /#/producten worden niet als aparte pagina's gecrawld.

Content die wel in de HTML staat maar visueel verborgen is, zoals tabs en accordeons, is geen probleem: die tekst staat gewoon in de broncode en wordt geïndexeerd.

AI-crawlers voeren geen JavaScript uit

Voor Google is de renderwachtrij een vertraging. Voor AI-vindbaarheid is JavaScript vaak een muur. Crawlers zoals GPTBot (ChatGPT), ClaudeBot en PerplexityBot halen in de regel alleen de ruwe HTML op en voeren geen JavaScript uit. Staat je kerninhoud niet in die eerste respons, dan besta je voor deze systemen niet: geen bronvermelding in ChatGPT, geen citaat in Perplexity, geen plek in het antwoord.

Dat maakt server-side content in 2026 tot een direct GEO-argument. Nu AI Overviews en AI Mode een groeiend deel van de zoekresultaten vormen en assistenten steeds vaker live pagina's ophalen als bron, is de kale HTML-respons opnieuw het belangrijkste document van je site. Alles wat je uitsluitend client-side rendert, doet in dat kanaal simpelweg niet mee, hoe goed de content ook is.

Zo test je in twee minuten wat crawlers zien

  1. Bekijk de broncode. Open je pagina, kies "Paginabron weergeven" en zoek met Ctrl+F naar een zin uit je belangrijkste content. Staat die er niet in, dan verschijnt hij pas via JavaScript.
  2. Zet JavaScript uit. Schakel JavaScript uit in je browserinstellingen en herlaad de pagina. Wat je nu ziet, is grofweg wat GPTBot en andere AI-crawlers te zien krijgen.
  3. Gebruik de URL-inspectie in Search Console. Bekijk de gecrawlde pagina, de gerenderde HTML en de screenshot. Zo zie je wat Google na het renderen overhoudt, inclusief resources die geblokkeerd of mislukt zijn.

Liever niet alles zelf uitzoeken? In de gratis proefperiode van ViRank zie je de technische punten van je site, zoals snelheid, mobiele weergave, kapotte links en ontbrekende titels, op impact gesorteerd; deze JavaScript-check doe je het snelst zelf met de drie stappen hierboven.

Oplossingen: van WordPress-voordeel tot server-side rendering

Goed nieuws voor de meeste WordPress-sites: klassieke thema's en paginabuilders zoals Elementor leveren hun content server-side uit. De tekst staat gewoon in de HTML en dit hele probleem speelt er nauwelijks. Risico ontstaat vooral door onderdelen die content via JavaScript injecteren: reviewwidgets, voorraadcheckers, externe productfeeds en headless setups.

  • Kies plugins en widgets die HTML uitleveren. Test elke nieuwe widget met de broncode-check hierboven voordat hij live gaat, zeker als er unieke content in staat zoals reviews of specificaties.
  • Gebruik server-side rendering of static generation voor frameworks. Draai je toch op React of Vue, kies dan een setup als Next.js of Nuxt die de HTML op de server opbouwt. Het framework is niet het probleem, puur client-side renderen is dat wel.
  • Werk met progressive enhancement. Zet basiscontent, links en metadata in de HTML en gebruik JavaScript alleen als verrijking bovenop een werkende pagina.
  • Vermijd dynamic rendering als structurele oplossing. Een aparte voorgerenderde versie alleen voor bots beschouwt Google als tijdelijke workaround, met dubbel onderhoud en risico op verschillen tussen beide versies.

Veelgemaakte fouten met JavaScript en SEO

  • JavaScript- of CSS-bestanden blokkeren in robots.txt. Google kan de pagina dan niet renderen zoals bezoekers hem zien en mist mogelijk content en layout-signalen. Fix: geef crawlers toegang tot alle resources.
  • Canonical of meta robots via JavaScript aanpassen. De eerste HTML zegt dan A en de gerenderde versie B, met onvoorspelbare indexering als gevolg. Fix: zet deze tags server-side vast en wijzig ze nooit client-side.
  • Belangrijke navigatie als klik-elementen bouwen. Zonder echte <a href> volgt geen crawler de link en stroomt er geen linkwaarde door. Fix: elke belangrijke link krijgt een eigen URL in een echt anchor-element.
  • Lazy loading die content verstopt. Content die pas laadt bij scroll-events verschijnt niet, want Googlebot scrolt niet. Fix: gebruik native loading="lazy" voor afbeeldingen en een IntersectionObserver voor overige content.
  • Alleen testen met JavaScript aan. Jij ziet een complete pagina, crawlers vaak niet. Fix: maak de broncode-check en de test zonder JavaScript vast onderdeel van elke oplevering.

Meta-titels en meta-beschrijvingen hoef je niet handmatig bij te houden: Autopilot van ViRank houdt ze op orde in de SEO-velden van je website, met een momentopname per wijziging zodat je altijd terug kunt. Canonicals regel je in WordPress zelf.

Wat ViRank hierbij doet

Of je content ook zonder JavaScript leesbaar is, controleer je één keer handmatig en daarna nooit meer, tot een plugin-update het stilletjes breekt. Herhaal de broncode-check en de test zonder JavaScript daarom na elke grote plugin- of thema-update. De technische scan van ViRank controleert intussen de rest van je techniek, zoals snelheid, mobiele weergave, kapotte links en ontbrekende titels, sorteert wat hij vindt op impact en laat jou beslissen wat er op je WordPress-site wordt aangepast. Probeer ViRank 14 dagen gratis, zonder creditcard: na je eerste analyse zie je je Findability Score en je kansen.

Veelgestelde vragen

Is een framework zoals React of Vue slecht voor SEO?

Nee, het framework zelf niet. Het risico zit in puur client-side renderen, waarbij de server een lege HTML verstuurt. Moderne setups zoals Next.js en Nuxt bouwen de pagina op de server of vooraf op, waardoor crawlers gewoon volledige HTML ontvangen. Kies je zo'n aanpak, dan presteert een framework-site in de zoekresultaten niet anders dan een klassieke site.

Hoe lang duurt de renderwachtrij van Google?

Google noemt geen vaste termijn. Meestal volgt het renderen kort na het crawlen, maar het kan langer duren, afhankelijk van beschikbare capaciteit en de omvang van je site. Reken er daarom nooit op voor tijdkritische content zoals prijzen, voorraad of acties: zet die informatie in de eerste HTML-respons, dan is de wachtrij irrelevant.

Scrolt of klikt Googlebot op mijn pagina?

Nee. Googlebot voert geen interacties uit: geen klikken, geen formulieren, geen muisbewegingen. Wel rendert hij pagina's met een groot venster, waardoor content die netjes via een IntersectionObserver nageladen wordt meestal alsnog zichtbaar is. Content die aan scroll-events of kliks hangt, wordt daarentegen nooit gezien.

Moet ik een aparte HTML-versie voor AI-crawlers maken?

Nee, dat is dubbel onderhoud en het risico bestaat dat beide versies uit elkaar gaan lopen, wat op cloaking kan lijken. Serveer iedereen dezelfde server-side HTML met je volledige kerninhoud. Daarmee bedien je Google, Bing en AI-crawlers in één keer, zonder aparte infrastructuur of detectie van user-agents.

Bronnen en verder lezen

Bijgewerkt op 11 oktober 2026: overgezet naar de blog van ViVortis en de ViRank-feiten nagelopen. Eerste versie 15 augustus 2026.

Zac Bathi

Over de schrijver

Zac Bathi

Oprichter van ViVortis (sinds 2018). Bouwde met zijn team meer dan 700 websites en webshops en ontwikkelt ViRank en ViPayments. Schrijft over wat hij bij klanten ziet werken in websites, vindbaarheid en software.

Meer over vindbaar in Google en AI

Verder lezen

Alle artikelen
Vrijblijvend

Beter gevonden worden in Google en AI?

We meten wat je vindbaarheid oplevert en sturen elke maand bij, of je laat ViRank het werk doen. Begin met een gratis SEO-kansenscan voor Google en AI.

4,8 op Google

Offerte aanvragen

Liever een voorbeeld? Gratis voorbeeldwebsite