AVG website-audit: stap-voor-stap voor Belgische ondernemers

Steven | TrustYourWebsite · 4 mei 2026 · Laatst bijgewerkt: mei 2026

De GBA (Gegevensbeschermingsautoriteit) kijkt bij een controle naar concrete technische vaststellingen, niet naar vage beleidsverklaringen. Haar baanbrekende beslissing uit 2022 over het IAB Europe TCF-raamwerk toonde dat: de inspecteurs gingen na of het toestemmingsmechanisme technisch werkte zoals het hoorde, niet of er ergens een privacybeleid ophing. In 2024 legde de GBA Mediahuis een dagboete van €25.000 op omdat de technische werking van de cookiebanner niet overeenkwam met wat er aan de gebruiker werd getoond.

Uw AVG-audit doet hetzelfde: het gaat om wat er technisch achter de schermen van uw website gebeurt, niet om wat uw privacyverklaring beweert. Dit stappenplan loopt die technische laag systematisch door.

Start een geautomatiseerde scan van uw website. Die controleert automatisch op de meest voorkomende cookie-, tracking- en privacyproblemen.

Wat u nodig heeft voor de audit

  • Toegang tot de voorkant en het CMS van uw website
  • Een overzicht van alle plugins, analytics-tools en externe diensten
  • Een browser met DevTools (Chrome, Firefox of Edge)
  • Een spreadsheet om bevindingen te noteren

Werk altijd in een privé- of incognitovenster. Zo ziet u precies wat een nieuwe bezoeker ziet, zonder dat eerdere cookies of toestemmingskeuzes het beeld vertekenen.

Stap 1: cookiebanner en toestemmingsmechanisme

Hier worden de meeste overtredingen gevonden. De wet van 13 juni 2005 betreffende de elektronische communicatie regelt het cookiegedeelte. De AVG geldt zodra de cookie persoonsgegevens verwerkt.

Test de banner op zijn basiswerking

Bezoek uw homepage in een incognitovenster. Stel uzelf de volgende vragen.

Verschijnt er een banner? Als uw website Google Analytics, een Facebook Pixel of vergelijkbare tools gebruikt, is een toestemmingsbanner verplicht.

Heeft de banner een duidelijke weigeroptie? Een banner met enkel "OK" of "Ik begrijp het" is geen geldige toestemming. De gebruiker heeft recht op een echte keuze.

Is de weigerknop even prominent als de accepteerknop? De GBA verwees in haar beslissing over Mediahuis uitdrukkelijk naar het visuele onevenwicht als ongeldig dark pattern. Accepteren en weigeren moeten op de eerste laag van de banner even makkelijk zijn.

Hoeveel klikken zijn er nodig om te weigeren? Als accepteren één klik kost, mag weigeren niet vier klikken door een instellingenmenu vereisen.

Controleer of trackers vóór toestemming laden

Open DevTools (F12), ga naar het Netwerktabblad en laad de pagina opnieuw zonder de cookiebanner aan te raken.

Filter op "analytics", "facebook" of "hotjar". Als u verzoeken ziet naar google-analytics.com, facebook.com/tr of vergelijkbare trackingdomeinen voordat u iets hebt geklikt, laadt uw banner de scripts niet werkelijk. Dat is de technische fout die de GBA bij haar GBA-beslissing nr. 21/2022 in de IAB Europe-zaak expliciet als ongeldig heeft aangemerkt: het toestemmingsinterface verbergt niet dat de verwerking al bezig is vóór de klik.

In DevTools, ga naar Application → Cookies (Chrome) of Storage → Cookies (Firefox). Noteer per cookie: naam, domein, doel en bewaartermijn. Categoriseer elk cookie.

  • Strikt noodzakelijk (sessie, winkelwagen, taalvoorkeur): geen toestemming vereist
  • Analytics (_ga, _gid): toestemming vereist
  • Marketing (_fbp, _gads): toestemming vereist
  • Functioneel (livechat, ingebedde video): doorgaans toestemming vereist

Vergelijk de lijst met uw cookieverklaring. Cookies die op uw site staan maar niet in de verklaring vermeld zijn, betekenen een onvolledige verklaring. De GBA let hier bij een controle op.

Stap 2: privacyverklaring

Open uw privacyverklaring en leg een spreadsheet naast. Markeer elk onderdeel als aanwezig, ontbrekend of te vaag.

De AVG artikelen 13 en 14 schrijven minimumvereisten voor. Controleer elk punt.

Identiteit van de verwerkingsverantwoordelijke: bedrijfsnaam, volledig adres en KBO-nummer. Als er een FG/DPO is, ook diens contactgegevens.

Doel en rechtsgrond per verwerking: niet één algemeen statement voor alles. Per activiteit (contactformulier, nieuwsbrief, analytics, bestellingen) staat het doel en de rechtsgrond: toestemming, overeenkomst, wettelijke verplichting of gerechtvaardigd belang.

Categorieën persoonsgegevens: wees specifiek. Noem naam, e-mailadres, IP-adres, betaalgegevens, browsegedrag.

Ontvangers: noem uw hostingprovider, analytics-tool, e-mailplatform en betaalprovider bij naam.

Bewaartermijnen: "zo lang als nodig" is te vaag voor de GBA. Geef concrete termijnen per categorie. Vergeet de Belgische bijzonderheid: het Wetboek van Vennootschappen en Verenigingen verplicht 10 jaar bewaring voor boekhoudkundige documenten. Als klantgegevens aan facturen zijn gekoppeld, geldt die termijn voor de boekhoudkundige dimensie van die gegevens.

Rechten van betrokkenen: inzage, rectificatie, wissing, beperking, overdraagbaarheid en bezwaar. Vermeld hoe ze concreet kunnen worden uitgeoefend en binnen welke termijn u reageert (30 dagen).

Klachtrecht bij de GBA: met een werkende verwijzing naar de klachtpagina van de GBA.

Internationale doorgiften: als u Amerikaanse diensten gebruikt (Google, Mailchimp, Stripe), zijn er doorgiften naar de VS. Controleer of die diensten gecertificeerd zijn onder het EU-VS Data Privacy Framework.

Belgische bijzonderheid: tweetaligheid in Brussel

Als uw website bezoekers in het Brussels Hoofdstedelijk Gewest bedient, moet uw privacyverklaring beschikbaar zijn in het Frans én het Nederlands. Dat is een verplichting op grond van de Brusselse taalwetgeving, niet de AVG. Maar beide elementen worden bij hetzelfde controlebezoek gecontroleerd.

Stap 3: formulieren

Loop elk formulier op uw website na. De meest voorkomende problemen per type.

Contactformulieren

Staat er een link naar de privacyverklaring bij het formulier, vlak boven of onder de verzendknop? Verzamelt u alleen wat u voor de afhandeling nodig heeft? Een contactformulier heeft geen geboortedatum of telefoonnummer nodig. Waar gaat de inzending naartoe: CMS-database, mailbox of externe dienst? Elke bestemming staat in de privacyverklaring.

Nieuwsbriefinschrijvingen

Is de toestemming voor de nieuwsbrief gescheiden van andere akkoordverklaringen? Is het vakje standaard uitgevinkt? Het Planet49-arrest van het Hof van Justitie (C-673/17) heeft definitief beslist dat vooraf aangevinkte vakjes geen geldige toestemming zijn. Gebruikt u een dubbele opt-in? Dat is de aangeraden aanpak in België voor uitvalveilige toestemming.

Bestelproces

Zijn marketingvakjes gescheiden van de verplichte akkoordverklaring met de algemene voorwaarden? Worden betaalgegevens bewaard? Zo ja, in PCI-DSS-conforme infrastructuur?

Stap 4: externe diensten en verwerkersovereenkomsten

Maak een lijst van alle externe diensten die persoonsgegevens van uw bezoekers zien.

  • Hostingprovider
  • E-mailplatform (Mailchimp, Brevo, ActiveCampaign)
  • Analytics (Google Analytics, Matomo, Plausible)
  • Betaalprovider (Mollie, Stripe, Adyen)
  • Livechat of helpdesk
  • CDN of beveiligingsproxy (Cloudflare)
  • Marketingautomatisering
  • CRM

Per dienst: heeft u een verwerkersovereenkomst (DPA) afgesloten? De grote SaaS-leveranciers bieden die standaard aan in hun klantomgeving of acceptatieproces. Bewaar het bewijs van aanvaarding.

Google Fonts: laden van Google-fonts van Google-servers stuurt het IP-adres van elke bezoeker door naar Google bij elke paginalading, zonder toestemming. Host de lettertypebestanden lokaal op uw eigen server.

Google Maps en YouTube: rechtstreeks ingebedde Maps-kaarten en YouTube-video's laden trackingcookies zodra de pagina verschijnt. Vervang de directe integratie door een statische afbeelding met een "Klik om de kaart te laden"-knop.

Stap 5: beveiligingsheaders en HTTPS

De AVG artikel 32 verplicht "passende technische en organisatorische maatregelen". Een aantal basismaatregelen is minimaal verwacht.

  • HTTPS overal: bezoek uw site via http:// en controleer of er automatisch naar https:// wordt omgeleid. Gemengde inhoud (een HTTPS-pagina die HTTP-bronnen laadt) telt als een mankement
  • Geldig TLS-certificaat: gebruik SSL Labs voor een grondige controle
  • HSTS-header: dwingt browsers altijd HTTPS te gebruiken
  • Content-Security-Policy: beschermt tegen XSS-aanvallen
  • X-Content-Type-Options: nosniff
  • Referrer-Policy: strict-origin-when-cross-origin

In DevTools, ga naar Netwerk → het eerste verzoek → Antwoordheaders. Daar ziet u welke headers actief zijn.

Datalekken bij KMO's komen doorgaans langs twee paden: een verouderde plugin (vooral bij WordPress) of een gestolen wachtwoord. Werk uw CMS en plugins maandelijks bij en schakel tweefactorauthenticatie in op alle beheerdersaccounts.

Stap 6: bewaartermijnen

Naast de AVG gelden in België specifieke wettelijke termijnen.

  • Boekhoudkundige administratie: 10 jaar (Wetboek van Vennootschappen en Verenigingen)
  • Klantgegevens zonder boekhoudkundige dimensie: zo lang als de relatie actief is plus een redelijke naperiode (doorgaans 2 jaar)
  • Nieuwsbriefabonnees: tot uitschrijving, daarna verwijderen of anonimiseren
  • Contactformulierinzendingen: tot afhandeling plus eventuele naperode (3-12 maanden naargelang het type vraag)
  • Logbestanden met IP-adressen: doorgaans 6-12 maanden

Heeft u in uw systemen een automatische verwijderingsroutine? Veel bedrijven hebben een papieren beleid maar geen technische uitvoering. De GBA heeft dit bij meerdere onderzoeken als verzwarende omstandigheid aangemerkt.

Stap 7: datalekprocedure

Een datalek dat een risico inhoudt voor betrokkenen, moet u binnen 72 uur na vaststelling melden bij de GBA. Heeft u een draaiboek?

Test uzelf: stel dat morgenochtend een hacker uw klantenbestand publiceert. Weet u wie u belt, hoe u een melding bij de GBA doet (formulier op gegevensbeschermingsautoriteit.be) en hoe u betrokkenen informeert? Zo nee, schrijf vandaag een eenvoudig draaiboek.

Auditrapport opstellen

Na het doorlopen van bovenstaande stappen heeft u een spreadsheet met bevindingen. Categoriseer:

  • Direct herstellen (deze week): cookiebanner laadt trackers vóór toestemming, ontbrekende privacyverklaring, vooraf aangevinkte vakjes
  • Plannen voor deze maand: onvolledige verklaring, ontbrekende verwerkersovereenkomsten, beveiligingsheaders, bewaartermijn-implementatie
  • Strategisch: leveranciersbeoordeling, CMS-update, tweetalige verklaring voor Brusselse websites

Bewaar het auditrapport. Bij een klacht of een GBA-onderzoek is een gedocumenteerde auditgeschiedenis uw sterkste argument: het toont dat u structureel met privacy bezig bent.

Voor een beknopte controlelijst van alle 35 punten, zie onze AVG-checklist voor Belgische KMO's.


Dit artikel is technische analyse, geen juridisch advies. Raadpleeg een advocaat of AVG-adviseur voor advies dat is afgestemd op uw situatie.

Bronnen

Check je website nu

Scan je website op AVG & Privacy-problemen en 30+ andere checks.

Scan je site gratis