Contact Form 7 is dé favoriete plugin voor WordPress-gebruikers in Nederland en België. Eenvoudig, gratis, geen gedoe. Totdat je ontdekt dat de e-mails niet aankomen. Of erger: ze landen allemaal in de spam-folder van je bezoekers.
Het probleem klinkt geheimzinnig, maar de oorzaak is doorgaans heel concreet: Contact Form 7 vertrouwt standaard op de mail()-functie van je webserver. Deze functie stuurt e-mails van het adres van je server (vaak iets als noreply@server123.nl), niet van jouw daadwerkelijke domeinnaam. Gmail, Outlook en andere providers zien dit onmiddellijk als verdacht en gooien de e-mail weg.
Waarom Contact Form 7 e-mails niet aankomen
De route van een formulier-e-mail naar de inbox is als het ware onzichtbaar. Veel website-eigenaars zien alleen: formulier verzonden → geen e-mail ontvangen. Maar achter de schermen gebeurt er veel meer.
WordPress (en dus Contact Form 7) sturen e-mails via de server-ingebouwde mail()-functie of via wp_mail() (het WordPress-equivalent). Die functie weet niets van SPF, DKIM of domeinen. Ze zegt gewoon tegen je mailserver: "stuur dit bericht". De mailserver van de ontvanger kijkt dan naar het adres van wie dit bericht komt, en als dat niet matcht met een geverifieerd domein, wordt het vertrouwen laag.
In het geval van Contact Form 7 gebeurt er bovendien iets subtiel:
- Geen SMTP-protocol. De
mail()-functie gebruikt het lokale postfix/sendmail-proces op je hosting. Dit geeft je geen controle over headers, authentication of reputatie. - From-adres uit je serverconfig. Als je niets specifieks instelt, stuurt Contact Form 7 van het e-mailadres uit het formulier (prima), maar de
Return-PathenMAIL FROM-header wijzen naar de server. - Geen SPF/DKIM voor jouw domein. Omdat je de server-
mail()-functie gebruikt, klopt SPF niet. En DKIM kan niet gemeten worden. - Nederlandse mailproviders zijn streng. Ziggo, KPN en XS4ALL-adressen (veel vaste relaties in NL) gebruiken dezelfde filters als Gmail/Yahoo: zonder geverifieerde domein-reputatie → spam-folder.
Het kritieke probleem: From-adres misconfiguratie
Dit is het kernvraagstuk waar veel websites mee worstelen. Je ziet in Contact Form 7 dat je From-adres op info@jouwbedrijf.nl staat. Logisch, toch? Maar onder de motorkap ziet de mailserver van de ontvanger dit:
From: info@jouwbedrijf.nl
Return-Path: <www-data@server123.hosting.com>
MAIL FROM: www-data@server123.hosting.comDat is het probleem: het bericht zegt "van jouw bedrijf", maar de echte terugsturroute wijst naar een willekeurige server. Dat is precies hoe phishing-e-mails werken. Mailfilters blokken het.
De oplossing: je moet e-mails door een echte SMTP-server van jouw domein sturen. Niet van je webhosting, maar van een dienst die jouw domein erkent en ondertekent (met SPF en DKIM).
SPF en DKIM: verplicht voor betrouwbaarheid
Sinds februari 2024 eisen Google en Yahoo SPF en DKIM van alle afzenders. Maar dit geldt ook voor Nederlandse providers als Ziggo en KPN — ze volgen dezelfde industriestandaard.
SPF (Sender Policy Framework): een DNS-record dat zegt "e-mails van dit domein mag Server X sturen". Voorbeeld:
DKIM (DomainKeys Identified Mail): een cryptografische handtekening die bewijst dat de e-mail echt van jou afkomt. De SMTP-server tekent de e-mail met een privésleutel; je DNS bevat de publieke sleutel. Mailfilters verifiëren de handtekening en vertrouwen je meer.
Beide records zet je in je DNS-beheer (bij je domeinnaam-registrar of hostingprovider). Contact Form 7 zelf kan dit niet doen — je hebt een echte SMTP-verbinding nodig.
Stap-voor-stap fix: WP Mail SMTP plugin
De meest praktische oplossing voor WordPress is de WP Mail SMTP-plugin. Deze vervangt de standaard wp_mail()-functie en stuurt alles via een externe SMTP-server. Hier hoe je het doet:
- Installeer WP Mail SMTP. Ga naar Plugins → Add New, zoek op "WP Mail SMTP", installeer en activeer. (Gratis versie is prima voor de meeste sites.)
- Kies een SMTP-provider. Je hebt een paar opties:
- SendGrid: populair, veel gratis e-mails per maand, goed voor Nederlands business.
- Brevo (MailerBravo): Nederlands gericht, goede support, CRM ingebouwd.
- Google Workspace SMTP: als je al Google Workspace gebruikt (zakelijk Gmail).
- Je hostingprovider: soms biedt je host ook SMTP-toegang aan; vraag naar "authenticated SMTP" met je domein.
- Vul SMTP-gegevens in WP Mail SMTP. Ga naar Settings → WP Mail SMTP:
- SMTP Host:
smtp.sendgrid.net(afhankelijk van je provider) - Port: 587 (TLS) of 465 (SSL)
- Username:
apikeyof je e-mailadres - Password: je API-key of wachtwoord
- From Email:
info@jouwbedrijf.nl(moet op jouw domein zijn!) - From Name: je bedrijfsnaam
- SMTP Host:
- Stel SPF en DKIM in bij je SMTP-provider. De provider geeft je de DNS-records die je in je domein-DNS moet zetten. Dit klinkt ingewikkeld, maar het is één keer werk.
- Test het. Verstuur een test-e-mail via je formulier en controleer of die aankomt (niet in spam). Gebruik onze gratis inbox placement test om zeker te weten dat het goed zit.
Return-Path en MAIL FROM nu op jouw domein wijzen, niet op de server. Veel hostingproblemen worden voorkomen met deze voorbereiding.Testen met onze gratis inbox placement test
Hoe weet je zeker dat je fix werkt? Je kunt natuurlijk test-e-mails naar jezelf versturen, maar je ziet alleen je eigen Gmail/Outlook. Wat gebeurt er als je bericht naar een Ziggo-adres gaat? Of naar KPN? Daar zie je het niet.
Daarom hebben we check.live-direct-marketing.online gebouwd: een gratis tool voor het testen van e-mailbezorging. Je voert je formulier-e-mail in, wij sturen deze naar ons netwerk van seed-adressen (Gmail, Outlook, Ziggo, KPN, iCloud en meer), en je ziet meteen in welke folder het land (Inbox, Spam, of niet ontvangen). Plus: je ziet de SPF/DKIM/DMARC-status en schermafbeeldingen hoe je e-mail eruit ziet in de echte mailbox.
Dit is oneindig sterker dan "ik heb het naar mezelf gestuurd en het werkt".
Veelgestelde vragen
Welke SMTP-provider moet ik kiezen voor Contact Form 7?
Dat hangt af van je volume en budget. SendGrid (gratis tot 100/dag) en Brevo (Nederlands, CRM inbegrepen) zijn populair. Als je klein bedrijf bent, kan ook Google Workspace SMTP (zakelijk Gmail) volstaan. Vraag je hostingprovider ook naar "authenticated SMTP" — soms bieden zij het gratis aan.
Let op: goedkope bulk-SMTP-diensten hebben soms slechte reputatie. Vermijd aanbieders die niet eisen dat jij SPF/DKIM instelt — dat wijst op lakse praktijken.
Waarom zegt mijn hostingprovider dat SMTP al werkt?
Veel hosters bieden lokale SMTP inderdaad aan (via postfix op de server). Maar dat is niet hetzelfde als authenticated SMTP met jouw domein. De lokale mail-functie stuurt voorbij je domein-reputatie, direct van de server.
Wat je nodig hebt: SMTP met SPF/DKIM-ondersteuning en de mogelijkheid om je From-adres op jouw domeinnaam in te stellen. Vraag je hoster of zij dit aanbieden, of schakel over naar een gespecialiseerde SMTP-provider.
Hoe controleer ik of mijn SPF-record goed staat?
Je hebt twee manieren:
- DNS-checker online. Google "SPF record checker" en voer je domein in. Dit laat je huidige SPF-record zien.
- E-mail header-check. Verzend een test-e-mail via Contact Form 7. Open die e-mail in Gmail/Outlook, klik "Show original" (Gmail) of "Message > Actions > View Message Source" (Outlook), en zoek op "SPF". Je ziet dan "SPF: PASS" (goed) of "SPF: FAIL" (nog niet juist).
Als het nog niet werkt, dan heb je waarschijnlijk je SMTP-provider-record niet goed in je DNS gezet, of moet je wachten op DNS-propagatie (tot 48 uur, meestal sneller).