WCAG 2.2 Checklist: Alle 50 Level A & AA Criteria
Gratis WCAG 2.2 checklist met alle 50 Level A & AA succescriteria. Ontdek welke problemen geautomatiseerde tools detecteren en welke handmatige tests vereisen. Inclusief praktische tips.
Waarom WCAG 2.2 AA-conformiteit belangrijk is in 2026
Webtoegankelijkheid is voor de meeste organisaties niet langer optioneel. Het regelgevingslandschap is aanzienlijk verschoven: de European Accessibility Act (EAA) vereist EN 301 549-conformiteit voor digitale diensten, en bedrijven worden steeds vaker juridisch aangesproken op basis van WCAG als standaard.
Volgens de WebAIM Million-studie hebben 94,8% van de homepagina's detecteerbare WCAG-fouten. De meest voorkomende problemen — ontbrekende alt-tekst, laag kleurcontrast, ontbrekende formulierlabels — behoren tot de eenvoudigst op te lossen. Daar komt deze checklist van pas.
WCAG 2.2, gepubliceerd in oktober 2023 en nu de huidige standaard, voegde 9 nieuwe succescriteria toe gericht op cognitieve toegankelijkheid, mobiel gebruik en authenticatie. Het bouwt voort op WCAG 2.1, wat betekent dat volledige 2.2-conformiteit ook 2.1 dekt. Deze checklist behandelt alle 50 Level A en AA criteria waaraan u moet voldoen.
Belangrijke feiten over WCAG 2.2 AA
- 50 succescriteria verdeeld over Level A (18) en Level AA (32)
- Ongeveer 40% van de problemen kan worden gedetecteerd door geautomatiseerde scantools
- De overige 60% vereist handmatig testen met hulptechnologieën
- WCAG 2.2 AA wordt verwezen door ADA, EAA en EN 301 549 vereisten
Snel overzicht: WCAG 2.2 in één oogopslag
Deze checklist omvat alle WCAG 2.2 Level A en AA succescriteria. Gebruik deze om uw website te controleren op toegankelijkheidsproblemen. Criteria met een groen vinkje kunnen gedeeltelijk worden gedetecteerd door geautomatiseerde tools zoals inclly. Criteria met een waarschuwingspictogram vereisen handmatig testen.
Hoe gebruikt u deze checklist
- Geautomatiseerd criteria kunnen worden gedetecteerd door scantools (inclly detecteert deze)
- Handmatig criteria vereisen menselijk oordeel en testen
Geautomatiseerde tools detecteren ongeveer 40% van de toegankelijkheidsproblemen. Gebruik deze checklist om de overige 60% te dekken die handmatig testen vereist.
Waarneembaar
Informatie en componenten van de gebruikersinterface moeten op een waarneembare manier aan gebruikers worden gepresenteerd.
Niet-tekstuele inhoud
Level AAlle niet-tekstuele inhoud heeft een tekstalternatief dat hetzelfde doel dient.
Hoe op te lossen
- -Voeg alt-tekst toe aan alle afbeeldingen die betekenis overbrengen
- -Gebruik leeg alt="" voor decoratieve afbeeldingen
- -Bied tekstalternatieven voor grafieken en diagrammen
- -Voeg ondertiteling of transcripties toe voor audio-inhoud
Alleen audio en alleen video
Level ABied alternatieven voor op tijd gebaseerde media.
Hoe op te lossen
- -Bied transcripties voor alleen-audio-inhoud
- -Bied audiodescriptie of tekstalternatief voor alleen-video-inhoud
Ondertiteling (vooraf opgenomen)
Level AOndertiteling is beschikbaar voor alle vooraf opgenomen audio-inhoud in gesynchroniseerde media.
Hoe op te lossen
- -Voeg ondertiteling toe aan alle video's met audio
- -Zorg ervoor dat ondertiteling gesynchroniseerd is met audio
- -Vermeld sprekeridentificatie bij meerdere sprekers
Info en relaties
Level AInformatie, structuur en relaties die via de presentatie worden overgebracht, kunnen programmatisch worden bepaald.
Hoe op te lossen
- -Gebruik semantische HTML (koppen, lijsten, tabellen)
- -Koppel formulierlabels aan invoervelden
- -Gebruik ARIA-landmarks op de juiste manier
- -Zorg ervoor dat de leesvolgorde overeenkomt met de visuele volgorde
Betekenisvolle volgorde
Level AWanneer de volgorde de betekenis beïnvloedt, kan de juiste leesvolgorde programmatisch worden bepaald.
Hoe op te lossen
- -Zorg ervoor dat de DOM-volgorde overeenkomt met de visuele volgorde
- -Test met uitgeschakelde CSS om de leesvolgorde te verifiëren
Zintuiglijke kenmerken
Level AInstructies zijn niet uitsluitend afhankelijk van zintuiglijke kenmerken zoals vorm, kleur, grootte of positie.
Hoe op te lossen
- -Gebruik niet "klik op de rode knop" of "zie zijbalk"
- -Bied meerdere manieren om elementen te identificeren
Gebruik van kleur
Level AKleur wordt niet als het enige visuele middel gebruikt om informatie over te brengen.
Hoe op te lossen
- -Voeg pictogrammen of tekstlabels toe naast kleurindicatoren
- -Gebruik patronen naast kleuren in grafieken
- -Zorg ervoor dat links onderstreept zijn of andere niet-kleurindicatoren hebben
Audiobesturing
Level AAls audio automatisch langer dan 3 seconden wordt afgespeeld, bied dan een manier om te pauzeren of het volume te regelen.
Hoe op te lossen
- -Vermijd automatisch afspelende audio
- -Bied indien nodig zichtbare pauze-/stopknoppen
- -Voeg volumeregeling toe onafhankelijk van het systeemvolume
Contrast (minimum)
Level AATekst heeft een contrastverhouding van ten minste 4,5:1 (3:1 voor grote tekst).
Hoe op te lossen
- -Gebruik een contrastcontrole-tool
- -Grote tekst (18pt+ of 14pt vet) vereist een 3:1-verhouding
- -Normale tekst vereist een 4,5:1-verhouding
Tekstgrootte wijzigen
Level AATekst kan tot 200% worden vergroot zonder verlies van inhoud of functionaliteit.
Hoe op te lossen
- -Gebruik relatieve eenheden (rem, em) in plaats van pixels
- -Test bij 200% zoom in de browser
- -Zorg ervoor dat er geen horizontaal scrollen nodig is bij 200% zoom
Afbeeldingen van tekst
Level AAAls dezelfde visuele presentatie met tekst kan worden bereikt, gebruik dan geen afbeeldingen van tekst.
Hoe op te lossen
- -Gebruik CSS voor tekststijlen in plaats van afbeeldingen
- -Logo's vormen een uitzondering op deze regel
Reflow
Level AAInhoud kan worden weergegeven zonder horizontaal scrollen bij een breedte van 320px.
Hoe op te lossen
- -Gebruik responsief ontwerp
- -Test bij een viewportbreedte van 320px
- -Vermijd tweedimensionaal scrollen, behalve voor complexe inhoud
Niet-tekstueel contrast
Level AAUI-componenten en grafische elementen hebben een contrastverhouding van 3:1.
Hoe op te lossen
- -Formulierinvoervelden hebben zichtbare randen met voldoende contrast nodig
- -Pictogrammen die betekenis overbrengen hebben een 3:1-contrast nodig
- -Focusindicatoren hebben een 3:1-contrast nodig
Tekstafstand
Level AAGeen verlies van inhoud wanneer de tekstafstand wordt aangepast.
Hoe op te lossen
- -Gebruik geen containers met vaste hoogte voor tekst
- -Test met verhoogde regelhoogte, letterafstand en woordafstand
Inhoud bij hover of focus
Level AAAanvullende inhoud die wordt geactiveerd bij hover/focus is afwijsbaar, hoverbaar en persistent.
Hoe op te lossen
- -Tooltips moeten afwijsbaar zijn met Escape
- -De gebruiker moet over tooltip-inhoud kunnen hoveren
- -Inhoud moet zichtbaar blijven totdat deze wordt afgewezen
Bedienbaar
Componenten van de gebruikersinterface en navigatie moeten bedienbaar zijn.
Toetsenbord
Level AAlle functionaliteit is beschikbaar met alleen een toetsenbord.
Hoe op te lossen
- -Test de gehele site met alleen Tab, Enter, Spatie en pijltjestoetsen
- -Zorg ervoor dat alle interactieve elementen focusbaar zijn
- -Aangepaste componenten hebben toetsenbordondersteuning nodig
Geen toetsenbordval
Level AToetsenbordfocus wordt nooit vastgehouden in een component.
Hoe op te lossen
- -Test modals en dialogen op toetsenbordnavigatie
- -Zorg ervoor dat focus altijd kan worden verplaatst van elk element
Sneltoetsen met één teken
Level ASneltoetsen met één teken kunnen worden uitgeschakeld of opnieuw worden toegewezen.
Hoe op te lossen
- -Vermijd sneltoetsen met één teken (zoals "s" voor zoeken)
- -Bied indien gebruikt instellingen om opnieuw toe te wijzen of uit te schakelen
Aanpasbare timing
Level AGebruikers kunnen tijdslimieten verlengen, aanpassen of uitschakelen.
Hoe op te lossen
- -Sessietimeouts moeten gebruikers waarschuwen en verlenging toestaan
- -Laat carrousels niet automatisch doorschuiven zonder gebruikersbesturing
Pauzeren, stoppen, verbergen
Level ABewegende of automatisch bijgewerkte inhoud kan worden gepauzeerd, gestopt of verborgen.
Hoe op te lossen
- -Carrousels hebben pauzeknoppen nodig
- -Automatisch bijgewerkte inhoud heeft stopknoppen nodig
- -Animaties die langer dan 5 seconden duren hebben besturingselementen nodig
Drie flitsen of onder drempel
Level AInhoud flitst niet meer dan 3 keer per seconde.
Hoe op te lossen
- -Vermijd flitsende inhoud volledig
- -Houd indien nodig de flitsfrequentie onder 3 Hz
Blokken omzeilen
Level ABied een manier om herhaalde inhoudsblokken over te slaan.
Hoe op te lossen
- -Voeg een "ga naar hoofdinhoud"-link toe
- -Gebruik ARIA-landmarks (main, nav, enz.)
- -Zorg voor een goede kopstructuur
Paginatitel
Level APagina's hebben titels die het onderwerp of doel beschrijven.
Hoe op te lossen
- -Elke pagina moet een unieke, beschrijvende titel hebben
- -De titel moet zowel de paginanaam als de sitenaam bevatten
Focusvolgorde
Level ADe focusvolgorde behoudt betekenis en bedienbaarheid.
Hoe op te lossen
- -De tabvolgorde moet de visuele leesvolgorde volgen
- -Modals moeten focus op de juiste manier vasthouden
- -Focus moet terugkeren naar het trigger-element wanneer de modal sluit
Linkdoel (in context)
Level AHet doel van een link kan worden bepaald uit de linktekst of de context.
Hoe op te lossen
- -Vermijd "klik hier" of "lees meer" zonder context
- -Linktekst moet begrijpelijk zijn zonder context of met omringende tekst
- -Gebruik aria-label als linktekst alleen niet beschrijvend genoeg is
Meerdere manieren
Level AAEr is meer dan één manier beschikbaar om een pagina te vinden binnen een set pagina's.
Hoe op te lossen
- -Bied een zoekfunctie op de site
- -Voeg een sitemap toe
- -Gebruik duidelijke navigatiemenu's
Koppen en labels
Level AAKoppen en labels beschrijven het onderwerp of doel.
Hoe op te lossen
- -Gebruik beschrijvende, unieke koppen
- -Formulierlabels moeten duidelijk de verwachte invoer beschrijven
Focus zichtbaar
Level AADe toetsenbordfocusindicator is zichtbaar.
Hoe op te lossen
- -Verwijder outline-stijlen niet zonder vervanging
- -De focusindicator moet duidelijk zichtbaar zijn
- -Gebruik :focus-visible voor toetsenbord-specifieke focusstijlen
Focus niet verborgen (minimum)
Level AAHet gefocuste element wordt niet volledig verborgen door andere inhoud.
Hoe op te lossen
- -Vaste koppen mogen gefocuste elementen niet bedekken
- -Cookiebanners mogen gefocuste elementen niet bedekken
- -Gebruik scroll-margin om rekening te houden met vaste elementen
Aanwijzergebaren
Level AMeerpunts- of padgebaseerde gebaren hebben alternatieven met één aanwijzer.
Hoe op te lossen
- -Knijpen om te zoomen moet knop-alternatieven hebben
- -Veeggebaren hebben knop-alternatieven nodig
- -Kaartinteracties hebben enkelvoudige-klik-alternatieven nodig
Aanwijzerannulering
Level AActies die worden geactiveerd bij het indrukken van de aanwijzer kunnen worden geannuleerd.
Hoe op te lossen
- -Gebruik click/touch-end in plaats van mousedown/touchstart
- -Bied ongedaan-maken-functionaliteit voor destructieve acties
Label in naam
Level AZichtbare tekstlabels zijn opgenomen in toegankelijke namen.
Hoe op te lossen
- -De toegankelijke naam moet het zichtbare label bevatten of ermee overeenkomen
- -Gebruik geen aria-label dat in tegenspraak is met zichtbare tekst
Bewegingsactivering
Level AFuncties die door beweging worden geactiveerd hebben UI-alternatieven.
Hoe op te lossen
- -Schudden-om-ongedaan-te-maken heeft een knop-alternatief nodig
- -Bewegingsbesturing moet optioneel zijn
Sleepbewegingen
Level AASleepbewerkingen hebben alternatieven met één aanwijzer.
Hoe op te lossen
- -Slepen-om-te-herschikken moet knop-alternatieven hebben
- -Bied omhoog-/omlaagpijlen voor het herschikken van lijsten
Doelgrootte (minimum)
Level AAAanraakdoelen zijn ten minste 24x24 CSS-pixels (met uitzonderingen).
Hoe op te lossen
- -Knoppen en links moeten ten minste 24x24 pixels zijn
- -Bied voldoende afstand tussen aanraakdoelen
- -44x44 pixels wordt aanbevolen voor mobiel
Begrijpelijk
Informatie en de bediening van de gebruikersinterface moeten begrijpelijk zijn.
Taal van de pagina
Level ADe standaard menselijke taal van de pagina kan programmatisch worden bepaald.
Hoe op te lossen
- -Voeg het lang-attribuut toe aan het html-element
- -Gebruik de juiste taalcode (en, es, fr, enz.)
Taal van onderdelen
Level AATaalwijzigingen binnen de inhoud worden geïdentificeerd.
Hoe op te lossen
- -Gebruik het lang-attribuut op elementen met tekst in een andere taal
- -Neem eigennamen en technische termen op in de hoofdtaal
Bij focus
Level AHet ontvangen van focus wijzigt niet automatisch de context.
Hoe op te lossen
- -Dien formulieren niet automatisch in bij focus
- -Open geen nieuwe vensters bij focus
- -Navigeer niet weg bij focus
Bij invoer
Level AHet wijzigen van instellingen wijzigt niet automatisch de context, tenzij de gebruiker is gewaarschuwd.
Hoe op te lossen
- -Formulieren moeten expliciete verzendknoppen hebben
- -Waarschuw gebruikers voor automatisch verzenden
- -Keuzerondjes mogen formulieren niet automatisch verzenden
Consistente navigatie
Level AANavigatie verschijnt in dezelfde volgorde op alle pagina's.
Hoe op te lossen
- -Houd navigatie op dezelfde locatie op alle pagina's
- -Behoud een consistente volgorde van navigatie-items
Consistente identificatie
Level AAComponenten met dezelfde functionaliteit worden consistent geïdentificeerd.
Hoe op te lossen
- -Gebruik consistente labels voor vergelijkbare functies
- -Zoekpictogrammen moeten altijd zoeken betekenen
- -Gebruik geen verschillende labels voor dezelfde actie
Consistente hulp
Level AHulpmechanismen verschijnen in dezelfde relatieve volgorde op pagina's.
Hoe op te lossen
- -Houd hulplinks op een consistente locatie
- -Contactinformatie moet op dezelfde plek staan op alle pagina's
Foutidentificatie
Level AInvoerfouten worden automatisch gedetecteerd en aan de gebruiker beschreven.
Hoe op te lossen
- -Toon duidelijke foutmeldingen voor ongeldige invoer
- -Identificeer welk veld een fout bevat
- -Vertrouw niet alleen op kleur om fouten aan te geven
Labels of instructies
Level ALabels of instructies worden verstrekt wanneer inhoud gebruikersinvoer vereist.
Hoe op te lossen
- -Elk formulierveld heeft een zichtbaar of sr-only label nodig
- -Bied formaathinten (bijv. "DD/MM/JJJJ")
- -Geef verplichte velden aan
Foutsuggestie
Level AAAls een invoerfout wordt gedetecteerd, worden suggesties gegeven.
Hoe op te lossen
- -Stel waar mogelijk correcties voor
- -Toon het verwachte formaat voor ongeldige invoer
- -Geef voorbeelden van geldige invoer
Foutpreventie (juridisch, financieel, gegevens)
Level AAVoor juridische/financiële transacties zijn inzendingen omkeerbaar, gecontroleerd of bevestigd.
Hoe op te lossen
- -Sta gebruikers toe om te controleren voor de definitieve inzending
- -Bied een bevestigingsstap voor belangrijke acties
- -Sta gebruikers toe om inzendingen ongedaan te maken of te corrigeren
Overbodige invoer
Level AEerder ingevoerde informatie wordt automatisch ingevuld of is beschikbaar voor selectie.
Hoe op te lossen
- -Vraag gebruikers niet om informatie opnieuw in te voeren
- -Vul verzendadres automatisch in vanuit factuuradres
- -Onthoud voorkeuren binnen een sessie
Toegankelijke authenticatie (minimum)
Level AACognitieve functietests zijn niet vereist voor authenticatie, tenzij er alternatieven bestaan.
Hoe op te lossen
- -Sta wachtwoordmanagers toe
- -Bied kopieer-plak voor verificatiecodes
- -Gebruik CAPTCHA's niet als enige optie
Robuust
Inhoud moet robuust genoeg zijn om betrouwbaar te worden geïnterpreteerd door een breed scala aan user agents.
Naam, rol, waarde
Level AUI-componenten hebben toegankelijke namen, rollen en statussen.
Hoe op te lossen
- -Aangepaste componenten hebben de juiste ARIA-rollen nodig
- -Schakelaarknoppen hebben aria-pressed nodig
- -Uitklapbare secties hebben aria-expanded nodig
Statusberichten
Level AAStatusberichten kunnen programmatisch worden bepaald zonder focus te ontvangen.
Hoe op te lossen
- -Gebruik aria-live-regio's voor dynamische updates
- -Succes-/foutberichten hebben role="alert" of aria-live nodig
- -Laadstatussen moeten worden aangekondigd
Veelgestelde vragen
Wat is het verschil tussen WCAG 2.1 en 2.2?
WCAG 2.2 bouwt voort op WCAG 2.1 door 9 nieuwe succescriteria toe te voegen gericht op gebruikers met cognitieve beperkingen, slechtziendheid en mobiele apparaatgebruikers. Belangrijke toevoegingen zijn Focus niet verborgen (2.4.11), Sleepbewegingen (2.5.7) en Doelgrootte minimum (2.5.8). WCAG 2.2 heeft ook criterium 4.1.1 Parsing verwijderd als verouderd. Als u voldoet aan WCAG 2.2, voldoet u automatisch aan 2.1.
Welk percentage WCAG-problemen kunnen geautomatiseerde tools detecteren?
Geautomatiseerde toegankelijkheidstesttools kunnen ongeveer 30-40% van de WCAG-problemen detecteren. Dit omvat technische problemen zoals ontbrekende alt-tekst, kleurcontrastfouten, ontbrekende formulierlabels en onjuiste kopstructuur. De overige 60-70% vereist menselijk oordeel—zoals of alt-tekst betekenisvol is, of inhoud logisch is georganiseerd, of foutmeldingen nuttig zijn.
Is WCAG 2.2 AA wettelijk verplicht?
Dat hangt af van uw jurisdictie. In de VS vereist de DOJ-regel van april 2024 dat staats- en lokale overheden voldoen aan WCAG 2.1 Level AA. Particuliere bedrijven worden geconfronteerd met ADA-rechtszaken die WCAG als standaard aanhalen. In de EU vereist de European Accessibility Act (van kracht sinds juni 2025) WCAG 2.1 AA voor veel digitale producten en diensten. WCAG 2.2 wordt steeds meer de verwachte standaard.
Hoe lang duurt het om WCAG 2.2 AA-conformiteit te bereiken?
De tijdlijn varieert aanzienlijk op basis van de huidige staat, omvang en complexiteit van uw site. Een kleine marketingsite heeft mogelijk een paar weken gerichte werkzaamheden nodig, terwijl een grote webapplicatie maanden kan vergen. De sleutel is prioriteren: los eerst kritieke problemen op (Level A) en pak daarna AA-criteria aan. Onthoud dat toegankelijkheid doorlopend is—nieuwe inhoud en functies vereisen continu testen.
Wat zijn de meest voorkomende WCAG-overtredingen?
Volgens het WebAIM Million-rapport zijn de meest voorkomende overtredingen: ontbrekende alternatieve tekst voor afbeeldingen (54,5%), laag kleurcontrast (81%), ontbrekende formulierlabels (45,9%), lege links (44,6%), ontbrekende documenttaal (17,1%) en lege knoppen (26,9%). De meeste hiervan kunnen worden gedetecteerd door geautomatiseerde tools en zijn relatief eenvoudig op te lossen.
Meer leren
Ontdek gerelateerde gidsen om uw toegankelijkheidsconformiteitsstrategie te verdiepen.
Geautomatiseerd vs handmatig testen
Begrijp wat elke aanpak detecteert en bouw een effectieve teststrategie.
Gids voor handmatig testen
5 essentiële tests die elke ontwikkelaar moet kennen.
EAA-conformiteitschecklist
EN 301 549 vereisten gekoppeld aan WCAG 2.2 voor EAA-conformiteit.
Toegankelijkheidstools vergeleken
Vergelijk axe DevTools, WAVE, Lighthouse, Pa11y en meer.
Hulp nodig bij het implementeren van deze oplossingen?
inclly scant automatisch uw website op WCAG 2.2 AA-problemen en biedt framework-specifieke codevoorbeelden om ze op te lossen. Begin met een gratis scan om te zien welke criteria uw site haalt — en welke aandacht nodig hebben.
Start gratis scan