JavaScript en vindbaarheid: ziet de AI jouw tekst wel?
Jouw website ziet er in de browser prima uit: alle teksten staan er, netjes en compleet. Maar kunnen Google en AI-assistenten die teksten ook lezen? Niet automatisch. Veel moderne sites (denk aan Wix, Squarespace, Shopify of React) laden hun tekst via JavaScript, en dat maakt een groot verschil voor je vindbaarheid. In dit artikel leggen we in gewone taal uit wat er gebeurt en wat je eraan doet. Wil je meteen zien of jouw tekst zichtbaar is? Doe de gratis AI-keuring.
Wat is het probleem eigenlijk?
Stel je een gerecht voor dat nog gekookt moet worden. Alle ingrediënten liggen klaar, maar op tafel staat nog niets. Pas als iemand kookt, kun je proeven wat het wordt. JavaScript-content werkt net zo. De tekst zit wel in de code, maar hij verschijnt pas op je pagina nadat de bezoeker (of een computer) de JavaScript heeft uitgevoerd. Doet niemand dat, dan blijft de pagina zo goed als leeg.
In je eigen browser merk je hier niets van, want jouw browser kookt altijd netjes mee. De vraag die telt: doet een zoekmachine of AI dat ook? Sommige wel, sommige niet. En daar verliezen veel mkb-sites onbedoeld vindbaarheid.
Het helpt om twee dingen te scheiden. Er is de rauwe HTML: wat de server als eerste opstuurt, de kale basis. En er is de afgemaakte pagina: wat je in beeld ziet nadat de JavaScript alles heeft ingevuld.
Vergelijk het met een etalage die pas gevuld wordt nadat de klant al is weggelopen. Een voorbijganger die op het verkeerde moment langsloopt, ziet een lege etalage en denkt: hier is niets te halen. Terwijl de winkel binnen vol staat. Sommige robots zijn zulke voorbijgangers: ze pakken de rauwe HTML en lopen door, voordat de etalage gevuld is.
| Wat | Wanneer zichtbaar | Wie ziet dit? |
|---|---|---|
| Rauwe HTML | Meteen, zonder koken | Alle robots en AI-crawlers |
| JavaScript-tekst | Pas na uitvoeren van de code | Je browser, Google (later), lang niet alle AI |
Kan Google JavaScript wel lezen? Ja, maar met een omweg
Goed nieuws over Google: die is bereid om te koken. Google kan JavaScript verwerken, maar in stappen. Eerst haalt Google de rauwe pagina op (crawlen). Daarna zet hij de pagina in de render-wachtrij, waar een onzichtbare Chrome-browser de JavaScript uitvoert en de echte pagina samenstelt. Pas daarna wordt de volledige tekst geïndexeerd.
Denk aan een restaurant met één kok en een lange bonnenlijst. Jouw gerecht wordt wel gemaakt, maar niet meteen: het schuift aan in de rij. Zo werkt die render-wachtrij ook. Renderen kan vertraagd zijn en duurt langer dan gewoon crawlen. Je tekst kómt binnen bij Google, maar later dan bij een site die de tekst meteen kant-en-klaar opdient.
De eerlijke waarheid: veel AI-crawlers koken niet
Nu het stuk dat mkb'ers vaak verrast. Andere AI-crawlers voeren meestal geen JavaScript uit. De bots achter ChatGPT, Perplexity en Claude pakken doorgaans alleen de rauwe HTML. Ze koken niet mee. Staat jouw tekst alleen in de JavaScript, dan zien zij een zo goed als lege pagina, ook al staat er in de browser een compleet verhaal.
Dit is precies het verschil tussen kant-en-klaar opdienen en de klant laten koken. Google kookt (al is het later, in de wachtrij). De andere AI-bezoekers kijken alleen naar de rauwe ingrediënten op het aanrecht en lopen door naar de volgende site. Zij verwachten een klaar gerecht, geen bak met losse spullen.
Wat er in de browser mooi uitziet, is niet automatisch wat een AI-crawler te zien krijgt. Veel van hen lezen alleen de rauwe HTML, en daar staat jouw JavaScript-tekst niet in.
Het gevolg: juist nu steeds meer klanten hun vraag aan een AI stellen, is een JavaScript-zware site in het nadeel.
De oplossing: dien het gerecht kant-en-klaar op
Gelukkig is er een heldere oplossing, en Google raadt hem zelf aan. Zorg dat je tekst al in de rauwe HTML staat, nog voordat er iets gekookt hoeft te worden. Twee technieken doen dat voor je:
- Server-side rendering (SSR): de server maakt de pagina compleet klaar en stuurt de volledige tekst meteen mee. De bezoeker en elke robot krijgen het gerecht kant-en-klaar op tafel.
- Pre-rendering: je kookt de pagina's van tevoren één keer en bewaart het klaargemaakte resultaat, zodat elke bezoeker meteen een gevulde pagina krijgt.
Het effect is hetzelfde: de tekst staat direct in de HTML. Dat maakt crawlen makkelijker en sneller voor Google, en zorgt dat óók de AI-tools die niet koken jouw tekst gewoon kunnen lezen. Je serveert iedereen hetzelfde afgemaakte bord, in plaats van de helft met rauwe ingrediënten achter te laten.
Veelvoorkomende JavaScript-valkuilen
Naast de tekst zelf zijn er een paar bekende problemen die zoekmachines en AI in de war brengen. Je hoeft ze niet zelf op te lossen, maar het helpt om ze te benoemen richting je bouwer:
Routering met een hekje (#)
Sommige sites wisselen van pagina met een hekje in het adres, bijvoorbeeld jouwsite.nl/#/diensten. Zoekmachines zien wat achter het hekje staat vaak niet als een aparte pagina. Het is alsof alle kamers van je huis hetzelfde huisnummer delen: de post weet niet meer bij welke deur hij moet zijn.
Nep-foutpagina's (soft 404's)
Bij veel JavaScript-sites (single-page apps) toont een niet-bestaande pagina wel een nette 'niet gevonden'-tekst, maar meldt de server stiekem dat alles in orde is. De robot denkt dan dat een lege pagina echt is. Zorg voor echte HTTP-statuscodes: een 404 voor wat écht niet bestaat.
Lazy-loaded content
Tekst of afbeeldingen die pas laden als je naar beneden scrolt, worden soms niet meegepakt door een robot die niet scrolt. De onderkant van je etalage blijft dan onzichtbaar.
Verstopte tekst (shadow DOM)
Sommige bouwtechnieken stoppen content in een afgeschermd hoekje van de pagina dat lastig uit te lezen is. Voor de bezoeker is het zichtbaar, voor een crawler soms niet.
Hoe je dit zelf globaal test
Je kunt met een paar simpele checks een idee krijgen of jouw tekst in de rauwe HTML staat. Je hoeft er geen programmeur voor te zijn:
- De 'bron bekijken'-truc: klik met de rechtermuisknop op je pagina en kies 'paginabron weergeven'. Zoek (met Ctrl+F) een zin die op je site staat. Vind je die zin terug? Dan staat hij in de rauwe HTML. Vind je hem niet, dan komt hij waarschijnlijk pas via JavaScript.
- Google's URL-inspectie: in Google Search Console kun je een pagina laten controleren en zien hoe Google jouw pagina rendert.
- De Rich Results Test: Google's gratis testtool laat zien wat Google van je pagina kan uitlezen.
- De gratis AI-keuring: de gratis AI-keuring leest de directe HTML, net als veel AI-crawlers, en laat je zien of je belangrijkste tekst zichtbaar is.
Waarom AIkeuring soms een lage score geeft
Nu snap je ook waarom de keuring een JavaScript-zware site soms een lage score geeft, terwijl je site er prima uitziet. De keuring leest bewust de directe HTML, precies zoals veel AI-crawlers dat doen. Ziet de keuring een lege pagina, dan zien die crawlers dat waarschijnlijk ook.
Belangrijk: een lage score betekent dan meestal niet 'je hebt geen content', maar vaker 'je tekst laadt via JavaScript en is daardoor niet meteen zichtbaar'. Een geruststellend verschil, want de inhoud is er al. Het gaat er alleen om dat je die kant-en-klaar opdient in plaats van je bezoeker te laten koken.
Wil je precies weten of dit bij jou speelt en wat je websitebouwer eraan kan doen? De gratis AI-keuring laat het je in een paar minuten zien, met concrete verbeterpunten. Meer over de techniek lees je in technische basis voor vindbaarheid en over snelheid in Page Experience en Core Web Vitals.
Benieuwd hoe jóuw site scoort?
Doe de gratis AI-keuring — 60 seconden, geen e-mail nodig.
Veelgestelde vragen
Mijn site ziet er prima uit, waarom zou er dan een probleem zijn?+
Omdat jouw browser altijd de JavaScript uitvoert en de tekst voor je invult. Veel AI-crawlers doen dat niet: die lezen alleen de rauwe HTML. Staat je tekst pas na het uitvoeren van JavaScript op de pagina, dan zien zij een zo goed als lege pagina, hoe mooi je site in de browser ook oogt.
Kan Google mijn JavaScript-tekst echt niet lezen?+
Google kan het wel, maar met een omweg. Het crawlt eerst, zet je pagina in een render-wachtrij waar een onzichtbare browser de JavaScript uitvoert, en indexeert pas daarna. Dat duurt langer dan gewoon crawlen. Andere AI-crawlers zoals ChatGPT en Perplexity voeren die JavaScript meestal helemaal niet uit.
Wat is server-side rendering in gewone taal?+
Bij server-side rendering maakt de server de pagina compleet klaar en stuurt de volledige tekst meteen mee, zodat die direct in de HTML staat. Vergelijk het met een gerecht kant-en-klaar opdienen in plaats van de klant zelf te laten koken. Zo kunnen zowel Google als niet-Google AI-tools je tekst gewoon lezen.
Betekent een lage score dat ik geen content heb?+
Meestal niet. AIkeuring leest de directe HTML, net als veel AI-crawlers. Een lage score bij een JavaScript-zware site betekent vaak 'je tekst laadt via JavaScript en is niet meteen zichtbaar', niet 'je hebt geen content'. De inhoud is er, hij moet alleen kant-en-klaar in de HTML komen.
Wat vraag ik precies aan mijn websitebouwer?+
Vraag: 'Wordt onze belangrijkste tekst server-side gerenderd of vooraf klaargezet, zodat hij meteen in de rauwe HTML staat?' Vraag ook of titels, meta-omschrijvingen en de canonical-verwijzing direct in de HTML staan, en of niet-bestaande pagina's een echte 404 geven in plaats van een nep-foutpagina.