Cyber SEO: 50% korting
Voorkeuren

Jouw privacy is belangrijk voor ons, daarom kun je bepaalde soorten opslag uitschakelen die niet nodig zijn voor de basiswerking van de website. Het blokkeren van categorieën kan invloed hebben op je ervaring op de website. Meer informatie (Cookiebeleid)

Alle cookies accepteren

React SEO: rendering, metadata en links voor een React-app die scoort

React SEO-gids: waarom client-side rendering indexering vertraagt, wanneer u kiest voor SSR of prerendering, hoe meta-tags werken in React 19 en hoe AI uw site leest.

Gepubliceerd op
25/10/2026
Bijgewerkt op
25/10/2026
Leestijd
7 min
Sorank-screenshot met een witte kaart met het label Technical SEO en de tekst 'React SEO', over een chatvenster van de SEO-assistent

Tools

Op deze pagina

Kort gezegd

React kan scoren in Google, maar een standaard single page app stuurt een bijna leeg HTML-bestand en heeft JavaScript nodig om content te tonen. Dat vertraagt de indexering en verbergt de pagina voor de meeste AI-crawlers. De betrouwbare oplossing is HTML vanaf de server: statische pagina's tijdens de build prerenderen of een framework met server-rendering gebruiken (Next.js, React Router). Geef daarna elke URL een eigen titel, beschrijving en canonical, gebruik echte links en statuscodes, en controleer wat bots ontvangen.

Wil je verder gaan? Vraag het aan

Korte quiz

Is SEO iets voor jou, en hoe begin je?

Vraag 1 van 425%
Zoeken mensen in Google naar wat je verkoopt?

React SEO is het werk om een React-applicatie crawlbaar, indexeerbaar en begrijpelijk te maken voor zoekmachines en AI-assistenten. React zelf is neutraal: de problemen ontstaan wanneer alles in de browser wordt gerenderd. Google bevestigt in de basisprincipes van JavaScript-SEO dat JavaScript-apps in drie fasen worden verwerkt (crawlen, renderen, indexeren) en dat server-side rendering of prerendering "nog steeds een goed idee is, omdat uw site sneller wordt voor gebruikers en crawlers, en niet alle bots JavaScript kunnen uitvoeren".

Waarom is React lastig voor SEO?

Een React-app die als single page application is gebouwd, levert een HTML-bestand met weinig meer dan een lege root-div en een script-tag. De browser downloadt het JavaScript, voert het uit en bouwt de pagina op. Een crawler die alleen de HTML leest, ziet niets om te indexeren: geen koppen, geen tekst, geen links.

Googlebot voert wel JavaScript uit, maar in een aparte stap: de pagina wordt gecrawld, in de renderwachtrij gezet, in een headless Chromium gerenderd, en pas daarna worden de gerenderde links en content gebruikt. Elke extra stap is een kans op fouten (een scriptfout, een geblokkeerde API, een time-out) en zorgt voor vertraging voordat nieuwe pagina's in de zoekresultaten verschijnen. Onze gids over JavaScript-SEO beschrijft dit proces, en ons artikel over Google-indexering legt uit hoe pagina's sneller geïndexeerd worden.

Andere bots zijn minder geduldig. De analyse van Vercel uit december 2024, The rise of the AI crawler, stelde vast dat "geen van de grote AI-crawlers momenteel JavaScript rendert" en noemde GPTBot, ChatGPT-User, OAI-SearchBot, ClaudeBot en PerplexityBot. Een client-side gerenderde React-pagina is onzichtbaar voor ChatGPT, Claude en Perplexity, ook als Google haar indexeert.

Welke renderaanpak past bij een React-site?

Het React-team raadt inmiddels aan nieuwe apps met een framework te starten. Bij het stopzetten van Create React App op 14 februari 2025 schreef het in de aankondiging dat "server-rendering SEO kan verbeteren" en ook de prestaties verhoogt, omdat gebruikers minder JavaScript hoeven te downloaden voordat ze content zien. De opties, van zwakst naar sterkst voor zoekmachines:

AanpakWat bots ontvangenSEO-oordeelGangbare tools
Client-side rendering (SPA)Lege HTML, content na JavaScriptZwak: vertraagde indexering, onzichtbaar voor AI-crawlersVite + React, oude Create React App-projecten
Dynamische renderingGeprerenderde HTML alleen voor botsNoodoplossing, niet aanbevolen door GooglePrerenderdiensten, proxy's met headless browser
Statische prerendering tijdens de buildVolledige HTML voor elke bekende URLZeer goed voor content die weinig verandertPrerendering van React Router, static site generators, statische export van Next.js
Server-side renderingVolledige HTML bij elk verzoek, daarna hydratatieBeste voor grote of vaak bijgewerkte sitesNext.js, React Router (frameworkmodus, voorheen Remix)

Over dynamische rendering is de documentatie van Google duidelijk: het "was een noodoplossing en geen oplossing voor de lange termijn", en Google raadt in plaats daarvan server-side rendering, statische rendering of hydratatie aan. Kiest u een framework, dan behandelt onze gids over Next.js SEO rendermodi, de Metadata API en sitemaps in detail.

Is migreren niet mogelijk, dan kan Google een single page app met wat zorg toch indexeren. Onze gids over SEO voor single page applications noemt de voorwaarden; de rest van dit artikel geldt voor beide situaties.

Hoe stelt u titels en meta-tags in React in?

Sinds React 19 (stabiel sinds 5 december 2024) kunnen componenten title-, meta- en link-tags direct renderen, en React verplaatst ze naar de head van het document. De release notes van React 19 vermelden dat deze ingebouwde ondersteuning werkt "met client-only apps, streaming SSR en Server Components". Vóór React 19 deden bibliotheken als react-helmet of react-helmet-async dit werk, en ze blijven nuttig om standaardwaarden per route te overschrijven.

function ProductPage({ product }) {
  return (
    <>
      <title>{`${product.name} | Shop`}</title>
      <meta name="description" content={product.summary} />
      <link rel="canonical" href={`https://example.com/p/${product.slug}`} />
      <h1>{product.name}</h1>
    </>
  )
}

Drie regels gelden ongeacht de methode:

  • Eén titel per pagina, uniek en beschrijvend. De React-documentatie waarschuwt dat als meerdere componenten tegelijk een titel renderen, "het gedrag van browsers en zoekmachines ongedefinieerd is". Geef één string mee (een template literal), geen mix van tekst en variabelen.
  • Eén beschrijving en één canonical per URL, gegenereerd uit de paginadata. Een meta-tags-generator helpt bij het opstellen, en een canonical-checker bevestigt wat live staat.
  • Open Graph-tags in de initiële HTML voor pagina's die gedeeld worden, want bots voor linkvoorbeelden lezen doorgaans de ruwe HTML.

Let op

In een client-only app bestaan tags die React rendert pas nadat JavaScript is uitgevoerd. Google kan ze na het renderen lezen; AI-crawlers en de meeste previewbots van sociale netwerken niet. Server-rendering of prerendering zet ze voor iedereen in de HTML-respons.

Welke routing- en linkfouten blokkeren indexering?

Google stelt dat het "uw links alleen kan ontdekken als het HTML-elementen a met een href-attribuut zijn" en raadt af URL-fragmenten te gebruiken om verschillende content te laden. De meeste React SEO-problemen zitten in routingdetails:

FoutEffectOplossing
Navigatie met onClick op een div of knopGoogle vindt geen link om te volgenDe Link-component van de router gebruiken, die een a met href rendert
Hashroutes (/#/producten)Alle pagina's delen voor Google één URLHistory-gebaseerde routes (/producten) gebruiken met BrowserRouter of een framework
Een "niet gevonden"-weergave met status 200"Soft 404" in Search ConsoleEen echte 404 vanaf de server teruggeven, of in een pure SPA noindex via JavaScript toevoegen
Alleen client-side redirectsTrage of gemiste redirectsServer-redirects 301 of 308 gebruiken voor verplaatste pagina's
Content die pas bij klikken of scrollen laadtTekst wordt nooit gerenderd voor de crawlerHoofdcontent bij het laden renderen; lijsten pagineren met echte URL's
JavaScript of API geblokkeerd in robots.txtGoogle rendert een lege paginaDe scripts en API-endpoints toestaan die de pagina nodig heeft

Om te zien wat Google rendert, gebruikt u de URL-inspectietool in Search Console en bekijkt u de HTML van de geteste pagina, of haalt u belangrijke paginasjablonen door een indexeerbaarheidschecker.

Hoe gaat u in React om met sitemaps en gestructureerde data?

React heeft geen ingebouwde sitemap. Genereer sitemap.xml tijdens de build uit uw routes en data (of met de sitemapfunctie van uw framework), neem alleen canonieke URL's op die 200 teruggeven, en verwijs ernaar in robots.txt. Voor een kleine statische site volstaat een XML-sitemapgenerator.

Gestructureerde data volgt dezelfde regel als metadata: render het JSON-LD-script met de pagina, uit dezelfde data, bij voorkeur op de server. Google kan JSON-LD lezen dat na het renderen via JavaScript is ingevoegd, maar markup die in de initiële HTML ontbreekt, ontbreekt ook voor crawlers die niet renderen. Gebruik Article voor berichten, Product voor e-commerce, Organization sitebreed en BreadcrumbList voor diepe pagina's.

Tip

Voer curl uit op een pagina-URL en zoek in de uitvoer naar de H1 en een zin uit de tekst. Ontbreken ze, dan indexeert Google de pagina misschien na het renderen, maar AI-crawlers zien niets.

Hoe beïnvloeden prestaties React SEO?

Grote JavaScript-bundels schaden de Core Web Vitals: de browser moet code downloaden, parsen en hydrateren voordat de pagina reageert, wat drukt op Largest Contentful Paint en Interaction to Next Paint, vooral op mobiel. De aankondiging van het React-team over Create React App wijst erop dat server-rendering minder JavaScript en een volledig HTML-document stuurt, wat de First Contentful Paint versnelt en INP kan verlagen. Praktische hefbomen: code per route splitsen met React.lazy, afbeeldingen met expliciete afmetingen leveren, componenten onder de vouw lazy laden en scripts van derden doorlichten.

Wat hoort er op een React SEO-checklist?

  1. Elke indexeerbare URL geeft volledige HTML terug (server-rendering of prerendering), gecontroleerd met curl.
  2. Een unieke titel, beschrijving en naar zichzelf verwijzende canonical per URL.
  3. History-gebaseerde routes, geen hash-URL's, en elke interne link gerenderd als a met href.
  4. Echte statuscodes: 404 voor ontbrekende pagina's, 301 of 308 voor verplaatste pagina's.
  5. Een sitemap.xml uit dezelfde data als de routes, vermeld in robots.txt.
  6. JSON-LD gerenderd met de pagina en gevalideerd met de test voor uitgebreide resultaten.
  7. Scripts, stijlen en API's die nodig zijn voor het renderen toegestaan in robots.txt.
  8. Code per route gesplitst en Core Web Vitals gemonitord bij echte gebruikers.

Hoe wordt een React-site zichtbaar in AI-antwoorden?

GEO (generative engine optimization) begint bij toegang. Omdat AI-crawlers ruwe HTML ophalen, moet een React-pagina tekst, koppen en JSON-LD zonder JavaScript leveren om gelezen, samengevat en geciteerd te worden. Een AI-crawlbaarheidsaudit laat zien wat deze bots van uw pagina's ontvangen. De tweede voorwaarde is content die het citeren waard is: pagina's die per sectie één vraag beantwoorden, met bronnen, cijfers en heldere definities.

Dat contentdeel automatiseert Sorank, ons product. Sorank is SEO- en GEO-software op autopilot: de Blogartikelgenerator schrijft en publiceert 20, 60 of 120 artikelen per maand met bronnen, interne links en afbeeldingen, en koppelt via een webhook met maatwerkstacks zoals een React- of Next.js-site. SEO Chat beantwoordt in een gesprek vragen over de zoekprestaties van uw site.

SEO Chat-assistent van Sorank die in een gesprek een vraag over de zoekprestaties van een site beantwoordt

Samengevat: lever HTML vanaf de server, geef elke URL een eigen titel, beschrijving en canonical, en gebruik echte links. Dan scoort React zoals elke andere site en kunnen AI-assistenten haar lezen. Om die site doorlopend te voorzien van artikelen voor Google en AI, bekijk de abonnementen van Sorank, vanaf $49 per maand met 3 dagen gratis proberen.

Veelgestelde vragen

Is React slecht voor SEO?

Nee. React is een bibliotheek voor gebruikersinterfaces, en de SEO hangt af van hoe pagina's worden gerenderd. Een client-side gerenderde single page app stuurt lege HTML en leunt op de renderstap van Google, wat indexering vertraagt en content verbergt voor AI-crawlers. Dezelfde React-code met server-rendering of statische prerendering scoort als een klassieke website.

Indexeert Google React-websites?

Ja. Googlebot voert JavaScript uit met een recente versie van Chromium en kan dus content indexeren die een React-app in de browser opbouwt. Het renderen gebeurt na het crawlen en kan vertraagd raken of mislukken als scripts fouten geven of API's geblokkeerd zijn. De URL-inspectietool in Search Console toont de gerenderde HTML zoals Google die ziet.

Heb ik met React 19 nog React Helmet nodig?

Niet voor eenvoudige gevallen. React 19 rendert title-, meta- en link-tags vanuit elke component en verplaatst ze naar de head van het document. Bibliotheken als react-helmet-async blijven nuttig wanneer u sitebrede standaardwaarden per route wilt overschrijven of oudere React-versies moet ondersteunen.

Gratis SEO- en GEO-audit

Ontvang gratis je contentplan voor 30 dagen

We analyseren je concurrenten, je website en je AI-zichtbaarheid om gratis een contentplan op maat voor je te maken.

Onze gratis SEO-tools

Bekijk al onze gratis tools

Ontvang een gratis audit van je site

ZIJ PROBEERDEN SORANK VOOR JOU

Getuigenissen van ambitieuze oprichters

Organische groeiE-commerce

Van 0 naar 10000 bezoekers in 5 maanden

Celio Fabianomonrobotlavevitre.fr
Organische groeiSoftware

Van 0 naar 5000 klanten in 8 maanden

Thibault BMsorank.com
Organische groeiVrije tijd en luchtvaart

van 0 naar 1104 klikken in 4 maanden

Dominiqueflight-sensations-idf.com
Organische groeiLeadgeneratie voor installateurs

x98 klikken in 2 maanden

LeadBolt Agencyleadbolt.online
Organische groeiMuzieksoftware

x55 klikken in 5 maanden

Valentin Cordiertiger-sounds.com