# Technische SEO-checklist voor SaaS-websites

<https://www.fixreports.com/nl/blog/technical-seo-checklist-saas>

Bijgewerkt op 2026-10-26

Technische SEO voor een SaaS-bedrijf draait vooral om scheiding en rendering. Scheiding, omdat één domein meestal een marketingsite bevat die moet ranken, documentatie die moet ranken en een applicatie die helemaal niet in de zoekresultaten hoort. Rendering, omdat SaaS-sites vaak als JavaScript-apps zijn gebouwd, en hoewel Google JavaScript rendert, doen veel andere crawlers dat niet, waaronder de meeste AI-crawlers. Deze checklist behandelt beide, plus de gebruikelijke basis: canonicals, sitemaps, gestructureerde data, snelheid en hoe AI-zoekmachines je pagina’s bereiken.

**De belangrijkste punten**

- Google crawlt, rendert en indexeert JavaScript-pagina’s in afzonderlijke fasen en zegt over server-side rendering of pre-rendering dat het “is still a great idea” (nog steeds een heel goed idee is), omdat niet alle bots JavaScript kunnen uitvoeren ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics)).
- Een analyse uit december 2024 vond dat geen van de grote AI-crawlers, waaronder GPTBot, ClaudeBot en PerplexityBot, JavaScript renderde ([Vercel](https://vercel.com/blog/the-rise-of-the-ai-crawler)).
- Google zegt dat AI-overzichten en AI-modus geen extra technische vereisten hebben en geen speciale schema.org-markup of AI-tekstbestanden nodig hebben ([Google Search Central](https://developers.google.com/search/docs/appearance/ai-features)).
- OpenAI gebruikt OAI-SearchBot voor ChatGPT search en GPTBot voor het trainen van modellen; GPTBot blokkeren haalt een site niet uit ChatGPT search ([OpenAI](https://developers.openai.com/api/docs/bots)).
- Google-Extended bepaalt of Google content mag gebruiken voor het trainen van Gemini en heeft geen invloed op opname in Google Zoeken ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/google-common-crawlers)).

## Hoort je app in de zoekresultaten?

Nee. Applicatiepagina’s achter een login hebben zoekers niets te bieden, en Googlebot logt niet in. Het risico zit juist andersom: openbare URL’s uit de app, zoals gedeelde links, lege staten, pagina’s om een wachtwoord te resetten en stagingomgevingen, kunnen in de index belanden en concurreren met je marketingpagina’s.

- Draai de applicatie op een eigen host, zoals `app.example.com`, en stuur bij elke respons daarvandaan `X-Robots-Tag: noindex` mee.
- Houd staging- en previewomgevingen uit de zoekresultaten met authenticatie; dat is betrouwbaarder dan robotsregels.
- Vertrouw niet op robots.txt om pagina’s uit Google te verwijderen: een geblokkeerde URL kan toch worden vermeld als er elders naar wordt gelinkt, en Google kan een noindex niet zien op een pagina die het niet mag crawlen ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/block-indexing)).
- Op inlog- en aanmeldpagina’s wordt vaak op naam gezocht (“jouwproduct login”). Als ze indexeerbaar blijven, vinden bestaande klanten ze makkelijker; zware marketingcontent hoort er niet op.

Onze [robots.txt-checker](/nl/robots-txt-checker) laat zien wat elke crawler mag ophalen, en de [metatag-checker](/nl/meta-tag-checker) toont de robots-metatag en de X-Robots-Tag-header van een pagina.

## Kunnen zoekmachines en AI-crawlers je marketingpagina’s lezen?

Controleer wat een crawler ontvangt voordat er JavaScript draait. Als de HTML-respons van je prijspagina geen prijzen en geen koppen bevat, alleen een script-tag, dan zien crawlers die geen JavaScript uitvoeren een lege pagina.

- **Google** rendert JavaScript met een recente versie van Chromium, maar rendering gebeurt in een wachtrij na het crawlen, en Google raadt server-side rendering of pre-rendering aan ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics)).
- **AI-crawlers**: de analyse van Vercel over het eigen netwerk vond dat de crawlers van OpenAI, Anthropic, Perplexity en Meta JavaScript-bestanden ophaalden maar niet uitvoerden; Gemini, dat de infrastructuur van Google gebruikt, en Applebot renderden de pagina’s wel ([Vercel](https://vercel.com/blog/the-rise-of-the-ai-crawler)).
- **Linkvoorbeelden** in chatapps en sociale netwerken lezen meestal alleen de HTML van de server, dus titels, beschrijvingen en Open Graph-tags moeten daarin staan.

De praktische oplossing is om marketingpagina’s, documentatie en de blog op de server of tijdens de build te renderen, wat frameworks zoals Next.js, Nuxt en Astro ondersteunen, en client-side rendering te bewaren voor de ingelogde applicatie. Een snelle test: haal je URL op met `curl`, of bekijk de paginabron in plaats van de geïnspecteerde DOM, en controleer of de tekst erin staat.

## Hoe moet de marketingsite zijn opgebouwd?

SaaS-kopers zoeken met intenties die je aan pagina’s kunt koppelen. Elk daarvan verdient een eigen indexeerbare pagina met een beschrijvende titel en een eigen canonieke URL:

- **Product- en functiepagina’s**, één per belangrijke functionaliteit.
- **Pagina’s per toepassing en branche**, voor zoekopdrachten als “factuursoftware voor bureaus”.
- **Integratiepagina’s**, één per integratie, omdat mensen zoeken op “[jouw product] + [hun tool]”.
- **Prijzen**, met de abonnementen en prijzen in de HTML, niet na het renderen uit een API geladen.
- **Vergelijkings- en alternatievenpagina’s**, eerlijk geschreven: prijzen en functies van concurrenten veranderen, dus zet er een datum bij en houd ze actueel.
- **Klantverhalen**, met toestemming en met echte, herleidbare details.

Vermijd dunne varianten: tientallen bijna identieke pagina’s van het type “[functie] voor [branche]” met verwisselde woorden zijn wat het spambeleid van Google misbruik van geschaalde content noemt ([Google Search Central](https://developers.google.com/search/docs/essentials/spam-policies)).

## Hoe ga je om met documentatie, helpcenters en changelogs?

Documentatie levert vaak meer zoekverkeer op dan de marketingsite, omdat mensen zoeken hoe ze iets moeten doen.

- Maak documentatie openbaar en indexeerbaar, tenzij die klantspecifieke informatie bevat.
- Laat bij documentatie met versies de canonical van oudere versies verwijzen naar de huidige versie van dezelfde pagina, of zet oude versies op noindex, zodat de zoekresultaten de actuele instructies tonen.
- Geef elke documentatiepagina een beschrijvende titel en H1 die aansluiten bij hoe mensen de taak omschrijven (“Facturen exporteren naar CSV”), niet bij interne namen van functies.
- Houd changelogitems op stabiele, gedateerde URL’s.
- Neem documentatie op in je XML-sitemap, of geef haar een eigen sitemap die in robots.txt wordt vermeld.

Draait je helpcenter op een platform van een derde partij op een subdomein, controleer dan of het in Search Console is geverifieerd en of de pagina’s terug linken naar de hoofdsite.

## Welke problemen met canonicals, hreflang en redirects komen veel voor op SaaS-sites?

- **Parameters**: UTM-tags, verwijzingscodes en parameters van A/B-tests maken dubbele URL’s. Elke pagina moet haar eigen schone URL als canonical opgeven ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls)).
- **Slashes aan het eind en hoofdletters**: kies één vorm en stuur de andere met een 301 door.
- **Gelokaliseerde pagina’s**: als je de marketingsite vertaalt, koppel de taalversies dan met hreflang, inclusief een verwijzing naar de pagina zelf en een x-default ([Google Search Central](https://developers.google.com/search/docs/specialty/international/localized-versions)).
- **Rebrands en domeinverhuizingen**: koppel oude URL’s één op één aan nieuwe met 301-redirects; alles naar de homepage doorsturen kost je de waarde van de oude pagina’s.

De [SEO-check](/nl/website-seo-checker) test titels, H1’s, canonicals en robotsregels op de belangrijkste pagina’s van je site en vindt kapotte interne links.

## Welke gestructureerde data passen bij een SaaS-site?

- **Organization** op de homepage, met je naam, URL, logo en `sameAs`-links naar officiële profielen.
- **WebSite** op de homepage met `name` en `url`, wat Google gebruikt om de sitenaam in de resultaten te kiezen ([Google Search Central](https://developers.google.com/search/docs/appearance/site-names)).
- **SoftwareApplication**: het uitgebreide resultaat voor software-apps van Google vereist een prijs en een totaalbeoordeling of een review ([Google Search Central](https://developers.google.com/search/docs/appearance/structured-data/software-app)). Voeg alleen beoordelingen toe die echt zijn en op de pagina zichtbaar zijn; zonder beoordelingen beschrijft de markup het product nog steeds, maar levert hij geen uitgebreid resultaat op.
- **BreadcrumbList** op documentatie- en blogpagina’s.
- **Article** op blogposts, met auteur en datums.

Verwacht geen extra ruimte van FAQ-markup: Google stopte op 7 mei 2026 met het tonen van uitgebreide FAQ-resultaten ([Google Search Central](https://developers.google.com/search/updates)). De [checker voor gestructureerde data](/nl/structured-data-checker) toont elk item op een pagina en de eigenschappen die Google ervoor vereist.

## Waarom halen SaaS-marketingpagina’s de Core Web Vitals niet?

SaaS-marketingsites laden vaak veel scripts van derden: analytics, tagmanagers, chatwidgets, A/B-tests, sessie-opnames en advertentiepixels. Die vertragen de hoofdcontent en houden de main thread bezig, wat zich laat zien als een trage LCP en een slechte INP.

- Loop elk script van derden na en verwijder de scripts die niemand gebruikt.
- Laad chatwidgets pas bij interactie, en vermijd A/B-testscripts die de pagina verbergen tot ze zijn uitgevoerd.
- Lever hero-afbeeldingen en productscreenshots op hun weergavegrootte, in WebP of AVIF, zonder de eerste lazy te laden.
- Houd de INP in de gaten op pagina’s met interactieve prijscalculators en demo’s.

Google gebruikt Core Web Vitals in zijn rankingsystemen, al komt relevantie op de eerste plaats ([Google Search Central](https://developers.google.com/search/docs/appearance/core-web-vitals)). De [snelheidstest](/nl/website-speed-test) meet een pagina zoals een afgeremde telefoon die laadt en toont data van echte gebruikers als Google die heeft.

## Hoe vinden en citeren AI-zoekmachines SaaS-content?

Er is geen apart technisch spoor voor AI-zoeken, en sommige populaire adviezen worden niet ondersteund door de bedrijven die deze systemen draaien.

- **AI-overzichten en AI-modus van Google** gebruiken pagina’s die geïndexeerd zijn en in aanmerking komen voor een snippet; Google zegt dat er geen extra vereisten zijn, geen speciaal schema en geen AI-tekstbestanden nodig ([Google Search Central](https://developers.google.com/search/docs/appearance/ai-features)).
- **ChatGPT search** vertrouwt op OAI-SearchBot. Wil je in de antwoorden van ChatGPT verschijnen, blokkeer OAI-SearchBot dan niet in robots.txt; GPTBot blokkeren betekent alleen dat je je afmeldt voor training ([OpenAI](https://developers.openai.com/api/docs/bots)).
- **Training van Gemini** wordt geregeld met het token Google-Extended, dat geen invloed heeft op Google Zoeken ([Google Search Central](https://developers.google.com/search/docs/crawling-indexing/google-common-crawlers)).
- **llms.txt** is een voorstel uit de community voor een samenvatting van een site in Markdown. Google zegt zulke bestanden niet nodig te hebben; andere AI-diensten hebben niet gedocumenteerd of ze die gebruiken. Publiceren kost weinig, maar het is geen vervanging voor crawlbare pagina’s.

Wat bij alle systemen helpt, is hetzelfde: pagina’s die op de server worden gerenderd, duidelijke koppen die de vragen van kopers beantwoorden, concrete feiten zoals prijzen en limieten in de tekst, en pagina’s die elkaar niet tegenspreken.

## Veelgestelde vragen

### Moet onze documentatie op een subdomein of in een submap staan?

Beide kunnen ranken. Belangrijker is dat de documentatie crawlbaar is, vanaf de hoofdsite wordt gelinkt, in een sitemap staat en in Search Console is geverifieerd.

### Indexeert Google content in onze JavaScript-app?

Google kan JavaScript renderen, maar doet dat in een aparte stap, en andere crawlers doen het vaak niet. Render bij pagina’s die gevonden moeten worden de content op de server of tijdens de build.

### Moeten we AI-crawlers blokkeren?

Dat is een zakelijke beslissing. Trainingscrawlers zoals GPTBot of Google-Extended blokkeren houdt content buiten de modeltraining zonder dat je uit de zoekresultaten verdwijnt; zoekcrawlers zoals OAI-SearchBot blokkeren haalt je uit de antwoorden van die dienst. De robots.txt-checker laat zien wat je huidige regels toestaan.

### Hebben we SoftwareApplication-markup nodig?

Het is optioneel. Het beschrijft je product voor zoekmachines; het uitgebreide resultaat voor software-apps vereist daarnaast echte beoordelingen of reviews die op de pagina worden getoond.

### Wat is de meest voorkomende technische SEO-fout op SaaS-sites?

Twee fouten richten de meeste schade aan: marketingpagina’s die hun content alleen met JavaScript renderen, en staging- of app-URL’s die openstaan voor indexering.

## Bronnen

- Google Search Central: [De basisprincipes van JavaScript-SEO](https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics)
- Google Search Central: [AI-functies en je website](https://developers.google.com/search/docs/appearance/ai-features)
- Google Search Central: [Algemene crawlers van Google (Google-Extended)](https://developers.google.com/search/docs/crawling-indexing/google-common-crawlers)
- Google Search Central: [Indexering blokkeren met noindex](https://developers.google.com/search/docs/crawling-indexing/block-indexing)
- Google Search Central: [Een canonieke URL opgeven](https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls)
- Google Search Central: [Gelokaliseerde versies van je pagina’s](https://developers.google.com/search/docs/specialty/international/localized-versions)
- Google Search Central: [Sitenamen in Google Zoeken](https://developers.google.com/search/docs/appearance/site-names)
- Google Search Central: [Gestructureerde data voor software-apps](https://developers.google.com/search/docs/appearance/structured-data/software-app)
- Google Search Central: [Core Web Vitals en Google-zoekresultaten](https://developers.google.com/search/docs/appearance/core-web-vitals)
- OpenAI: [Overview of OpenAI Crawlers](https://developers.openai.com/api/docs/bots)
- Vercel: [The rise of the AI crawler](https://vercel.com/blog/the-rise-of-the-ai-crawler)
