Naar hoofdinhoud

Faceted navigation en SEO: welke filterpagina's indexeer je?

Bepaal welke filterpagina's je indexeert, canonicaliseert of blokkeert, met een uitgewerkt voorbeeld, tips voor Shopify en Magento en een checklist.

Faceted navigation en SEO: welke filterpagina's indexeer je?

Faceted navigation SEO draait om één beslissing: welke gefilterde categorie-URL's mogen zoekmachines crawlen en indexeren, en welke moeten ze negeren. Faceted navigation is het filterpaneel op een categoriepagina: merk, maat, kleur, prijs, materiaal. Elke filterklik kan een nieuwe URL opleveren, en de meeste daarvan zijn bijna kopieën van de categorie zelf.

Kort antwoord: blokkeer het crawlen van filtercombinaties waar niemand op zoekt, geef de paar filters met echte zoekvraag een schone, indexeerbare URL met eigen title en tekst, en houd alle andere gefilterde weergaven uit de index. De documentatie van Google over faceted navigation zet blokkeren via robots.txt bovenaan en noemt canonical-tags en nofollow-links op de lange termijn over het algemeen minder effectief. Hieronder lees je hoe je die keuze per filter maakt, met een uitgewerkt voorbeeld.

Filters, filterwaarden en de URL's die ze maken

Met faceted navigation verfijnt een shopper een productlijst op kenmerken. In een categorie hardloopschoenen filter je bijvoorbeeld op merk (ASICS, Brooks, Hoka), maat (42 tot en met 47), kleur, breedte (normaal, breed) en prijs. Elk van die dimensies is een facet; elke optie daarbinnen een facetwaarde. In ons woordenboek lees je meer over de zoekkant van hetzelfde idee: faceted search.

Twee dingen maken filters een SEO-onderwerp. De filterstatus staat meestal in de URL, als parameter (?kleur=blauw) of als padsegment (/hardloopschoenen/blauw/). En filters zijn te combineren. Wie een merk, een maat en een kleur kiest, krijgt een URL die nergens anders op de site bestaat, terwijl de producten een deelverzameling van de categorie zijn.

Facetten en filters worden vaak door elkaar gebruikt. Veel SEO-teams maken wel onderscheid: een facet is een dimensie die een eigen landingspagina waard is (merk, producttype), een filter verfijnt alleen de weergave (sortering, op voorraad, prijsslider). Dat onderscheid is handig, omdat het direct aansluit op "wel indexeren" en "niet indexeren".

Waarom faceted navigation SEO-problemen veroorzaakt

Het probleem is rekenwerk. Neem één categorie met 12 merken, 15 maten, 10 kleuren, 5 prijsklassen en 4 sorteringen. Als een shopper per filter maximaal één waarde kiest, zijn er (12+1) x (15+1) x (10+1) x (5+1) x (4+1) = 68.640 mogelijke URL's, uit één categorie. Sta meerdere kleuren tegelijk toe en het kleurfilter alleen heeft al 1.024 combinaties. Legt de URL ook de klikvolgorde vast, dan bestaat elke combinatie twee keer of vaker.

Die URL's geven drie problemen:

  • Verspild crawlbudget. Google waarschuwt dat het crawlen van gefilterde URL's sites veel rekenkracht kost en dat overcrawlen de ontdekking van nieuwe pagina's kan vertragen (Google Search Central). Bij een catalogus waar elke week producten bijkomen, merk je die vertraging.
  • Dubbele en dunne pagina's. /hardloopschoenen?merk=hoka&maat=44&sortering=prijs-op en /hardloopschoenen?maat=44&merk=hoka tonen dezelfde producten. Een combinatie met twee producten heeft een zoeker weinig te bieden.
  • Versnipperde signalen. Interne en externe links verdelen zich over veel versies van dezelfde lijst in plaats van één sterke URL op te bouwen.

De andere kant is kans. Mensen zoeken wel degelijk op gefilterde sets: "hoka hardloopschoenen", "brede hardloopschoenen", "waterdichte wandelschoenen dames". Een filterpagina die precies op zo'n zoekopdracht aansluit, kan beter scoren dan de algemene categorie.

De vier middelen en wat ze echt doen

De meeste slechte filteropzetten ontstaan doordat het juiste middel voor de verkeerde taak wordt ingezet.

robots.txt, noindex, canonical en nofollow vergeleken

Disallow in robots.txtStopt het crawlen; de sterkste manier om crawlbudget te sparenHaalt URL's niet betrouwbaar uit de index: een geblokkeerde URL kan zonder inhoud geïndexeerd raken als andere pagina's ernaar linken
Meta robots noindexHoudt een pagina uit de indexGoogle moet de pagina crawlen om de tag te zien; achter een robots.txt-blokkade ziet de crawler de noindex-regel nooit (Google Search Central)
rel=canonicalVertelt Google welke URL je verkiest tussen bijna-dubbele pagina's en bundelt signalenEen hint: het kan het crawlen van de andere versies op termijn verminderen, maar de gefilterde URL's worden nog steeds gecrawld
rel=nofollow op filterlinksVraagt Google die links niet te volgenHelpt alleen als elke link naar die URL het attribuut heeft
Alleen robots.txt stopt het crawlen en verbergt dan de noindex-tag, dus gebruik ze nooit samen op dezelfde URL.

Eén middel bestaat niet meer: Google haalde de tool URL-parameters in 2022 uit Search Console, omdat maar ongeveer 1% van de instellingen erin nuttig was voor het crawlen (Google Search Central Blog). Parameters regel je nu zelf, in robots.txt, je URL's en je markup.

Je kunt een filter ook helemaal buiten het crawlen houden door het niet in een crawlbare URL te zetten. Volgens Google worden URL-fragmenten over het algemeen niet gebruikt voor crawlen en indexeren, dus filters achter een # (/hardloopschoenen#maat=44) hebben geen effect op het crawlen (Google Search Central). Dat past bij filters die alleen verfijnen, zoals maat, prijs of sortering. Voor een merk- of doelgroeppagina die moet ranken is het de verkeerde keuze: een fragment-URL wordt nooit los geïndexeerd. Filtert je thema met JavaScript, zorg dan dat filters die je wel wilt laten indexeren nog steeds een echte URL krijgen, met een gewone link ernaartoe.

Kies per filter: indexeren, canonicaliseren of blokkeren

Beslis niet per URL. Beslis per filter en per combinatiediepte, leg het vast en laat je templates de regel toepassen. Deze lijst werkt voor de meeste retailcatalogi:

Indexeringsregel per filter voor een retailcatalogus

Merk (één waarde)IndexerenAls "merk + categorie" zoekvraag heeft, en dat is meestal zo. Gebruik een vaste URL zoals /hardloopschoenen/hoka/, een eigen title en een korte intro.
Producttype of toepassing (één waarde)IndexerenAls het aansluit bij hoe mensen zoeken ("trailschoenen", "waterdichte jassen"). Werkt vaak beter als echte subcategorie dan als filter.
Doelgroep (dames, heren, kinderen)IndexerenIn categorieën waar zo gezocht wordt ("hardloopschoenen dames").
Kleur (één waarde)Selectief indexerenAlleen waar kleur deel van de zoekopdracht is ("zwarte sneakers", "rode jurk"). Elders canonicaliseren of blokkeren.
Maat, breedte, pasvormBlokkerenMeestal. "Brede hardloopschoenen" kan de uitzondering zijn die een landingspagina verdient.
Materiaal of eigenschapSelectief indexerenVoor termen waarop gezocht wordt ("merino ondershirt", "gore-tex schoenen"); de rest blokkeren.
Prijsklassen en slidersBlokkerenDe waarden veranderen met je prijzen en sluiten zelden aan bij een zoekopdracht.
Sortering, weergave, aantal per paginaAltijd blokkerenZe voegen geen nieuwe inhoud toe.
Op voorraad, beoordeling, kortingBlokkerenBehandel ze als filter dat de weergave verfijnt, niet als landingspagina.
Combinaties van twee of meer filtersStandaard blokkerenPromoveer een specifieke combinatie ("hoka trailschoenen") alleen als je de zoekvraag hebt gecheckt en genoeg producten hebt om de pagina te vullen.
10 van 10 rijen
Sorteer op de regelkolom: alleen merk, type, doelgroep en een selectie van kleur of materiaal met één waarde krijgen een indexeerbare URL.

Twee extra regels voorkomen dunne filterpagina's. Stel een minimumaantal producten in (veel teams houden ongeveer vijf aan) waaronder de pagina terugvalt op noindex. En geef een 404 bij filtercombinaties zonder resultaten, zoals Google aanraadt, in plaats van door te sturen of een zachte foutpagina te tonen.

Een categorie hardloopschoenen met 340 producten, regel voor regel

Neem een middelgrote sportwebshop met een categorie /hardloopschoenen/ van 340 producten.

Stap 1: zet de filters en waarden op een rij

Merk (12 waarden), doelgroep (3), maat (15), breedte (2), kleur (10), prijs (5 klassen), sortering (4). Zonder regels zijn de filterlinks gewone crawlbare HTML-links met parameters in klikvolgorde.

Stap 2: check de zoekvraag

Bekijk de zoekopdrachten in Search Console, de termen in je interne zoekfunctie en zoekwoorddata. In dit voorbeeld tellen merk + hardloopschoenen, "hardloopschoenen dames", "hardloopschoenen heren" en "brede hardloopschoenen". Niemand zoekt op "hardloopschoenen maat 44 blauw onder 100 euro".

Stap 3: schrijf de URL- en indexeringsregels

  • /hardloopschoenen/hoka/, /hardloopschoenen/dames/, /hardloopschoenen/breed/: vaste paden, canonical naar zichzelf, opgenomen in de XML-sitemap, eigen title en introtekst.
  • /hardloopschoenen/dames/hoka/: alleen indexeerbaar voor merken met minstens vijf damesmodellen op voorraad, anders noindex.
  • Al het andere gebruikt parameters in een vaste volgorde, ?kleur=blauw&maat=44&sortering=prijs-op, en staat als disallow in robots.txt.

Stap 4: de regels in robots.txt

De disallow-regels voor dit voorbeeld: Disallow: /*?*kleur=, Disallow: /*?*maat=, Disallow: /*?*prijs=, Disallow: /*?*sortering=. Test ze op een steekproef van echte URL's voordat je live gaat, zodat je geen product-URL blokkeert die toevallig dezelfde parameternaam gebruikt.

Resultaat: de categorie gaat van tienduizenden crawlbare varianten naar ongeveer 20 indexeerbare landingspagina's, elk gekoppeld aan een zoekopdracht die mensen echt typen, terwijl shoppers alle filters houden.

Filter-URL's in Shopify en Magento

Shopify. Filters in de storefront gebruiken parameters als filter.v.option.color=red, filter.p.vendor=Hoka en filter.v.price.gte=50. De waarden komen uit variantopties, leverancier, producttype, tags of metafields, en een winkel kan maximaal 25 filters aanmaken (Shopify developer docs). Omdat dit parameter-URL's op de collectie zijn, bouw je de indexeerbare merk- of doelgroeppagina's meestal als aparte collecties (een automatische collectie met de voorwaarde leverancier is Hoka) met een eigen omschrijving, terwijl de filterparameters buiten de index blijven.

Magento (Adobe Commerce). Een attribuut verschijnt in de layered navigation als het invoertype ("Catalog Input Type for Store Owner") Yes/No, Dropdown, Multiple Select of Price is en "Use in Layered Navigation" op "Filterable (with results)" of "Filterable (no results)" staat. De categorie moet bovendien "Anchor" op Yes hebben (Adobe Experience League). Kies "Filterable (with results)", dan krijgen shoppers en crawlers nooit lege combinaties aangeboden.

Goede filters beginnen bij schone attribuutdata

Elk filter is een productattribuut dat als link wordt getoond. Is de attribuutdata rommelig, dan zijn de filters dat ook, en daar helpt geen enkele robots.txt-regel tegen.

Problemen die we vaak zien bij het importeren van een catalogus:

  • Gesplitste waarden. "Navy", "navy blauw", "Donkerblauw" en "NAVY" verschijnen als vier kleuropties, elk met een eigen URL. Wie "Navy" kiest, mist het grootste deel van de navy producten.
  • Waarden in het verkeerde veld. De kleur staat alleen in de titel ("Trailschoen, blauw"), dus het product komt nooit onder het kleurfilter.
  • Ontbrekende waarden. Een filter is zo goed als het aandeel producten waarbij die waarde is ingevuld. Heeft 40% van je hardloopschoenen geen breedte ingevuld, dan toont de filterpagina "breed" maar een deel van je assortiment en lijkt ze dunner dan ze is.
  • Eenheden en notaties. "10 l", "10L" en "10 liter" voor het volume van een rugzak worden drie filterwaarden.
De attributenlijst van WISEPIM laat per attribuut zien hoeveel producten een waarde hebben, zodat je ziet welke facetten te leeg zijn voor een filterpagina.

De oplossing is attribuutstandaardisatie: één vaste waardelijst per filter, één notatie voor eenheden en een regel voor wat in welk veld hoort. Ontwerp je filters vanaf nul, begin dan bij het attribuutmodel en niet bij de filterinstellingen van je thema. In WISEPIM zie je in de attribuutlijst hoeveel producten per attribuut een waarde hebben, en Quality Guard-regels kunnen waarden buiten een toegestane lijst markeren. AI-verrijking kan ontbrekende attributen vullen uit titels, omschrijvingen en afbeeldingen, ter controle.

Acht filterinstellingen die rankings of crawlbudget kosten

  • Elke filterpagina canonicaliseren naar de categorie, ook de pagina's die moeten scoren. /hardloopschoenen/hoka/ gaat nooit ranken als de canonical naar /hardloopschoenen/ wijst.
  • Indexeerbare filterpagina's met de title en H1 van de categorie. Een merkpagina heeft een eigen title ("Hoka hardloopschoenen"), H1 en korte intro nodig, anders is het een duplicaat met een andere URL.
  • Filtervolgorde in de URL volgt de klikvolgorde. Dwing één volgorde af, zodat kleur=blauw&maat=44 en maat=44&kleur=blauw dezelfde URL zijn. Google raadt aan de logische volgorde vast te houden en dubbele filters te voorkomen.
  • Sitemaps vol filter-URL's, of met URL's die naar een andere canonical wijzen. Neem alleen indexeerbare landingspagina's op.
  • Robots.txt en noindex op dezelfde URL. Zie de waarschuwing hierboven.
  • Lege combinaties die een 200 geven. Geef een 404 of haal de optie uit het filterpaneel.
  • Sessie-ID's of trackingparameters in filter-URL's. Ze vermenigvuldigen URL's zonder nieuwe inhoud.
  • Het als eenmalig project zien. Nieuwe attributen en merken maken nieuwe filters. Controleer crawlstatistieken en geïndexeerde pagina's na elke catalogusimport.

Checklist faceted navigation SEO

SEO-checks voor filters per categorietemplate

0 van 11 klaar0%
Werk van boven naar beneden: de regels uit de eerste drie punten bepalen wat de rest van de lijst moet afdwingen.

Voor de kant van de shopper (volgorde van filters, mobiele weergave, actieve filterchips) lees je onze gids over UX van productfilters. Voor de categoriepagina rond de filters gebruik je de checklist voor categoriepagina's en SEO.

Filters zijn zo goed als de attributen erachter. Zie je gesplitste kleuren of lege merklijsten in je filters, begin dan bij attributen beheren in WISEPIM: vind inconsistente waarden, normaliseer ze en vul de gaten voordat je bepaalt welke filterpagina's mogen ranken.

Diego Nijboer

CTO and Co-Founder at WISEPIM, building AI-powered solutions that transform product data management for e-commerce businesses. Over 10 years of experience solving complex technical challenges in e-commerce and PIM systems.

Veelgestelde vragen

Nog vragen?

Kan je het antwoord niet vinden? Neem contact op met ons team.

Contact opnemen

Faceted navigation is het filtersysteem op categorie- en zoekpagina's waarmee shoppers producten verfijnen op kenmerken als merk, maat, kleur of prijs. Voor SEO is het belangrijk omdat elke filterstatus een eigen URL kan krijgen. Goed ingericht scoren een paar filterpagina's op specifieke zoekopdrachten. Zonder regels verspillen duizenden bijna-dubbele URL's crawlbudget en versnipperen ze rankingsignalen.

Alleen een klein deel. Indexeer pagina's met één filter die aansluiten op echte zoekopdrachten, zoals een merk binnen een categorie, en geef ze een eigen title en tekst. Houd sorteringen, prijsklassen, maten en de meeste combinaties van meerdere filters buiten de index. Baseer elke keuze op zoekvraag en op genoeg producten om de pagina zelfstandig nuttig te maken.

Ze doen iets anders. Robots.txt stopt het crawlen en spaart crawlbudget, maar Google ziet geen noindex-tag op een pagina die het niet mag crawlen. Gebruik noindex om al geïndexeerde filter-URL's op te ruimen en stap over op robots.txt-regels zodra ze uit de index zijn. Google noemt robots.txt als eerste middel om het crawlen van filter-URL's te stoppen.

Gedeeltelijk. Een canonical vertelt Google welke versie van een bijna-dubbele pagina je verkiest en bundelt signalen, maar Google ziet het als hint en blijft de gefilterde URL's crawlen. Google noemt canonical en nofollow op de lange termijn over het algemeen minder effectief dan het blokkeren van filter-URL's die nooit in de zoekresultaten horen.

Shopify-filters voegen parameters als filter.v.option.color of filter.p.vendor toe aan de collectie-URL. Houd die parameter-URL's buiten de index en bouw aparte collecties, met eigen title en omschrijving, voor gefilterde sets waar mensen op zoeken, zoals een merk binnen een categorie. Link vervolgens vanaf de hoofdcollectie naar die collecties.

Verder ontdekken

Zorgvuldig gekozen vervolgstappen om dieper te gaan.

Betere productdata, betere resultaten.Verkoop meer producten.