// MEETMETHODE · V1

Hoe wij een cookiebanner meten.

Vier criteria, negen checks, en per check de drempel waarop wij goed of fout zeggen. Deze pagina is bedoeld om geciteerd te worden: wie een cijfer van ons overneemt, hoort hier te kunnen zien wat eronder zit en wat eronder ontbreekt.

// CRITERIA V1 · EIGEN SITE GEMETEN

Wij stellen niet vast of een website de wet overtreedt. Wij stellen vast wat een browser op één moment op één pagina aantreft, en leggen dat naast de vuistregels die de Autoriteit Persoonsgegevens publiceert. Wijkt het af, dan noemen wij dat in onze eigen woorden een fout ten opzichte van die vuistregel. Of zo'n afwijking een overtreding is, stelt de toezichthouder vast.

Wij meten op verzoek: iemand vult op de toets een adres in en start één meting. Een ongevraagde rondgang over een lijst sites draait nog niet; de regels die daarvoor gelden staan op onze meetrondgang, inclusief de afmeldmogelijkheid.

Wij noemen geen namen: niet van sites die er slecht uitkomen, niet van leveranciers van bannersoftware, en wij verwijzen niet naar besluiten met een boetebedrag. Wat wij publiceren zijn groepscijfers zonder websitenamen, met de datum en het aantal gemeten sites erbij.

SignumCore is geen onderdeel van en niet verbonden aan de Autoriteit Persoonsgegevens. Wij toetsen aan de eisen die de AP publiceert; dit is een technische meting, geen juridisch oordeel.

De woorden van de AP, en wat wij ervan meten

De AP licht op haar pagina over heldere cookiebanners negen vuistregels uit. Onze toets meet vier dingen; elk daarvan bundelt één of meer van die vuistregels. De vuistregels staan hier letterlijk tussen aanhalingstekens. Onze korte naam is alleen een handvat voor tabelkoppen en tellers, geen eigen norm.

CRITERIUM 1 · WEIGEREN EVEN MAKKELIJK ALS ACCEPTEREN

De AP schrijft: ‘Zet verschillende keuzes op één laag’, ‘Verberg bepaalde keuzes niet’, ‘Laat iemand niet extra klikken’, ‘Gebruik geen onopvallende link in de tekst’.

Wij meten: Wij meten of er op de eerste laag een weigerknop staat die even groot en even opvallend is als de accepteerknop.

CRITERIUM 2 · NIETS LADEN VÓÓR TOESTEMMING

De AP schrijft: ‘Verwar toestemming niet met gerechtvaardigd belang’, ‘U moet toestemming krijgen voor het gebruiken van tracking cookies en veel andere soorten cookies’.

Wij meten: Wij meten welke trackers en trackingcookies er al zijn vóór de bezoeker kiest, en of ze na weigeren uit blijven.

CRITERIUM 3 · GEEN MISLEIDING

De AP schrijft: ‘Zet vinkjes niet automatisch aan’, ‘Gebruik duidelijke tekst’.

Wij meten: Wij meten of er iets vooraf is aangevinkt en of de banner de site blokkeert tot je accepteert.

CRITERIUM 4 · COOKIEVERKLARING VINDBAAR

De AP schrijft: ‘Geef informatie over de verwerking van persoonsgegevens en het doel van de verwerking’, ‘Maak toestemming intrekken net zo makkelijk als toestemming geven’.

Wij meten: Wij meten of er vanuit de banner of de pagina een cookie- of privacyverklaring te vinden is; de inhoud ervan meten wij niet.

Bij criterium 2 citeren wij naast de vuistregel één zin uit de uitleg die de AP bij die vuistregel geeft. Die staat er omdat de vuistregel zelf over het verwarren van grondslagen gaat, en de zin eronder zegt waarvoor toestemming nodig is.

Autoriteit Persoonsgegevens, "Heldere cookiebanners", geraadpleegd op 2026-09-17: de pagina van de AP. Onze lezing draagt versie v1 en is geldig vanaf 2026-09-17.

Wat als fout telt, en wanneer wij niets meten

Elke check geeft goed of fout, plus een meetstatus: gemeten, deels gemeten, of niet gemeten. Alleen checks die niet van toepassing zijn, vallen buiten het cijfer. Deels gemeten telt wél mee — daarom publiceren wij naast een cijfer altijd de meetstatus.

CheckCriteriumWat als fout teltNiet te meten wanneer
Weigerknop op de eerste laag1Er staat op de eerste laag geen zichtbare knop waarvan de tekst als weigeren leest. "Alleen noodzakelijke cookies" lezen wij als weigeren, ook wanneer die knop in werkelijkheid een instellingenlaag opent.Wij herkennen geen banner.
Weigerknop even groot als accepteerknop1Het oppervlak van de grootste zichtbare weigerknop is kleiner dan 70 procent van dat van de grootste accepteerknop. Het is een oppervlakteverhouding, geen breedte.Een van beide knoppen ontbreekt, dus er is niets te vergelijken.
Weigerknop even opvallend1De ene knop heeft een gevulde achtergrond en de andere niet. Gevuld is bij ons één bit: doorzichtigheid boven 0,2 en niet vrijwel wit. Een knop met een kleurverloop of achtergrondafbeelding leest daardoor als niet gevuld.Een van beide knoppen ontbreekt.
Geen trackers vóór toestemming2Vóór de keuze vuurt minstens één van 21 verzoekpatronen die wij als tracker herkennen. Een cookieloze toestemmingsping telt niet mee: dat is een verzoek met gcs=G100 in het adres, dus met meting én advertenties op geweigerd.Nooit. Deze check wordt ook zonder banner beoordeeld.
Geen trackingcookies vóór toestemming2Vóór de keuze staat er een cookie waarvan de naam op een van 14 bekende trackingfamilies past. Wij lezen alleen cookies: opslag in de browser buiten cookies om meten wij niet.Nooit.
Weigeren stopt de trackers2In de drie seconden na de klik op weigeren vuurt een tellend verzoek, of komt er een trackingcookie bij die er daarvoor nog niet stond. Een cookie die al bestond en daarna een nieuwe waarde of een langere houdbaarheid krijgt, valt buiten deze check.Er was geen weigerknop, of de klik mislukte. Die twee zijn in het rapport niet te onderscheiden.
Niets vooraf aangevinkt3In de banner staat een keuzevakje dat aan staat, niet uitgeschakeld is, en waarvan het label niet op noodzakelijk, functioneel, essentieel of vereist wijst.Wij herkennen geen banner. Staan er geen keuzevakjes, dan is de uitslag goed met de status deels gemeten: schuifjes en ARIA-schakelaars lezen wij niet.
Geen cookiewall3De banner bedekt 90 procent of meer van het venster én er is geen weigerknop. Dat wij de pagina niet kunnen scrollen, meten wij wel, maar het weegt niet mee in deze uitslag.Wij herkennen geen banner.
Cookieverklaring vindbaar4Nergens op de pagina staat een link waarvan de tekst of het adres op cookie of privacy past. Dit is de lichtste van de negen: één link volstaat, en de inhoud van die verklaring meten wij niet. De status is daarom altijd deels gemeten.Nooit. Deze check kijkt naar de hele pagina, ook zonder banner.

Niet gemeten is niet hetzelfde als goed. Herkennen wij geen banner, dan vervallen vijf van de negen checks, en meestal de zesde ook omdat er geen weigerknop is om op te klikken. Er blijven dan drie checks telbaar over.

Eén combinatie in een rapport is een meetfout en geen bevinding over de site: de eerste check meldt dat er wél een weigerknop is, terwijl de derde verkeerscheck meldt dat er geen weigerknop was om op te klikken. Dan is de klik mislukt. Dat is nu een leesregel voor een mens en nog geen controle in de code; elk cijfer dat wij publiceren gaat eerst langs die regel.

Verse sessie, één pagina, twee meetmomenten

Wij meten met één echte browser zonder venster, op onze eigen server, en per meting een verse sessie: geen cookies, geen geschiedenis, geen eerdere keuze. Het venster is 1366 bij 800 beeldpunten, de taalvoorkeur staat op Nederlands. Wij meten één pagina: het ingevoerde adres na doorverwijzingen.

De meting maakt zich kenbaar in haar naam naar de server. Die naam eindigt op SignumCore-APCookiecheck/1.0 (+https://signumcore.io/docs/toegang-voor-onze-controle) en staat voluit op onze crawlerpagina. Er staat een echte browserkop voor, omdat een cookiebanner een script is dat pas een banner bouwt als er een browser is.

MeetmomentWanneerWat wij vastleggenWat wij niet doen
Vóór toestemmingNa het laadmoment, plus drie secondenAlle netwerkverzoeken sinds de navigatie, alle cookies, en hoe de banner eruitzietNiets aanklikken, de tweede laag niet openen
Na weigerenAlleen als er een weigerknop is: klik, plus drie secondenAlleen de verzoeken vanaf de klik, en cookienamen die er daarvoor nog niet stondenNiet herladen, niet doorklikken naar een volgende pagina
Na accepterenAlleen op eigen verzoek, in een tweede verse sessieAlle cookies met de bewaartermijn die de browser kreeg, voor de inventarisNooit op een site die niet van de aanvrager is; dit levert geen goed of fout op

Antwoordt de site met een foutcode van 400 of hoger, dan krijgt de aanvrager geen rapport, ook geen half rapport. Duurt een meting langer dan 45 seconden, dan breekt hij af zonder uitslag. Op accepteren klikken doen wij alleen wanneer de aanvrager om de cookie-inventaris van zijn eigen site vraagt: een meting hoort geen toestemming te maken.

Wat de toets van onze eigen site maakt

Wij hebben signumcore.io met dezelfde toets gemeten. Uitslag: 9 van 9 telbare checks goed, waarvan 2 met de meetstatus deels gemeten. Dat laatste hoort erbij: ook op onze eigen site telt een half gemeten punt mee als groen, en dat is precies de kanttekening die wij van anderen vragen.

CheckUitslagMeetstatusWat de meting zag
Weigerknop op de eerste laaggoedgemetenGevonden: "WEIGEREN".
Weigerknop even groot als accepteerknopgoedgemetenWeigerknop is 100% van het oppervlak van de accepteerknop (138×46 tegenover 138×46 beeldpunten).
Weigerknop even opvallendgoedgemetenBeide knoppen hebben dezelfde soort opmaak.
Geen trackers vóór toestemminggoedgemetenGeen tracker met cookies. Wel cookieloze toestemmingspings naar Google Analytics 4: geen cookie, wel een verzoek naar Google. Onder onze criteria telt dat niet als tracking.
Geen trackingcookies vóór toestemminggoedgemetenVóór een klik op de banner stond geen herkende trackingcookie.
Weigeren stopt de trackersgoedgemetenNa een klik op weigeren vuurde geen herkende tracker en kwam er geen trackingcookie bij.
Niets vooraf aangevinktgoeddeelsGeen keuzevakjes op de eerste laag. Een tweede laag ("instellingen") is niet gemeten.
Geen cookiewallgoedgemetenDe pagina blijft bereikbaar naast de banner.
Cookieverklaring vindbaargoeddeelsLink in de banner: "Privacyverklaring". Of die verklaring per cookie naam, doel, bewaartermijn en derde partij noemt, is niet gemeten.

Eigen meting via /cookiebanner-toets op signumcore.io, 17 september 2026, 21:18 (Nederlandse tijd).

Waarom onze tagmanager vóór de keuze laadt

Het eerste script in onze pagina zet alle vier toestemmingssignalen op geweigerd, en dat script staat vóór de tagmanager in de paginakop. Er zijn drie standen: volledig accepteren zet alles aan, alleen meten zet de analysemeting aan en de drie advertentiesignalen expliciet uit, weigeren zet alles uit. Draagt een bezoeker een keuze uit een oudere versie van onze melding, dan blijft de geweigerde standaard staan.

Wat wij daarmee niet beweren: dat er vóór een keuze geen verzoek naar een derde partij gaat. Dat gaat er wel. De lader van de container gaat naar Google Tag Manager, en voor bezoekers zonder JavaScript staat er een iframe naar dezelfde partij. Onze eigen definitie van criterium 2 rekent dat verzoek niet mee, omdat een tagmanager in onze lijst geen tracker is. Wie ons op criterium 2 wil narekenen, moet dat weten.

De grondslag, als feit en niet als advies: in onze eigen privacyverklaring rusten meting en advertenties op toestemming, artikel 6 lid 1 sub a AVG, en foutopsporing op gerechtvaardigd belang, artikel 6 lid 1 sub f. Intrekken kan via Cookievoorkeuren onderaan elke pagina. Dat is onze eigen keuze en geen oordeel over die van iemand anders.

Wij bieden klanten aan om uit het IP-adres van een bezoeker af te leiden vanuit welk bedrijf die de site bezoekt, en die bedrijfsnaam bij de bezoekgegevens te bewaren. Het IP-adres zelf is een persoonsgegeven; wat bij de bezoekgegevens belandt is de naam van een organisatie, geen naam of e-mailadres van een bezoeker.

De poort staat per klant dicht en gaat alleen open wanneer die klant heeft vastgelegd dat zijn cookiemelding de voorgeschreven zin bevat. Geen bevestiging, een bevestiging van een oudere versie, en een onvindbare klant wegen alle drie even zwaar: dan blijft de poort dicht.

WatStandGemeten op
Klanten in de database616 september 2026
Klanten met een bevestigde bannertekst016 september 2026
Klanten met een meetsleutel316 september 2026
Vastgelegde bezoekgebeurtenissen132216 september 2026
Daarvan met een netwerknummer, land, stad of bedrijfsnaam016 september 2026

Bedrijfsherkenning stond op dat moment dus bij alle klanten uit. Uit diezelfde gegevens leek eerder te volgen dat er vrijwel geen zakelijke bezoekers waren; dat was geen marktfeit maar een gesloten poort. Een leeg veld is geen nul. Dat is ook de reden dat op deze pagina bij elk getal de meetstatus staat.

De grenzen, voordat iemand ze in een cijfer ontdekt

Wat deze meting niet zietGevolg voor de uitslag
Wat later laadt dan drie seconden na het laadmomentEen tag die op scrollen, op een klik of in een tweede golf vuurt, staat niet in de uitslag.
Andere pagina's van dezelfde siteOf een tracker elders op de site alsnog vuurt, is niet gemeten. Wij meten één pagina.
De mobiele variant van de bannerWij meten op een venster van 1366 bij 800 beeldpunten. Een andere bannervariant op een telefoon is niet gemeten.
Een tweede bezoekWij beginnen met een verse sessie. Gedrag bij een volgend bezoek, of nadat een keuze is onthouden, is niet gemeten.
De tweede laag van de bannerDie openen wij nooit. Wat daar staat en wat daar vooraf aan staat, is niet gemeten; drie vuistregels over doorklikken meten wij daarom alleen indirect.
De bannertekst zelfWij leggen hem vast, maar geen check leest hem. "Gebruik duidelijke tekst" meten wij dus niet.
Het intrekken van toestemmingGeen enkele check zoekt na toestemming naar een manier om die in te trekken. Die vuistregel citeren wij, maar meten wij niet.
Een banner in een afgeschermd deel van de pagina (shadow DOM)Die herkennen wij niet. Dan vervallen vijf van de negen checks, meestal zes, en blijft er een uitslag over die over drie checks gaat.
Tracking langs een eigen domein (server-side tagging)Onze patronen eisen de letterlijke hosts van de bekende partijen. Een opstelling die langs een eigen subdomein loopt, meet schoon. Wij verkopen die opstelling zelf, dus deze grens hoort van ons te komen.
Opslag in de browser buiten cookies omlocalStorage, sessionStorage, IndexedDB en vingerafdruktechnieken meten wij niet.

Wij meten vanaf onze eigen server, dus vanaf een datacenter-adres en niet vanaf een Nederlandse verbinding thuis. Een site die zijn banner per land anders toont, of datacenter-adressen anders behandelt, wordt gemeten zoals hij aan die server verschijnt.

Onze meting maakt zich kenbaar en is daarmee eenvoudig te blokkeren. Dat is een bewuste keuze. Antwoordt een site met een foutcode, dan komt er geen uitslag. Antwoordt een robotcontrole met een tussenpagina en code 200, dan meten wij die tussenpagina: er is dan geen banner, vijf checks vervallen, en de twee verkeerschecks slaan groen uit op een pagina die niet de site is.

OnderdeelWaarde
Versiev1
Geldig vanaf2026-09-17
BronAutoriteit Persoonsgegevens, "Heldere cookiebanners"
Adres van de bronhttps://www.autoriteitpersoonsgegevens.nl/themas/internet-slimme-apparaten/cookies/heldere-cookiebanners
Geraadpleegd op2026-09-17
Vuistregels in de bundelingNegen, plus één zin uit de uitleg van de AP bij criterium 2

Een nieuwe versie ontstaat in drie gevallen: de AP publiceert een nieuw of gewijzigd standpunt, de wet verandert, of een van onze checks gaat iets anders meten. In alle drie de gevallen krijgt de lijst een nieuw nummer en blijft v1 leesbaar voor cijfers die eronder zijn gemeten.

Wij toetsen onze lezing eerst zelf aan wat de AP publiceert; een eigen jurist kijkt er later naar. Zolang dat niet gebeurd is, staat hier wat wij meten en met welke drempels, zodat iemand het kan narekenen of tegenspreken.

SignumCore is geen onderdeel van en niet verbonden aan de Autoriteit Persoonsgegevens. Wij toetsen aan de eisen die de AP publiceert; dit is een technische meting, geen juridisch oordeel.

Zijn jullie onderdeel van de Autoriteit Persoonsgegevens?

Nee. SignumCore is geen onderdeel van en niet verbonden aan de Autoriteit Persoonsgegevens. Wij toetsen aan de eisen die de AP publiceert; dit is een technische meting, geen juridisch oordeel. De vuistregels staan bij ons letterlijk tussen aanhalingstekens, met de bron erbij, zodat je onze bundeling naast het origineel kunt leggen.

Betekent een groene uitslag dat een site aan de wet voldoet?

Nee. Wij meten wat een browser op één moment op één pagina aantreft en zetten dat naast de vuistregels van de AP. Een groene uitslag betekent dat wij op die punten geen fout hebben gemeten, met alle grenzen die op deze pagina staan. Of een site aan de wet voldoet, stelt de toezichthouder vast.

Waarom laadt jullie eigen tagmanager voordat ik een keuze heb gemaakt?

Omdat wij de container laden met een geweigerde standaard in plaats van hem pas na een keuze te laden. Het eerste script in de pagina zet alle vier toestemmingssignalen op geweigerd, vóór de container. Wat wij daarmee niet beweren: dat er vóór jouw keuze geen verzoek naar een derde partij gaat. Dat gaat er wel, en onze eigen definitie van criterium 2 rekent dat verzoek niet mee.

Meten jullie ook de mobiele versie van een banner?

Nog niet. Wij meten in een venster van 1366 bij 800 beeldpunten. Toont een site op een telefoon een andere bannervariant, dan is die niet gemeten. Gaan wij dat meten, dan krijgt de criterialijst een nieuw versienummer, want de meting is dan iets anders.

Mag ik deze cijfers citeren?

Ja. Noem SignumCore, meetmethode cookiebanners v1, geldig vanaf 2026-09-17, met het adres van deze pagina. Vermeld bij elk cijfer het aantal gemeten sites, de meetdatum en de meetstatus. Een cijfer zonder meetstatus is bij ons onvolledig, ook als wij het zelf hebben gepubliceerd.

Noemen jullie namen van sites die er slecht uitkomen?

Nee. Wij publiceren geen namen van gemeten sites, geen namen van leveranciers van bannersoftware, en wij verwijzen niet naar besluiten met een boetebedrag. Wat wij publiceren zijn groepscijfers zonder websitenamen, met de datum en het aantal gemeten sites erbij. Een cijfer laten wij weg als de groep zo klein is dat een enkele site eruit te herleiden zou zijn.

Meet je eigen banner met dezelfde negen checks.

Je vult je adres in, wij meten één keer je voorpagina en je ziet per criterium wat er gebeurde. Dezelfde meting die hierboven op onze eigen site staat.

Weet wat je website oplevertWachtlijst