Structured data in gewone taal
Staat er onder je adres "di t/m vr 7.30 tot 18.00 uur", dan begrijpt een bezoeker meteen dat dat je openingstijden zijn. Een zoekmachine moet dat afleiden uit tekst en opmaak, en dat gaat niet altijd goed.
Structured data haalt dat giswerk weg. Je zet een apart blok in de pagina waarin elk gegeven een vast label krijgt: dit is de naam, dit het adres, dit zijn de openingstijden. Vergelijk het met het etiket op een pakket: de inhoud verandert niet, maar de sorteermachine hoeft niet meer te raden wat erin zit.
Drie begrippen lopen hierbij door elkaar:
- Schema.org is de woordenlijst: types zoals LocalBusiness, Product en Event, met eigenschappen zoals address, price en startDate. Google, Microsoft, Yahoo en Yandex richtten het samen op; een openbare community group bij W3C ontwikkelt het verder.
- JSON-LD is de schrijfwijze waarin je die woorden op je pagina zet. Er zijn drie notaties; Google raadt deze aan.
- Rich results zijn zoekresultaten met extra's, zoals een kruimelpad, prijs en voorraad of sterren.
Zoekopdracht: notenbrood bestellen
Bakkerij Van Dam
Notenbrood | Bakkerij Van Dam
Ambachtelijk notenbrood met walnoten en rozijnen. Elke ochtend vers, af te halen in de winkel.
Broodhuis De Linde› Brood › Notenbrood
Notenbrood met walnoot, 800 gram
★ 4,7 (36 beoordelingen) · € 5,95 · Op voorraad. Vandaag besteld, morgen bezorgd.
Google schrijft zelf dat geldige markup geen garantie is: het algoritme kiest per zoekopdracht, apparaat en locatie of er een rich result verschijnt. Structured data maakt je pagina geschikt. Meer kan niemand je beloven.
Zo ziet structured data eruit
Hieronder de markup voor een fictieve bakkerij, in de HTML van de contactpagina. Bezoekers zien het blok niet, maar elk gegeven erin staat ook leesbaar op die pagina. Dat is een eis van Google, daarover verderop meer.
contact.html (fragment)
<script type="application/ld+json">{ "@context": "https://schema.org", "@type": "Bakery", "name": "Bakkerij Van Dam", "url": "https://www.example.com", "telephone": "+31 30 000 0000", "address": { "@type": "PostalAddress", "streetAddress": "Voorbeeldstraat 12", "postalCode": "1234 AB", "addressLocality": "Utrecht", "addressCountry": "NL" }, "openingHoursSpecification": [{ "@type": "OpeningHoursSpecification", "dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday"], "opens": "07:30", "closes": "18:00" }]}</script>- 1
<script type="application/ld+json">Een apart blok in de HTML. Bezoekers zien het niet, zoekmachines lezen het wel. - 2
"@context": "https://schema.org",De woordenlijst die je gebruikt: schema.org. - 3
"@type": "Bakery",Wat dit is. Bakery is een specifieker soort LocalBusiness. Kies altijd het meest specifieke type dat klopt. - 4
"name": "Bakkerij Van Dam",De naam, precies zoals op je website en in je Google Bedrijfsprofiel. - 5
"telephone": "+31 30 000 0000",Telefoonnummer met landcode. - 6
"address": {Het adres als apart onderdeel. Naam en adres zijn voor Google de verplichte velden bij een lokaal bedrijf. - 7
"addressCountry": "NL"Het land als tweeletterige landcode. - 8
"openingHoursSpecification": [{Openingstijden met Engelse dagnamen en tijden in 24-uursnotatie. Andere tijden op zaterdag? Dan voeg je een tweede blok toe.
Met de hand typen is meestal niet nodig. Veel websitesystemen en SEO-plugins maken een deel van de markup automatisch aan. Kijk wel wat ze uitvoeren: automatische markup kan een te algemeen type gebruiken of velden overslaan. Google leest JSON-LD ook als een script het pas later in de pagina zet.
JSON-LD, Microdata of RDFa: welke kies je?
Google ondersteunt drie notaties. Ze gebruiken dezelfde schema.org-woorden, alleen op een andere plek in de code.
- JSON-LD staat in een apart scriptblok in de head of body van de pagina, los van de zichtbare tekst.
- Microdata zit als extra attributen in de HTML-elementen die de tekst tonen.
- RDFa werkt ook met attributen in de HTML, op een vergelijkbare manier.
HTML met Microdata
<div itemscope itemtype="https://schema.org/Bakery">
<h1 itemprop="name">Bakkerij Van Dam</h1>
<p>Bel ons: <span itemprop="telephone">+31 30 000 0000</span></p>
</div>Voor Google zijn alle drie even goed, zolang de markup geldig is. Toch raadt Google JSON-LD aan: het is op grote schaal het makkelijkst in te bouwen en te onderhouden, en gaat minder snel fout. Bij een nieuw ontwerp blijft een los JSON-LD-blok gewoon staan, terwijl Microdata-attributen sneuvelen zodra iemand de HTML aanpast.
Werkt je bestaande Microdata goed, dan hoef je niet om te bouwen. Begin je opnieuw, kies dan JSON-LD.
Schema.org is groot, Google toont maar een deel
Hier ontstaan de meeste verkeerde verwachtingen. Schema.org beschrijft honderden types, van Bakery tot Volcano. Google Search gebruikt daarvan een beperkt deel voor rich results. Welke, staat in de Search Gallery van Google, met onder meer Article, Breadcrumb, Event, Local business, Organization, Product, Recipe, Review snippet en Video.
Markup kan dus volkomen geldig zijn volgens schema.org en toch niets zichtbaars opleveren in Google. Voor Google Search is de documentatie van Google leidend. Google kan andere schema.org-gegevens, zoals sameAs-verwijzingen naar je profielen elders, wel gebruiken om je pagina te begrijpen.
De lijst verandert ook. In 2025 verdwenen onder meer de weergaven voor cursusinformatie, geschatte salarissen en voertuigaanbod. Kijk dus in de actuele Search Gallery voordat je tijd in een type steekt.
Wat er met FAQ- en HowTo-rich results is gebeurd
De bekendste voorbeelden zijn de uitklapbare vragen (FAQ) en stappenplannen (HowTo) onder een zoekresultaat. In augustus 2023 beperkte Google FAQ-rich results tot bekende, gezaghebbende overheids- en gezondheidswebsites, en HowTo tot de computer. In september 2023 verdween HowTo helemaal.
Op 7 mei 2026 stopte Google met FAQ-rich results voor alle websites; in juni 2026 verdween ook de documentatie. Het schema.org-type FAQPage bestaat nog en is geldige markup, maar levert in Google geen uitklapvragen meer op.
Een FAQ op je pagina blijft nuttig: bezoekers vinden er snel antwoord en de tekst is leesbaar voor zoekmachines en AI-assistenten. Alleen de extra weergave in Google is weg.
Welke types passen bij een mkb-bedrijf?
Voor de meeste ondernemers is een handvol types genoeg:
| Type | Waar plaats je het | Wat het in Google kan opleveren |
|---|---|---|
| Organization | Homepage of over-ons-pagina; niet op elke pagina nodig | Helpt Google je bedrijf te herkennen; kan je logo en kennispaneel beïnvloeden. Geen verplichte velden. |
| LocalBusiness, liefst specifieker (Bakery, Dentist) | Homepage of contactpagina, per vestiging | Adres, openingstijden en telefoon in vaste vorm; kan bijdragen aan een kennispaneel in Search en Maps. Verplicht: naam en adres. |
| Product met Offer | Elke productpagina | Prijs, voorraad en beoordelingen. Bij webshops ook verzendkosten en retourbeleid. |
| Article of BlogPosting | Blog, nieuws en kennisbank | Een betere titel, afbeelding en datum bij het resultaat. Geen verplichte velden. |
| BreadcrumbList | Elke pagina met een kruimelpad | Het kruimelpad boven je resultaat. Google toont dit nu alleen op de computer. |
| Event | Een pagina per evenement | Een evenementenweergave, maar die biedt Google nu niet aan in Nederland. |
LocalBusiness is bedoeld voor een fysieke vestiging; verkoop je alleen online, dan past Organization of OnlineStore beter. Je Google Bedrijfsprofiel blijft daarnaast nodig: markup op je website vervangt dat niet.
Webshops kunnen productgegevens ook via Merchant Center aan Google geven. Markup en een productfeed samen maken je volgens Google geschikt voor de meeste weergaven. Laat je een webshop bouwen, vraag dan na of de productmarkup automatisch meebeweegt met prijs en voorraad.
Reviews en sterren: strenge regels
Beheer je zelf de reviews over je eigen bedrijf, bijvoorbeeld een blok met klantbeoordelingen op je homepage, dan komen pagina's met LocalBusiness- of Organization-markup niet in aanmerking voor sterren. Google noemt dat self-serving reviews.
Voor producten ligt dat anders. Klantbeoordelingen bij een product in je webshop kunnen wel sterren opleveren, mits ze van echte gebruikers komen en zichtbaar op de pagina staan. Nepreviews en beloonde reviews zonder vermelding mogen nergens.
De hoofdregel: markup moet kloppen met wat bezoekers zien
Google eist dat structured data een eerlijke weergave is van de pagina. Je markeert geen informatie die bezoekers niet kunnen zien, en je maakt geen lege pagina's alleen om markup op te zetten. Staat er in je JSON-LD een prijs, dan staat precies die prijs ook op de pagina.
Wie de regels overtreedt, kan een handmatige actie krijgen: de pagina komt dan niet meer in aanmerking voor rich results. Je positie in de gewone zoekresultaten verandert daardoor volgens Google niet. Zo'n actie zie je in Search Console onder Handmatige acties.
Goede en foute markup
Zo hoort het
- Wel: Openingstijden in de markup staan ook zichtbaar op de pagina
- Wel: De prijs in de markup is dezelfde als op de pagina
- Wel: Het meest specifieke type: Bakery in plaats van LocalBusiness
- Wel: Productreviews van echte klanten, leesbaar bij het product
- Wel: Markup op de pagina waar het over gaat
Zo niet
- Niet: Sterren op je eigen bedrijf met reviews die je zelf toont
- Niet: Een actieprijs in de markup die op de pagina al voorbij is
- Niet: Event-markup voor een kortingsactie of je openingstijden
- Niet: Vragen en antwoorden markeren die nergens op de pagina staan
- Niet: Een lege pagina alleen om markup op te zetten
Zo test je structured data
Testen kost een paar minuten en voorkomt dat er maandenlang foute markup op je site staat. Gebruik de tools in deze volgorde.
Testen in vier stappen
- 1
Rich Results Test
Plak je code of URL. Je ziet voor welke rich results de pagina in aanmerking komt en wat er ontbreekt.
- 2
Schema Markup Validator
Controleert alle schema.org-markup, ook types waar Google geen rich result voor heeft.
- 3
URL-inspectie
Na livegang: controleer in Search Console of Google de markup op de pagina heeft gevonden.
- 4
Rapporten volgen
De rich result-rapporten in Search Console tonen per type fouten en waarschuwingen voor je hele site.
Het verschil tussen de eerste twee: de Rich Results Test van Google kijkt alleen naar types waarvoor Google een rich result heeft. De Schema Markup Validator op validator.schema.org controleert alle schema.org-markup, zonder Google-specifieke waarschuwingen. Ook een geslaagde test is geen garantie; volgens Google vangt de Rich Results Test niet elke fout af.
Wil je snel zien welke structured data er nu op je website staat? De gratis AI-zichtbaarheidscheck laat het zien, samen met onder meer je robots.txt, title en sitemap.
Helpt structured data om genoemd te worden door AI?
Kort antwoord: het helpt machines je gegevens correct te lezen, maar het is geen voorwaarde en geen garantie. Dit zeggen de platforms zelf:
- Google schrijft dat structured data niet nodig is voor de AI-overzichten en AI-modus, en dat er geen speciale schema.org-markup voor bestaat. Wel raadt Google aan het te blijven gebruiken voor SEO, omdat het je geschikt maakt voor rich results. Ook een llms.txt-bestand heeft Google Search niet nodig.
- Microsoft schreef in oktober 2025, in een blog van een productmanager van Bing, dat schema zoekmachines en AI-systemen helpt content te begrijpen. In hetzelfde stuk staat dat niets een plek in AI-antwoorden garandeert.
Wat wel vaststaat: structured data dwingt je om naam, adres, openingstijden en prijzen één keer eenduidig vast te leggen. Staan die gegevens hetzelfde op je pagina, in je markup en in je Google Bedrijfsprofiel, dan blijft er weinig ruimte voor misverstanden.
Hoe Google bronnen kiest voor die antwoorden, lees je in onze uitleg over AI-overzichten. Het bredere vak heet GEO; wat GEO is en wat je kunt beïnvloeden staat in een aparte gids.
Veelgemaakte fouten
Naast de voorbeelden hierboven komen deze fouten vaak voor:
- Dubbele markup. Twee plugins die allebei Organization-markup uitvoeren, met een andere naam of een ander adres, geven tegenstrijdige signalen.
- Verouderde gegevens. Nieuwe openingstijden of een andere prijs op de pagina, maar de oude waarde in de markup.
- Verplichte velden vergeten. Zonder de verplichte eigenschappen geen rich result. Google heeft liever een paar volledige, juiste velden dan zoveel mogelijk halve.
- Geblokkeerde pagina's. Markup op een pagina met noindex of een pagina die in robots.txt is geblokkeerd, wordt niet gebruikt.
- Het verkeerde type. Article op een productpagina, of LocalBusiness voor een webshop zonder winkel.
Waar begin je?
Voor een gewone bedrijfswebsite is de volgorde meestal: Organization of LocalBusiness op de homepage of contactpagina, BreadcrumbList op alle pagina's en Article op je blog. Heb je een webshop, dan komt Product met Offer eerst. Test elk type voordat het live gaat en houd daarna de rapporten in Search Console in de gaten.
Structured data hoort bij technische SEO en is een vast onderdeel van onze GEO-dienst voor zichtbaarheid in AI-antwoorden. Wil je eerst weten hoe je website ervoor staat? De gratis scan bekijkt je vindbaarheid in Google en in AI-antwoorden en geeft de drie verbeteringen met het meeste effect. Je krijgt de uitkomsten ook als je daarna niets met ons doet.
Bronnen
- Introduction to structured data markup in Google Search · Google Search Central (opent in een nieuw tabblad)
- General structured data guidelines · Google Search Central (opent in een nieuw tabblad)
- Structured data markup that Google Search supports · Google Search Central (opent in een nieuw tabblad)
- Latest Google Search documentation updates · Google Search Central (opent in een nieuw tabblad)
- Optimizing your website for generative AI features on Google Search · Google Search Central (opent in een nieuw tabblad)
- Optimizing your content for inclusion in AI search answers · Microsoft Advertising (opent in een nieuw tabblad)