Structured data (schema markup) toevoegen doe je in zes stappen: kijk wat je site al uitlevert, kies per paginatype één type dat Google ondersteunt, schrijf het als JSON-LD met alleen gegevens die zichtbaar op de pagina staan, genereer het uit dezelfde data als de pagina, test het met de Rich Results Test en bewaak het in Search Console.
Het levert geen hogere positie op. Wel maakt het je pagina geschikt voor rich results, zoals prijs en voorraad onder een product; dat zijn speciale weergaven in de zoekresultaten (SERP-features). En het vertelt zoekmachines ondubbelzinnig wie je bent.
Wat is structured data (schema markup)?
Structured data is code die beschrijft wát er op een pagina staat: een organisatie, een product, een artikel, een evenement. In Googles Nederlandse documentatie heet het gestructureerde gegevens (of gestructureerde data).
Schema markup is dezelfde code, genoemd naar de woordenlijst die je gebruikt: schema.org, opgezet door Google, Microsoft, Yahoo en Yandex. In de praktijk bedoelen mensen met structured data en schema markup hetzelfde. (In de datawereld betekent structured data iets anders: gegevens in vaste kolommen, zoals een spreadsheet.)
Wat is JSON-LD?
JSON-LD is een notatie voor gekoppelde gegevens op basis van JSON, sinds 2014 een W3C-standaard (de huidige versie 1.1 sinds juli 2020). Voor SEO is het een los scriptblok met type application/ld+json, gescheiden van je opmaak.
Google leest drie notaties: JSON-LD, Microdata en RDFa. Microdata en RDFa zijn attributen in je HTML-elementen. Google raadt JSON-LD aan: het is het makkelijkst te implementeren en op schaal te onderhouden, met minder kans op fouten. Alle drie de notaties werken even goed zolang de markup klopt.
Wat is een voorbeeld van structured data?
Een productpagina die in JSON-LD vertelt: dit is een product, met deze naam, deze prijs in euro en op voorraad. Google kan prijs en voorraad dan onder je zoekresultaat tonen.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Naam van je product",
"image": "https://www.jouwdomein.nl/product.jpg",
"offers": {
"@type": "Offer",
"price": "49.95",
"priceCurrency": "EUR",
"availability": "https://schema.org/InStock"
}
}
</script>Verderop staat een uitgebreider voorbeeld waarin je bedrijf en je artikelen samenhangen.
Rich snippets en rich results: wat het oplevert in 2026
Rich snippets is de oudere naam die je nog veel ziet; Google gebruikt in zijn documentatie de term rich results. Het gaat om hetzelfde: een zoekresultaat met extra's zoals prijs, datum of een afbeelding.
- Wel: geschiktheid voor rich results, zoals productprijzen, evenementen en vacatures.
- Wel: Google kan naam, logo, adres en btw-nummer eenduidig aan jouw bedrijf koppelen, bijvoorbeeld voor het logo in de zoekresultaten.
- Niet: een garantie. Google schrijft letterlijk dat correcte markup niet betekent dat een rich result ook verschijnt.
- Niet: een rankingtruc. Zelfs een handmatige actie voor misleidende markup kost je volgens Google alleen de rich results, niet je positie.
Wat een rich result kan opleveren, laat Google zien met cases in zijn inleiding tot structured data: Rotten Tomatoes mat 25% hogere CTR op pagina's met structured data, Nestlé 82% hogere CTR op pagina's met een rich result. Dit zijn door Google uitgekozen voorbeelden; meet het effect op je eigen site voordat je erop rekent.
Helpt structured data om in AI Overviews te komen?
Niet als aparte hefboom. Google zegt al sinds mei 2025 in zijn documentatie over AI-functies en herhaalt het in de gids voor generatieve AI-functies: structured data is niet nodig voor AI Overviews of AI Mode en er bestaat geen speciale AI-markup. Google raadt wel aan het te blijven gebruiken, omdat het je geschikt maakt voor rich results, en vraagt dat je markup klopt met de zichtbare tekst.
In juni 2026 zei Google hetzelfde over llms.txt (wijzigingslog, 15 juni 2026). Wat wel telt: je antwoord staat als gewone tekst op de pagina, in de HTML die de server uitlevert. Hoe je daarop bouwt, staat op onze pagina over vindbaar worden in AI-zoekmachines.
Wat Google heeft geschrapt (stand oktober 2026)
Veel handleidingen raden nog types aan die geen zichtbaar resultaat meer geven. Dit is de stand volgens Googles eigen wijzigingslog.
| Type | Wat er veranderde | Bron |
|---|---|---|
| FAQ (FAQPage) | Sinds augustus 2023 alleen nog bij gezaghebbende overheids- en zorgsites; sinds 7 mei 2026 helemaal niet meer in Google. De documentatie is op 15 juni 2026 verwijderd. | wijzigingslog, 8 mei 2026 |
| HowTo | Sinds 13 september 2023 niet meer getoond, ook niet op desktop. | Search Central, 2023 |
| Zoekvak in sitelinks | Sinds 21 november 2024 verdwenen. WebSite-markup voor je sitenaam blijft wel werken. | Search Central, 2024 |
| Kruimelpad | Sinds januari 2025 alleen nog op desktop; mobiel toont alleen het domein. | Search Central, 2025 |
| Zes minder gebruikte types | Course Info, Claim Review, Estimated Salary, Learning Video, Special Announcement en Vehicle Listing: uitgefaseerd vanaf juni 2025, sinds 9 september 2025 ook weg uit Search Console. | Search Central, 2025 |
| Oefenopgaven (Practice problem) | Uitfasering aangekondigd op 5 november 2025; sinds januari 2026 weg uit Search Console en de documentatie. | Search Central, 2025-2026 |
| Dataset | Sinds november 2025 alleen nog gebruikt voor Google Dataset Search, niet meer in Google Search. | wijzigingslog, 5 november 2025 |
En je bestaande FAQ-schema?
Laten staan mag. Google schrijft dat ongebruikte structured data geen problemen geeft; het heeft alleen geen zichtbaar effect meer in Google.
Op onze dienstpagina's, zoals die over technische SEO, en op onze FAQ-pagina staat FAQPage-markup nog, omdat dezelfde vragen zichtbaar op die pagina's staan en schema.org het type gewoon kent. Nieuwe tijd erin steken voor een FAQ-rich result heeft geen zin. De actuele lijst ondersteunde types staat in de Search Gallery.
Welke schema.org-types zinvol zijn voor een MKB-site
| Type | Waarvoor | Waar je op let |
|---|---|---|
| Organization | Elke bedrijfssite | Geen verplichte velden. Logo minimaal 112 × 112 pixels; Google noemt vatID een belangrijk vertrouwenssignaal. |
| LocalBusiness | Een vestiging waar klanten komen | Verplicht: name en address. Kies het meest specifieke subtype, zoals Dentist of Plumber. Volledig voorbeeld: LocalBusiness-schema voor lokale vindbaarheid. |
| Product + Offer | Webshops | Offer (prijs, voorraad) is nodig voor verkopersvermeldingen. Retour- en verzendbeleid kun je één keer op Organization zetten; wijkt het per product af, dan in de Offer. Meer over SEO voor webshops. |
| Article / BlogPosting | Blogs en kennisartikelen | Kop, publicatie- en wijzigingsdatum en auteur, gelijk aan wat op de pagina staat. |
| BreadcrumbList | Sites met meerdere niveaus | Alleen zichtbaar op desktop, maar beschrijft je structuur. |
| Event, JobPosting | Evenementen en vacatures | Events komen sinds juni 2025 alleen in aanmerking als ze fysiek en openbaar te boeken zijn (wijzigingslog). |
Hoe voeg je schema markup toe? Zes stappen
- Kijk wat je site nu al uitlevert. Plak je homepage, een product- en een blog-URL in de Rich Results Test en noteer welke types er al staan en welke dubbel voorkomen. WordPress-plugins en webshopthema's zetten vaak al markup neer.
- Kies per paginatype één hoofdtype. Een productpagina is een Product, een blog een BlogPosting, je homepage draagt de Organization. Check in de Search Gallery of Google het type nog ondersteunt.
- Lees de verplichte en aanbevolen velden op de documentatiepagina van dat type en vul alleen in wat de bezoeker ook ziet.
- Genereer de markup uit dezelfde data als de pagina. Geen handwerk per pagina: dan lopen tekst en markup vroeg of laat uit elkaar. Op WordPress doet je SEO-plugin dit: vul in Yoast of Rank Math één keer je organisatienaam en logo in, dan gebruikt de plugin die op elke pagina. Bouw je zelf, koppel losse blokken dan met @id (zie het voorbeeld hieronder).
- Test vóór livegang. De Rich Results Test toont of Google een rich result kan maken; de Schema Markup Validator controleert alle schema.org-types, ook die Google niet gebruikt.
- Bewaak het in Search Console. Je vindt de rapporten per type onder Optimalisaties, en voor producten onder Shopping (Google-help). Een item met een kritiek probleem is ongeldig en komt niet in aanmerking.
Voorbeeld: één samenhangende JSON-LD-graph
Beschrijf je je bedrijf in elk blok opnieuw, dan staan er na een paar updates twee verschillende adressen in. Met een @graph en @id beschrijf je je organisatie één keer en verwijzen andere blokken ernaar.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://www.jouwdomein.nl/#organization",
"name": "Jouw Merknaam",
"legalName": "Jouw Juridische Naam",
"url": "https://www.jouwdomein.nl",
"logo": "https://www.jouwdomein.nl/logo.png",
"telephone": "+31 00 000 0000",
"vatID": "NL000000000B00",
"address": {
"@type": "PostalAddress",
"streetAddress": "Straatnaam 1",
"postalCode": "1234 AB",
"addressLocality": "Plaats",
"addressCountry": "NL"
}
},
{
"@type": "BlogPosting",
"@id": "https://www.jouwdomein.nl/blog/artikel#article",
"headline": "Titel zoals hij op de pagina staat",
"image": "https://www.jouwdomein.nl/afbeelding.jpg",
"datePublished": "2026-10-05",
"dateModified": "2026-10-05",
"author": { "@id": "https://www.jouwdomein.nl/#organization" },
"publisher": { "@id": "https://www.jouwdomein.nl/#organization" }
}
]
}
</script>Vervang de invulvelden door je echte gegevens. Het @id is een vaste URL met een #-label; het hoeft geen bestaande pagina te zijn, zolang je overal exact dezelfde waarde gebruikt.
Zo staat het op deze site
Op cleverseo.nl staat één Organization-blok in de basislayout: merknaam CleverSEO, CleverTech AI als legalName en als parentOrganization, het echte adres en telefoonnummer, het btw-nummer als vatID en het KvK-nummer als identifier.
Het WebSite-blok en elk blogartikel verwijzen via @id naar die organisatie; een artikel krijgt een Article-blok met de organisatie als auteur en uitgever, plus een BreadcrumbList.
Google raadt aan Organization op de homepage of één over-ons-pagina te zetten. Wij renderen hem sitebreed zodat elk artikel ernaar kan verwijzen; het blok is overal identiek. Er staat bewust geen beoordeling in, omdat we geen reviews hebben om erachter te zetten. En er staat geen sameAs naar onze zustersites: dat zijn aparte merken met een eigen onderwerp, en die houden we voor Google gescheiden.
Structured data toevoegen per systeem
- WordPress: Yoast SEO en Rank Math maken zelf een samenhangende schema-graph. Installeer er geen tweede schema-plugin naast; dan krijg je dubbele, tegenstrijdige blokken. Zie ook SEO voor WordPress-sites.
- Shopify, Wix en andere platforms: veel thema's zetten al basis-markup neer. Test eerst wat er staat voordat je een app toevoegt die hetzelfde nog eens doet.
- Next.js en andere frameworks: render het script op de server mee in je layout of pagina. Next.js raadt aan om < te vervangen door \u003c, zodat tekst uit je CMS geen script kan injecteren.
- Google Tag Manager: Google leest geïnjecteerde markup, maar waarschuwt dat dit Shopping-crawls minder frequent en betrouwbaar maakt bij wisselende prijs en voorraad.
Er is nog een reden om markup in de HTML te zetten: in een meting van Vercel (december 2024) voerden de crawlers van OpenAI, Anthropic en Perplexity geen JavaScript uit. Wat pas na JavaScript verschijnt, zien zij niet.
Reviews en sterren: alleen echt en zichtbaar
Review- en AggregateRating-markup worden het vaakst misbruikt. Google stelt deze regels:
- Sinds september 2019 toont Google geen sterren voor beoordelingen die een bedrijf over zichzelf op de eigen site zet, ook niet via een widget (Organization en LocalBusiness).
- Beoordelingen moeten van echte gebruikers komen en direct zichtbaar zijn op de pagina met de markup.
- Sterren op een product kunnen wel, als de reviews over dat product op de productpagina staan.
Echte reviews over je bedrijf horen in je Google Bedrijfsprofiel; hoe je die verzamelt, lees je in reviews verzamelen zonder ze te kopen.
Veelgemaakte fouten
- Markup voor inhoud die niet op de pagina staat, zoals een prijs of FAQ die alleen in de code bestaat.
- Twee plugins die elk een eigen Organization uitspugen, met verschillende namen of adressen.
- LocalBusiness met een adres dat afwijkt van je Google Bedrijfsprofiel en je contactpagina.
- Een publicatiedatum in de markup die niet klopt met de datum op de pagina.
- Nog tijd steken in FAQ- of HowTo-markup voor rich results die Google niet meer toont.
- Eén keer implementeren en nooit meer controleren; na een thema- of plugin-update gaat het vaak stuk.
Veelgestelde vragen
Is schema markup een rankingfactor?
Niet direct. Google koppelt structured data aan de weergave van je resultaat, niet aan je positie. Een rijker resultaat kan wel meer klikken opleveren; zie wat CTR is en hoe je hem meet.
Wat is het verschil tussen schema.org en structured data?
Structured data is het principe: gegevens over je pagina in een vaste vorm. Schema.org is de woordenlijst met de types en eigenschappen die je daarvoor gebruikt, zoals Product, price en address. JSON-LD is de notatie waarin je die woorden opschrijft.
Zet ik JSON-LD in de head of in de body?
Allebei werkt; Google noemt beide plekken. Kies wat je systeem het makkelijkst maakt, zolang het script in de HTML staat die de server uitlevert.
Mag ik meerdere types op één pagina gebruiken?
Ja, bijvoorbeeld een BlogPosting met een BreadcrumbList en een verwijzing naar je Organization. Geef elk blok een @id en laat ze naar elkaar verwijzen, dan blijft het één samenhangend geheel.
Kan ik structured data toevoegen zonder te programmeren?
Op WordPress doet een SEO-plugin als Yoast of Rank Math het grootste deel, en Shopify- en Wix-thema's zetten vaak al basis-markup neer. Voor Product-markup die prijs en voorraad live volgt, of voor een eigen framework, heb je een ontwikkelaar nodig. Test in beide gevallen met de Rich Results Test.
Hoe snel zie ik resultaat?
Google moet de pagina eerst opnieuw crawlen. Vraag na livegang via URL-inspectie in Search Console opnieuw indexering aan en houd de lastmod in je XML-sitemap actueel. Na een paar dagen zie je onder Optimalisaties of de items geldig zijn; of een rich result verschijnt, beslist Google per zoekopdracht.
Wat kost het om structured data te laten controleren of toevoegen?
Controle zit in onze SEO-audit (de SEO-scan) van € 495 eenmalig. Dat is een introductieprijs voor de eerste 10 klanten (t/m 31 maart 2027). Implementatie valt onder de technische optimalisatie in SEO op resultaat: vanaf € 149 per maand voor een lokale ondernemer en vanaf € 395 per maand voor webshops en B2B. De hele staffel staat bij SEO-kosten en pakketten.
Waar begin je?
Begin met één correcte Organization, BlogPosting op je artikelen en, als je een webshop hebt, Product met Offer.
Structured data heeft pas zin als je pagina's al gecrawld en geïndexeerd worden; hoe dat zit, lees je in wat technische SEO is.
