Best practices voor afmeldpagina’s: afmelden met één klik, goed gedaan
Bouw een afmeldpagina die je afleverbaarheid beschermt: one-click headers, onderdrukkingsregels, dark patterns om te vermijden, en wat de Amerikaanse en EU-wetgeving echt eisen.
Een afmeldpagina is het minst glamoureuze onderdeel van je e-mailprogramma en een van de weinige die het stilletjes kan slopen. Iedereen die eruit wil, komt eruit. De enige variabele die jij bepaalt, is of ze via je afmeldlink vertrekken of via de knop “spam melden”, en die twee uitgangen hebben totaal verschillende prijskaartjes.
Waarom wrijving bij afmelden je geld kost
De auteurs van RFC 8058 zetten de commerciële logica in de specificatie zelf: verzenders willen afmelden zo makkelijk mogelijk maken, want als het proces te lastig is, meldt de ontvanger de mail net zolang als ongewenst tot hij niet meer in de inbox verschijnt.
Die vervanging is het hele argument. Een afmelding haalt één adres van één lijst. Een spamklacht wordt vastgelegd op je verzenddomein en IP-adres en meegeteld naast elke andere klacht die je veroorzaakt. Google vraagt afzenders om het spampercentage in Postmaster Tools onder 0,10% te houden en nooit 0,30% of hoger te bereiken; sinds juni 2024 komen bulkverzenders boven 0,3% niet in aanmerking voor bezorgmaatregelen en krijgen ze die pas terug na zeven opeenvolgende dagen eronder. Yahoo vraagt bulkverzenders eveneens om onder 0,3% te blijven.
Dus die persoon die je door drie schermen liet klimmen, vertrekt niet alleen. Hij neemt een stukje van je inboxpositie mee, voor elke toekomstige campagne, ook die naar mensen die je mail nog wel willen.
Hoe afmelden met één klik werkelijk werkt
De meeste adviezen over “afmelden met één klik” gooien twee verschillende mechanismen op één hoop die mailboxproviders juist anders behandelen.
De twee headers
RFC 8058, gepubliceerd in januari 2017, definieert het mechanisme. Een afzender die one-click wil ondersteunen zet één List-Unsubscribe-headerveld en één List-Unsubscribe-Post-headerveld in het bericht. Het eerste moet één HTTPS-URI bevatten en mag daarnaast niet-HTTP-URI’s bevatten, zoals een mailto. Het tweede moet het enkele sleutel-waardepaar List-Unsubscribe=One-Click bevatten.
List-Unsubscribe: <https://example.com/u/9f2a1c7b>List-Unsubscribe-Post: List-Unsubscribe=One-ClickDe mailboxprovider voert daarna een HTTPS POST uit naar die URI met het sleutel-waardepaar als request body. De RFC zegt dat de inhoud verstuurd hoort te worden als multipart/form-data, of verstuurd mag worden als application/x-www-form-urlencoded.
POST /u/9f2a1c7b HTTP/1.1Host: example.comContent-Type: application/x-www-form-urlencoded
List-Unsubscribe=One-ClickVier details uit de RFC zijn de gebruikelijke oorzaak van een “conforme” implementatie die toch niet werkt:
- Het bericht moet een geldige DKIM-handtekening dragen die beide headers dekt, opgesomd in de
h=-tag van de handtekening. Zonder dat horen ontvangers one-click helemaal niet aan te bieden. - De URI moet zowel de ontvanger als de lijst identificeren, want er is geen manier om de gebruiker te vragen welk adres verwijderd moet worden.
- De URI hoort een ondoorzichtig of moeilijk te vervalsen onderdeel te bevatten dat je server controleert, wat voorkomt dat een aanvaller vervalste List-Unsubscribe-links voor de lijst van iemand anders rondmailt.
- De POST mag geen cookies of HTTP-authorisatie bevatten, en je endpoint mag niet met een redirect antwoorden.
Wat mailboxproviders eisen
De afzendersrichtlijnen van Google stellen dat verzenders van meer dan 5.000 berichten per dag afmelden met één klik moeten ondersteunen op marketingberichten en berichten waarop iemand zich heeft geabonneerd, en daarnaast een duidelijk zichtbare afmeldlink in de berichttekst moeten opnemen. Google is er expliciet over dat een link in de tekst geen vervanging is: ontbreekt de List-Unsubscribe-header, dan scant Google de tekst niet, en een mailto-link in de tekst voldoet niet aan de eis.
De eisen van Yahoo voor bulkverzenders vragen om een werkende list-unsubscribe-header die one-click ondersteunt op marketingberichten en geabonneerde berichten, merken op dat de POST-methode uit RFC 8058 sterk wordt aanbevolen terwijl de mailto-methode acceptabel is, en vragen los daarvan om een zichtbare link in de berichttekst die naar een voorkeurenpagina mag wijzen. Dat verschil rond mailto is echt: Yahoo accepteert het, Google niet.
Beide beperken de eis tot marketing- en promotiemail. Google sluit transactionele berichten uit zoals wachtwoordherstel en reserveringsbevestigingen, en de FAQ van Yahoo zegt hetzelfde.
De termijn voor verwerking
De FAQ van Google adviseert afmeldverzoeken binnen 48 uur uit te voeren, en zijn tabel met faalvoorwaarden noemt verzoeken die niet binnen 48 uur zijn verwerkt als reden waarom een bulkverzender de toegang tot bezorgmaatregelen verliest. De eisen van Yahoo schrijven voor om afmeldingen binnen 2 dagen te verwerken. Ontwerp toch voor onmiddellijke onderdrukking: 48 uur is een plafond voor batchsystemen, geen streefwaarde.
Hoe dit verschilt van een link die een pagina opent
One-click via headers raakt je website in de browser van de gebruiker nooit: geen pagina die laadt, geen cookiebanner, geen JavaScript, geen sessie. De provider post op de achtergrond naar je endpoint. De link in de berichttekst is het andere pad, dat wél op een pagina landt die jij hebt ontworpen. Beide moeten werken, om verschillende redenen.
Wat een goede afmeldpagina doet
De pagina heeft één taak: de relatie beëindigen die de lezer wil beëindigen. Vijf eigenschappen dekken vrijwel alles.
- Hij laadt snel en werkt overal. Ga uit van een mobiele browser, een trage verbinding en een client die je scripts blokkeert. Heeft de pagina een trackingbundel nodig om te renderen, dan is de afmelding stuk.
- Hij vereist geen login. De best practices van Yahoo zeggen dat ronduit, en CAN-SPAM maakt het in de Verenigde Staten ook een juridisch probleem.
- Hij bevestigt in één handeling. Aankomen voltooit de afmelding, of laat één duidelijke knop over die dat doet.
- Hij vertelt precies wat er is veranderd. “Je bent verwijderd van de wekelijkse nieuwsbrief. Je ontvangt nog wel bestelbevestigingen.” Vaagheid levert later een klacht op van iemand die dacht dat hij zich overal voor had afgemeld.
- Hij biedt een ongedaanmaakknop. Een zichtbare link om je opnieuw aan te melden redt onbedoelde kliks.
Dark patterns en waarom elk ervan averechts werkt
- Schuldgevoelteksten. De droeve mascotte en de regel “weet je zeker dat je dit wilt missen?” veranderen een neutraal vertrek in een geïrriteerd vertrek. Het enige wat je daarmee nog kunt beïnvloeden, is of de lezer geïrriteerd genoeg vertrekt om de volgende keer op de spamknop te drukken.
- Weggestopte of contrastarme knoppen. Grijze tekst van zes punten in de voettekst vermindert het aantal afmeldingen niet, het verlegt ze naar klachten.
- Verplichte enquêtes. Van “waarom vertrek je?” een verplichte stap maken verandert een verplichting in een gegevensverzamelformulier, en onder CAN-SPAM mag je geen informatie eisen buiten een e-mailadres, noch een stap eisen buiten het bezoeken van één enkele pagina.
- Bevestigingen in meerdere stappen. Elk extra scherm is opnieuw een kans dat de pagina faalt, de sessie wegvalt, of de lezer alsnog spam meldt.
- Loginmuren, verwijderen van het account als kader, en mensen vragen hun adres opnieuw in te typen. Iedereen van wie het weergegeven adres afwijkt van het geabonneerde adres typt het verkeerde. Codeer de identiteit in plaats daarvan in de link.
Voorkeurencentra, en waar ze ophouden te helpen
Een voorkeurencentrum helpt echt wanneer het probleem van de lezer niet jij bent maar je frequentie. Drie opties dragen het meeste bij: frequentie (wekelijks in plaats van dagelijks), onderwerp (voorraadmeldingen maar niet de nieuwsbrief), en pauze (een onderbreking van 30 of 90 dagen met een vaste einddatum). Elk daarvan houdt een abonnee vast die anders vertrokken was.
Het wordt een obstakel op het moment dat het de enige uitgang is. De regel is het waard om in je briefing te zetten: een algehele afmelding moet op de voorkeurenpagina altijd één klik verwijderd blijven, met hetzelfde visuele gewicht als de andere opties, zonder bevestigingsstap erachter.
Let er ook op dat one-click via headers de ontvanger alleen verwijdert van de lijst die bij dat bericht hoort. Hoort een adres bij meerdere lijsten, bepaal dan of een headerafmelding “deze lijst” of “alle marketing” betekent, en zeg dat op de bevestigingspagina.
Het verzoek verwerken: onderdrukking die standhoudt
Onderdruk direct en globaal op adres, niet op lijstlidmaatschap. Een contact van een lijst halen is geen onderdrukking, want de volgende import kan het terugzetten. Een onderdrukkingsregistratie is een aparte, permanente vaststelling dat dit adres geen marketingmail mag ontvangen, gecontroleerd bij het verzenden, ongeacht welke lijst, welk segment of welke workflow de verzending veroorzaakte.
Afmeldingen verlopen niet, en de registratie moet migraties tussen platformen overleven. Daar ontstaat de meeste echte schade: een bedrijf stapt over op een ander e-mailplatform, exporteert contacten, importeert ze in de nieuwe tool en wekt zo stilletjes jaren aan afmeldingen weer tot leven. Verhuis eerst je onderdrukkingslijst, vóór alle contactgegevens, en controleer het aantal aan de andere kant.
Dezelfde fout treedt op zodra twee systemen het oneens zijn. Een winkelplatform, een CRM en een e-mailplatform houden elk een markering voor marketingtoestemming bij, en een nachtelijke synchronisatie overschrijft de markering die klopte. Dat is een integratieprobleem en geen juridisch probleem: de afmelding werd netjes vastgelegd en ging daarna onderweg verloren. Koppel je een winkel aan Brevo via een connector zoals Tajo, controleer dan wat die bij elke synchronisatie met afgemelde contacten doet, niet alleen bij de eerste import.
Twee regels meer die het waard zijn om in code af te dwingen. Voeg een afgemeld adres nooit opnieuw toe via een latere import, een gekochte lijst, een verrijkingstool of een upload voor heractivatie. En log het tijdstip en de bron van elke afmelding, want als iemand beweert zich nooit te hebben afgemeld, is die registratie het antwoord. Houd het endpoint ook beschikbaar: Yahoo zegt dat een niet-werkende afmelding niet aan de eis voldoet, en Google waarschuwt dat een link die langere tijd stuk is, betekent dat berichten er ook niet meer aan voldoen.
Wat de wet werkelijk eist
Verenigde Staten: CAN-SPAM
De nalevingsgids van de FTC zet uiteen wat de wet eist. Je afmeldmechanisme moet verzoeken nog minstens 30 dagen na verzending van het bericht kunnen verwerken, en je moet een verzoek binnen 10 werkdagen honoreren. Je mag geen kosten rekenen, geen persoonsgegevens vragen buiten een e-mailadres, en de ontvanger geen andere stap laten zetten dan het sturen van een antwoordmail of het bezoeken van één enkele pagina op een website. Je mag een menu met opties aanbieden, maar dat moet de mogelijkheid bevatten om alle marketingberichten van jou te stoppen. Zodra iemand zich heeft afgemeld, mag je zijn adres niet verkopen of overdragen, behalve aan een bedrijf dat je hebt ingehuurd om je te helpen voldoen aan de regels. Elke overtredende e-mail kan een boete van maximaal $53.088 opleveren. CAN-SPAM is een opt-outregime: voor het eerste bericht is geen toestemming nodig.
Europese Unie: GDPR en ePrivacy
De EU-positie is precies omgekeerd. Artikel 13, lid 1 van Richtlijn 2002/58/EG staat elektronische post voor direct marketing alleen toe bij abonnees of gebruikers die daarvoor voorafgaande toestemming hebben gegeven. Artikel 13, lid 2 kadert de soft opt-in in: heb je het adres van je eigen klant verkregen in het kader van een verkoop, dan mag je je eigen soortgelijke producten of diensten aanbieden, mits de klant duidelijk en expliciet de gelegenheid krijgt om kosteloos en op gemakkelijke wijze bezwaar te maken, zowel bij het verzamelen als bij elk bericht. Artikel 13, lid 4 verbiedt marketingmail die de identiteit van de afzender verhult, of waarin geen geldig adres staat waarnaar de ontvanger een verzoek tot beëindiging van de communicatie kan sturen.
De GDPR voegt twee plichten toe. Artikel 7, lid 3 geeft het recht om toestemming te allen tijde in te trekken en bepaalt dat intrekken even eenvoudig moet zijn als geven. Artikel 21, lid 2 geeft een onvoorwaardelijk recht om te allen tijde bezwaar te maken tegen direct marketing, inclusief bijbehorende profilering, en artikel 21, lid 3 zegt dat de gegevens dan niet meer voor die doeleinden verwerkt mogen worden. Kortom: je afmelding mag niet moeilijker zijn dan je aanmeldformulier was, en zodra iemand bezwaar maakt valt er niets meer af te wegen.
Verplicht tegenover best practice
| Praktijk | Status |
|---|---|
| One-click afmeldheaders op marketingmail | Verplicht door Gmail en Yahoo voor bulkverzenders, niet door de wet |
| Zichtbare afmeldlink in de berichttekst | Verplicht door Gmail en Yahoo, en feitelijk ook door CAN-SPAM en ePrivacy artikel 13, lid 4 |
| Verwerken binnen 48 uur of 2 dagen | Verplicht door Gmail en Yahoo; CAN-SPAM staat 10 werkdagen toe |
| Geen login, geen kosten, geen extra gegevens | Verplicht onder CAN-SPAM; Yahoo vraagt om geen login |
| Onmiddellijke onderdrukking | Best practice, en de simpelste manier om aan alle bovenstaande regels te voldoen |
| Voorkeurencentrum | Best practice, nooit een vervanging voor een algehele afmelding |
| Vertrekenquête | Alleen best practice, en nooit een voorwaarde |
Voor het volledige EU-beeld, zie de gids voor GDPR en e-mailmarketing, en voor het vastleggen van toestemming de gids voor dubbele opt-in.
Wat je moet meten
Volg het afmeldpercentage per campagne, maar plaats het eerlijk in context. Gepubliceerde benchmarks lopen sterk uiteen per branche, herkomst van de lijst, verzendfrequentie en hoe de afzender de noemer definieert, dus elk los getal dat als “dé” benchmark wordt gepresenteerd is minder waard dan je eigen voortschrijdend gemiddelde. Een campagne die je normale percentage verdubbelt, vertelt je iets specifieks over die campagne.
Het klachtpercentage is het belangrijkere signaal, want daar handelen mailboxproviders naar. Gmail toont het in Postmaster Tools, Yahoo via zijn Complaint Feedback Loop. Behandel de drempels hierboven als plafonds.
De afruil is het deel dat mensen omgekeerd hebben. Je afmelding makkelijker vindbaar maken verhoogt meestal het afmeldpercentage en verlaagt het klachtpercentage, en dat is elke keer een goede ruil: een lijst die krimpt met de mensen die eruit wilden, bereikt meer inboxen dan een lijst die is opgevuld met onwillige ontvangers. Stijgen beide percentages tegelijk, dan zit het probleem niet in de pagina maar in relevantie, frequentie of de manier waarop de adressen zijn verkregen. Onze gidsen over afleverbaarheid, het opschonen van lijsten en waarom e-mails in spam belanden behandelen de diagnose.
De vertrekenquête, met smaak uitgevoerd
Weten waarom mensen vertrekken heeft echte waarde, en je kunt die informatie verzamelen zonder iets te breken. Drie voorwaarden:
- Optioneel. Geen verplicht veld, geen verzendknop tussen lezer en deur.
- Achteraf. Toon hem op de bevestigingspagina, zodra de afmelding is doorgevoerd en de pagina dat ook zegt.
- Kort. Eén vraag, vier of vijf opties: “te veel e-mails”, “niet relevant”, “heb me nooit aangemeld”, “kwaliteit van de inhoud”, “anders”.
“Heb me nooit aangemeld” is de waardevolste regel in de enquête. Loopt die op, dan heb je een wervingsprobleem, en zit de oplossing verderop stroomopwaarts.
Belangrijkste punten
- Makkelijk afmelden is een middel om je afleverbaarheid te sturen, geen beleefdheid. De alternatieve uitgang is de spamknop, en die telt mee bij elke toekomstige verzending.
- Implementeer RFC 8058 goed: beide headers, een HTTPS-URI die de ontvanger identificeert, een moeilijk te vervalsen token, dekking door DKIM, en geen redirect op de POST.
- Verwerk verzoeken onmiddellijk. Het venster van Gmail is 48 uur, dat van Yahoo 2 dagen, dat van CAN-SPAM 10 werkdagen.
- Houd een permanente onderdrukkingslijst bij, migreer die vóór je contactgegevens, en laat een import hem nooit overschrijven.
- Beoordeel je afmeldpercentage tegen je eigen basislijn, en behandel het klachtpercentage als het getal dat je inboxpositie bepaalt.