Kennisbank

Welke structured data heeft een webshop nodig?

Geschreven door
Outseen
Bijgewerkt

Kort antwoord

Een webshop heeft vooral Product- en Offer-gegevens op productpagina’s nodig, ProductGroup voor varianten, een kruimelpad en Organization-gegevens met retourbeleid. Die gegevens moeten overeenkomen met wat de bezoeker op de pagina ziet en mogen niet dubbel of tegenstrijdig worden uitgevoerd.

Een webshop heeft structured data nodig die past bij het soort pagina: Product en Offer op productpagina’s, ProductGroup voor producten met varianten, BreadcrumbList voor het kruimelpad en Organization met je retourbeleid op de homepage of over-onspagina. Die gegevens moeten kloppen met wat een bezoeker op de pagina ziet. Eén correcte bron per pagina werkt beter dan drie apps die elk hun eigen versie uitvoeren.

Wat doet structured data voor een webshop?

Structured data is een vaste beschrijving van de informatie op een pagina, meestal als JSON-LD in de code. Voor een webshop vertelt die beschrijving bijvoorbeeld welke naam, prijs, valuta en voorraadstatus bij een product horen. Google gebruikt die gegevens onder meer om te bepalen of een pagina in aanmerking komt voor productweergaven met prijs, beschikbaarheid of beoordelingen. Een garantie op zo’n weergave is het niet: volgens de algemene richtlijnen van Google is correcte markup een voorwaarde, geen belofte.

regenjas dames waterdicht

  1. modewinkel-voorbeeld.nl › dames › jassenRegenjassen voor damesBekijk onze collectie jassen voor elk seizoen.
  2. regenkleding-voorbeeld.nl › regenjassen › noorDamesregenjas Noor, waterdicht met capuchonAdemende regenjas in drie kleuren. Op voorraad, retourneren binnen de termijn van de winkel.
  3. fietsblog-voorbeeld.nl › adviesZo kies je een goede regenjasWaar je op let bij waterdichtheid en ventilatie.
Voorbeeld van zoekresultaten waarin een productpagina met productgegevens zoals voorraad kan verschijnen. Of en hoe Google productgegevens toont, bepaalt Google zelf.

Wil je eerst de basis begrijpen, lees dan structured data uitgelegd. Dit artikel gaat over de keuzes die specifiek zijn voor webshops.

Welke typen horen op welke pagina?

Niet elke pagina krijgt elk type. Kies per paginatype wat de inhoud beschrijft.

PaginaTypeWat het beschrijftLet op
Productpagina zonder variantenProduct met OfferNaam, afbeelding, prijs, valuta, beschikbaarheidPrijs in de markup gelijk aan de getoonde prijs
Productpagina met variantenProductGroup met Product per variantDe varianten en waarin ze verschillenElke variant heeft een eigen, vooraf te selecteren URL
CategoriepaginaBreadcrumbListDe plek van de pagina in de structuurMinstens twee stappen in het pad
Homepage of over onsOrganization (of OnlineStore)Naam, logo, contact, identificatienummersEén keer op één pagina, niet op elke pagina
RetourpaginaMerchantReturnPolicy onder OrganizationRetourtermijn, land, voorwaardenInstellingen in Merchant Center gaan voor
Blog of koopgidsArticleTitel, datum, auteurAlleen bij redactionele inhoud

En FAQPage?

Google heeft op 8 mei 2026 in de changelog van Search Central gemeld dat het FAQ-rich result sinds 7 mei 2026 niet meer in Google verschijnt. Op 15 juni 2026 is de bijbehorende documentatie verwijderd. FAQPage blijft wel een geldig type op schema.org. Voeg FAQPage dus niet toe in de verwachting van een uitklapbaar vragenblok in Google. Een goede FAQ op een product- of categoriepagina helpt bezoekers nog steeds; zie een FAQ die klanten, Google en AI-assistenten helpt.

Welke velden heeft een productpagina nodig?

Google onderscheidt in de productdocumentatie twee soorten productweergaven. Productfragmenten (product snippets) zijn voor pagina’s waar je het product niet direct koopt, zoals een reviewsite. Verkoperslijsten (merchant listings) zijn voor pagina’s waar de klant het product kan kopen. Een webshop valt in de tweede groep. Volgens de documentatie over merchant listings ziet de basis er zo uit:

Velden voor een verkoperslijst

VerplichtAanbevolen
Productname, image, offers (een Offer, geen AggregateOffer)brand, gtin, sku, color, size, material, aggregateRating, review
Offerprice (hoger dan nul), priceCurrencyavailability, itemCondition, shippingDetails, hasMerchantReturnPolicy
Samengevat uit de documentatie van Google over merchant listings. Controleer de actuele lijst voordat je bouwt.

Een minimaal blok voor een product zonder varianten ziet er dan zo uit. De winkel, het product en de prijs zijn bedacht:

regenjas-noor.json
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Damesregenjas Noor, groen, maat M",
  "image": "https://www.example.com/img/noor-groen.jpg",
  "brand": { "@type": "Brand", "name": "Regenkleding De Bui" },
  "sku": "NOOR-GROEN-M",
  "offers": {
    "@type": "Offer",
    "price": "89.95",
    "priceCurrency": "EUR",
    "availability": "https://schema.org/InStock",
    "itemCondition": "https://schema.org/NewCondition"
  }
}

Een GTIN (de streepjescode van het product) en een merknaam helpen een zoekmachine om jouw product te koppelen aan hetzelfde product bij andere verkopers. Verzendkosten en retourvoorwaarden zijn precies de informatie die een klant zoekt vlak voor de aankoop.

Beoordelingen in je markup moeten ook zichtbaar op de pagina staan. Google eist volgens de richtlijnen voor review snippets dat de bezoeker de beoordeling en de gemiddelde score direct kan zien. Wat er verder op een goede productpagina hoort, van tekst tot verzendinformatie, staat in de checklist voor productpagina’s.

Hoe beschrijf je producten met varianten?

Een jas in vier maten en drie kleuren is één product met twaalf varianten. Google heeft daarvoor ProductGroup:

  • ProductGroup beschrijft het hoofdproduct en krijgt een productGroupID (de hoofd-SKU) en een name.
  • hasVariant bevat de afzonderlijke varianten als Product. Een variant kan ook met isVariantOf naar de groep verwijzen.
  • variesBy geeft aan waarin de varianten verschillen, zoals kleur of maat.
  • Elke variant krijgt een eigen ID (sku of gtin) en een naam die specifieker is dan de groepsnaam.

Google vraagt ook dat elke variant een eigen URL heeft die de juiste variant vooraf selecteert, bijvoorbeeld ?maat=m&kleur=groen, met de juiste afbeelding, prijs en beschikbaarheid. Staan alle varianten op één pagina, dan krijgt de groep één canonieke URL zonder variantkeuze.

Wat je platform hier zelf doet, verschilt:

  • Shopify heeft een Liquid-filter 0. Volgens de documentatie levert dat Product op voor een product zonder varianten en ProductGroup voor een product met varianten. Het filter werkt alleen voor producten en artikelen.
  • WooCommerce genereert de basis-markup automatisch. Volgens de WooCommerce-documentatie geeft de kern voor variabele producten één samengevoegd productblok, om prestatieredenen. Wil je per variant gegevens, dan heb je een uitbreiding nodig.

Waar horen kruimelpad en retourbeleid?

Het kruimelpad

Het kruimelpad laat zien waar een pagina in je winkel staat: Home, Jassen, Regenjassen, Damesregenjas Noor. BreadcrumbList beschrijft dat pad met een lijst van ListItem-onderdelen, elk met position, name en item (de URL). Voor het laatste onderdeel mag de URL ontbreken; Google neemt dan de URL van de pagina zelf. De markup moet overeenkomen met het kruimelpad dat de bezoeker ziet.

Retourbeleid en verzending

Veel webshops zetten het retourbeleid in elke productmarkup. Google raadt een andere opbouw aan: zet één algemeen retourbeleid onder Organization met hasMerchantReturnPolicy, op een pagina zoals je retourpagina of over ons. Gebruik markup op productniveau alleen als een product afwijkt.

Let op de volgorde die Google hanteert. Volgens de documentatie over retourbeleid gaan instellingen in Merchant Center of Search Console vóór markup op productniveau, en die gaat weer vóór markup onder Organization. Staan in Merchant Center andere voorwaarden dan op je site, dan wint Merchant Center. Houd die twee dus gelijk. Bedrijfsgegevens en Organization-schema behandelen we verder in bedrijfsinformatie consistent voor zoekmachines en AI.

Hoe voorkom je dubbele of tegenstrijdige uitvoer?

Dubbele uitvoer ontstaat makkelijk in een webshop met meerdere apps of plugins. Het theme zet een productblok neer, een review-app voegt een tweede toe met de beoordelingen, en een SEO-app of -plugin voegt een derde toe, soms met een oude prijs uit de cache. Een zoekmachine ziet dan drie beschrijvingen van hetzelfde product, mogelijk met verschillende prijzen of voorraden. Zo spoor je het op:

Dubbele productblokken opsporen

  1. Kies een lastige paginaOpen een productpagina met varianten en een korting. Die combinatie laat de meeste fouten zien.
  2. Bekijk de paginabronNiet de inspector, die ook JavaScript-uitvoer toont. Zoek op application/ld+json.
  3. Tel de blokkenHoeveel blokken van het type Product of ProductGroup staan er?
  4. Vergelijk met het schermPrijs, valuta en beschikbaarheid in elk blok moeten gelijk zijn aan wat de bezoeker ziet.
  5. Kies één bronLaat één theme of app de productgegevens uitvoeren en zet de andere uit, of laat ze alleen aanvullen.

Google raadt aan productmarkup in de oorspronkelijke HTML te zetten. Markup die pas via JavaScript verschijnt, kan volgens de variantendocumentatie leiden tot minder frequente en minder betrouwbare verwerking.

Hoe test je structured data?

Gebruik meerdere controles, want elk instrument kijkt naar iets anders:

ControleWat je ermee ziet
Rich Results TestWelke Google-weergaven de markup op een openbare pagina mogelijk maakt, plus fouten en waarschuwingen
Schema Markup ValidatorOf de markup klopt volgens schema.org, los van Google
URL-inspectie in Google Search ConsoleOf Google de structured data op de pagina heeft gevonden
Rapporten per weergave in Search ConsoleFouten over je hele site na publicatie
Je eigen ogenOf prijs, voorraad en reviews in de markup gelijk zijn aan de pagina

Een geslaagde test bewijst alleen dat de syntaxis klopt. Of de prijs in de markup de prijs van vandaag is, zie je alleen door te vergelijken. Herhaal de controle na elke wijziging van theme, app of prijsregels.

Atlas, de eigen onderzoeksengine van Outseen, leest de openbare HTML van opgehaalde pagina’s en de ondersteunde JSON-LD daarin, zoals product en kruimelpad. Bij elke bevinding legt Atlas vast wat er is aangetroffen, op welke URL en wanneer. Markup die pas na JavaScript verschijnt, valt buiten dat onderzoek; dat blijft zichtbaar als grens. Een specialist beoordeelt of de gegevens inhoudelijk kloppen met de pagina, en na een aanpassing kan Atlas opnieuw controleren.

Helpt structured data bij AI‑assistenten?

Google zegt in de uitleg over AI-functies en je website dat je voor AI Overviews en AI Mode geen speciaal schema nodig hebt. Wel noemt Google als goede praktijk dat je structured data overeenkomt met de zichtbare tekst en dat je gegevens in Merchant Center actueel zijn. Andere AI-assistenten hebben hun eigen werkwijze; reken daar niet op een effect dat de aanbieder niet zelf beschrijft. Meer over productvragen aan AI lees je in GEO voor webshops.

Wat betekent dit voor jouw webshop?

Begin niet met extra typen, maar met de vraag hoeveel productblokken er nu op je pagina’s staan en of ze kloppen. Neem drie productpagina’s: één zonder varianten, één met varianten en één in de aanbieding. Bekijk de paginabron, tel de blokken en vergelijk prijs en voorraad met wat de bezoeker ziet. Daar vind je de meeste fouten.

Draai je op Shopify of WooCommerce, kijk dan eerst wat je theme of de kern al uitvoert voordat je een app toevoegt. Zet je retourbeleid één keer onder Organization en houd het gelijk aan Merchant Center. Na elke wijziging aan theme, apps of prijsregels herhaal je dezelfde controle.

Bronnen

Verder lezen

FAQ’s

Mijn Shopify-theme zet al structured data neer. Moet ik dan nog iets doen?

Ja, controleren blijft nodig. Een Shopify-theme kan productgegevens uitvoeren met het Liquid-filter structured_data, maar apps voor reviews, filters of SEO voegen soms een tweede productblok toe. Kijk in de broncode van een productpagina met varianten hoeveel Product- of ProductGroup-blokken er staan en of prijs en voorraad overal gelijk zijn. Ontbreken velden als merk, GTIN of retourbeleid, dan vul je die aan via het theme of één app, niet via allebei.

Krijg ik sterretjes in Google als ik reviews in mijn productschema zet?

Niet vanzelf. Google kan beoordelingen bij een product tonen, maar garandeert geen rich result. De reviews en de gemiddelde score moeten zichtbaar op de productpagina staan, anders hoort de markup er niet. Zet ook geen beoordelingen in je schema die bezoekers nergens kunnen lezen. Voor reviews over je eigen bedrijf, opgemaakt als Organization of LocalBusiness, toont Google geen sterren als je die reviews zelf beheert.

Heb ik naast structured data ook een Google Merchant Center-feed nodig?

Nee, het is geen verplichting, maar Google raadt de combinatie aan. Volgens Google Search Central vergroot je met structured data én een Merchant Center-feed de kans dat je producten in meer zoekervaringen verschijnen, en kan Google je gegevens beter controleren. Een feed helpt vooral bij een grote of snel wisselende catalogus. Zorg wel dat feed en pagina dezelfde prijs en voorraad tonen.

Zorgt productschema ervoor dat ChatGPT of Gemini mijn producten noemt?

Daar is geen officiële bevestiging voor. Google schrijft dat je voor AI Overviews en AI Mode geen speciaal schema nodig hebt; structured data moet wel kloppen met de zichtbare tekst. OpenAI documenteert een eigen productfeed voor ChatGPT, maar dat is iets anders dan JSON-LD op je pagina. Productschema maakt je gegevens duidelijk leesbaar. Of een AI-assistent je product noemt, bepaalt dat systeem zelf.