WordPress Kontaktformular sendet nicht: Ursachen finden und Fehler beheben
Wenn Dein WordPress-Kontaktformular nicht sendet, kann das mehrere Ursachen haben: eine fehlerhafte Formular-Konfiguration, ein Problem beim Versand von E-Mails, eine falsche Empfängeradresse oder eine Sicherheits- und Hosting-Einstellung. In diesem Ratgeber erfährst Du, wie Du den Fehler systematisch eingrenzt, welche Prüfungen Du selbst durchführen kannst und wann eine technische Analyse sinnvoll ist.
Passende WordPress Hilfe zum Thema
Was bedeutet „WordPress Kontaktformular sendet nicht“?
Der Fehler kann sich auf unterschiedliche Weise zeigen. Nach dem Klick auf den Absende-Button passiert scheinbar nichts, eine Fehlermeldung erscheint, der Nutzer sieht zwar eine Erfolgsmeldung, aber die E-Mail kommt nicht an. Auch eine Weiterleitung auf eine leere Seite oder ein dauerhaft drehendes Ladesymbol kann auf ein Problem beim Formularversand hinweisen.
Wichtig ist zunächst die Unterscheidung zwischen dem Formular selbst und dem anschließenden E-Mail-Versand. Ein Kontaktformular besteht meist aus mehreren technischen Schritten:
- Der Besucher füllt die Felder aus und sendet die Anfrage ab.
- WordPress oder ein Formular-Plugin prüft die Eingaben.
- Die Daten werden verarbeitet und gegebenenfalls gespeichert.
- WordPress erzeugt eine E-Mail.
- Der Server übergibt diese E-Mail an eine Versandfunktion oder einen SMTP-Dienst.
- Der Empfänger-Mailserver nimmt die Nachricht an oder weist sie zurück.
Jeder dieser Schritte kann gestört sein. Deshalb solltest Du nicht sofort das Plugin austauschen, sondern zuerst feststellen, an welcher Stelle die Verarbeitung endet.
Die häufigsten Ursachen im Überblick
| Beobachtung | Mögliche Ursache | Erster sinnvoller Prüfschritt |
|---|---|---|
| Keine Reaktion nach dem Absenden | JavaScript-Fehler, Validierungsproblem oder blockierte Anfrage | Browser-Konsole und Pflichtfelder prüfen |
| Erfolgsmeldung, aber keine E-Mail | Fehler beim WordPress-Mailversand, Spamfilter oder falscher Empfänger | Spam-Ordner und Versandprotokoll prüfen |
| Fehler beim Senden | Server, SMTP, Plugin-Konflikt oder Sicherheitsregel | Fehlermeldung dokumentieren und Logs ansehen |
| Problem erst nach einem Update | Inkompatibilität zwischen Plugin, Theme oder WordPress | Änderungen seit dem letzten funktionierenden Zustand vergleichen |
| Nur bestimmte Felder funktionieren nicht | Fehlerhafte Feldnamen, Bedingungen oder Validierungsregeln | Formularfeld einzeln testen |
Die konkrete Ursache lässt sich ohne Zugriff auf die Website, das verwendete Formular-Plugin und die Serverumgebung nicht zuverlässig vorhersagen. Eine geordnete Prüfung verhindert jedoch, dass Du an mehreren Stellen gleichzeitig Änderungen vornimmst und dadurch die Fehlersuche erschwerst.
Erster Check: Formular, Empfänger und Absender prüfen
Ist das Formular überhaupt korrekt konfiguriert?
Öffne die Einstellungen des verwendeten Formular-Plugins und kontrolliere zunächst die Formularfelder. Achte darauf, dass jedes Feld einen eindeutigen Namen besitzt und Pflichtfelder korrekt definiert sind. Bei bedingten Feldern kann eine falsche Regel dazu führen, dass die Validierung nie erfolgreich abgeschlossen wird.
Prüfe außerdem, ob die Formularaktion tatsächlich auf den E-Mail-Versand eingestellt ist. Manche Plugins können nach dem Absenden nur eine Erfolgsmeldung ausgeben, während die Benachrichtigung deaktiviert oder unvollständig eingerichtet ist. Bei mehreren Formularen solltest Du sicherstellen, dass Du wirklich das Formular auf der betroffenen Seite bearbeitest.
Stimmt die Empfängeradresse?
Eine falsch geschriebene Empfängeradresse ist eine einfache, aber häufig übersehene Ursache. Kontrolliere alle Empfänger, CC- und BCC-Adressen auf Tippfehler und unerwünschte Leerzeichen. Wenn mehrere Empfänger eingetragen sind, teste zunächst nur eine eindeutig erreichbare Adresse.
Vermeide es, die Empfängeradresse dynamisch aus einer unkontrollierten Formulareingabe zu übernehmen. Eine Adresse aus dem Besucherfeld sollte normalerweise als Reply-to-Adresse verwendet werden, nicht als technische Absenderadresse. So bleibt der Absender nachvollziehbar und die Konfiguration entspricht eher den Erwartungen vieler Mailserver.
Ist die Absenderadresse passend zur Domain?
Als Absender sollte möglichst eine Adresse der eigenen Website-Domain verwendet werden, zum Beispiel formular@deine-domain.de. Eine frei eingegebene Adresse des Besuchers als From-Adresse kann zu Problemen bei der Zustellung führen. Für Antworten kannst Du die Besucheradresse in das Reply-to-Feld übernehmen.
Diese Konfiguration ist keine Garantie für die Zustellung. Sie reduziert aber typische Unstimmigkeiten zwischen Website-Domain, Absender und Mailserver. Zusätzlich müssen die DNS-Einstellungen der Domain und die Vorgaben des verwendeten Maildienstes berücksichtigt werden.
Wenn die Erfolgsmeldung erscheint, aber keine E-Mail ankommt
Eine Erfolgsmeldung bedeutet nicht automatisch, dass die Nachricht im Posteingang angekommen ist. Sie kann lediglich anzeigen, dass das Formular die Daten angenommen und die Versandfunktion aufgerufen hat. Die Nachricht kann anschließend im Spamordner landen, vom Server abgewiesen oder gar nicht korrekt übergeben werden.
- Prüfe den Spam- oder Junk-Ordner des Empfängers.
- Kontrolliere, ob die Nachricht an eine andere konfigurierte Adresse gesendet wurde.
- Teste eine zweite Empfängeradresse, die Du sicher abrufen kannst.
- Prüfe, ob Dein Hosting oder Maildienst den Versand von PHP-Mail unterstützt.
- Nutze ein geeignetes Versandprotokoll, sofern Deine technische Umgebung das zulässt.
Wenn der Versand im Protokoll als erfolgreich erscheint, aber keine Zustellung erfolgt, liegt die Ursache möglicherweise außerhalb von WordPress. Dann kommen unter anderem Spamfilter, Richtlinien des Empfängers, fehlende DNS-Einträge oder eine Ablehnung durch den Zielserver infrage.
WordPress-Mailversand und SMTP richtig einordnen

Die Grafik zeigt, dass das Formular nicht direkt einen Posteingang erreicht, sondern mehrere technische Stationen durchläuft. Dadurch wird verständlich, an welcher Stelle Du bei einem Versandproblem suchen solltest.
WordPress verwendet für viele E-Mail-Funktionen die Funktion wp_mail(). Diese Funktion ist keine eigenständige Mailbox und ersetzt keinen vollständigen Mailserver. Sie übergibt die Nachricht an die auf dem Server vorhandene Versandumgebung oder an eine konfigurierte SMTP-Verbindung.
Auf manchen Hosting-Systemen funktioniert der Versand ohne zusätzliche Konfiguration, auf anderen ist die Standardfunktion eingeschränkt oder nicht zuverlässig verfügbar. Auch wenn der Versand früher funktioniert hat, kann sich die Situation nach einem Serverwechsel, einer PHP-Umstellung, einer Änderung des Hosting-Tarifs oder einer Anpassung der Mailserver-Regeln verändern.
Was SMTP verbessert
SMTP steht für Simple Mail Transfer Protocol. Bei einer SMTP-Konfiguration wird der Versand über einen dafür vorgesehenen Mailserver abgewickelt. Dafür werden in der Regel Serveradresse, Port, Verschlüsselung und Zugangsdaten benötigt. Die konkreten Werte hängen vom verwendeten Mailanbieter oder Hosting ab.
Eine SMTP-Lösung kann die Nachvollziehbarkeit des Versands verbessern. Sie beseitigt jedoch nicht automatisch alle Probleme. Falsche Zugangsdaten, ein gesperrtes Konto, eine nicht passende Verschlüsselung oder ein falscher Port können den Versand ebenfalls verhindern.
SMTP sicher konfigurieren
Speichere Zugangsdaten nicht in öffentlich sichtbaren Formularfeldern oder im Theme-Code. Nutze, wenn möglich, sichere Einstellungen des verwendeten Plugins oder serverseitige Konfigurationsmöglichkeiten. Nach einer Änderung solltest Du einen kontrollierten Test durchführen und anschließend prüfen, ob keine Zugangsdaten oder personenbezogenen Formulardaten in Debug-Ausgaben oder Protokollen sichtbar sind.
JavaScript, AJAX und Browserfehler prüfen
Viele moderne Kontaktformulare senden die Daten per AJAX, ohne die gesamte Seite neu zu laden. Dafür ist JavaScript erforderlich. Ein Fehler in einem anderen Plugin, im Theme oder in einer optimierten JavaScript-Datei kann verhindern, dass der Absendevorgang überhaupt abgeschlossen wird.
Öffne die betroffene Seite in einem aktuellen Browser und rufe die Entwicklerwerkzeuge auf. In der Konsole können JavaScript-Fehler erscheinen. Im Bereich „Netzwerk“ lässt sich häufig erkennen, ob beim Absenden eine Anfrage ausgelöst wird und welchen Status der Server zurückgibt.
Typische Hinweise sind ein Statuscode aus dem Fehlerbereich, eine blockierte Anfrage oder eine Antwort, die nicht dem erwarteten Format entspricht. Auch ein Konflikt durch JavaScript-Minifizierung, Zusammenführung oder verzögertes Laden kann relevant sein. Deaktiviere Optimierungen nicht dauerhaft unkontrolliert, sondern teste gezielt und dokumentiere jede Änderung.
Ein sinnvoller Browser-Test
- Leere den Browser-Cache oder öffne ein privates Fenster.
- Fülle das Formular mit Testdaten aus, die keine sensiblen Informationen enthalten.
- Prüfe, ob eine sichtbare Validierungsfehlermeldung erscheint.
- Sieh in der Browser-Konsole nach JavaScript-Fehlern.
- Prüfe im Netzwerkbereich, ob die Absendeanfrage ausgelöst wird.
- Wiederhole den Test auf einem zweiten Gerät oder in einem zweiten Browser.
Funktioniert das Formular nur in einem Browser nicht, deutet das eher auf ein clientseitiges Problem hin. Tritt der Fehler überall auf, solltest Du zusätzlich Server, Plugin und Versandkonfiguration untersuchen.
Plugin- und Theme-Konflikte systematisch eingrenzen
Kontaktformulare greifen oft auf JavaScript, CSS, REST-Endpunkte oder WordPress-Hooks zurück. Andere Plugins können dieselben Bereiche verändern. Häufige Konfliktkandidaten sind Cache- und Optimierungsplugins, Sicherheitsplugins, Cookie- oder Consent-Lösungen sowie Plugins, die Formulare oder REST-Anfragen filtern.
Auch das Theme kann eine Rolle spielen, etwa wenn es eigene Formularskripte einbindet oder notwendige WordPress-Funktionen verändert. Ein Konflikt sollte möglichst in einer Staging-Umgebung geprüft werden. Wenn keine Staging-Umgebung vorhanden ist, ist besondere Vorsicht nötig, weil das Deaktivieren von Plugins auf einer produktiven Website sichtbare Auswirkungen haben kann.
Vorgehen bei einem Konflikttest
- Erstelle ein aktuelles, wiederherstellbares Backup.
- Notiere WordPress-, Plugin- und Theme-Versionen sowie den Zeitpunkt des Fehlers.
- Teste zunächst das Formular mit möglichst wenigen aktiven Zusatzfunktionen.
- Deaktiviere verdächtige Plugins einzeln statt alle gleichzeitig.
- Teste nach jeder Änderung erneut.
- Aktiviere die Komponenten anschließend wieder und dokumentiere den Auslöser.
Bei sicherheitsrelevanten Plugins solltest Du nicht einfach dauerhaft auf den Schutz verzichten. Wenn ein Plugin den Fehler verursacht, ist eine kompatible Konfiguration oder ein Update meist sinnvoller als eine dauerhafte Deaktivierung.
Updates, PHP und Serverumgebung untersuchen
Wenn das WordPress-Kontaktformular nach einem Update nicht mehr sendet, vergleiche den letzten funktionierenden Zustand mit der aktuellen Installation. Wurde WordPress aktualisiert? Gab es ein Plugin- oder Theme-Update? Wurde die PHP-Version geändert? Hat der Hoster die Mailserver-Konfiguration angepasst?
Ein Update kann einen Fehler beheben, aber auch eine bisher tolerierte Inkompatibilität sichtbar machen. Deshalb sollten WordPress, Plugins und Themes grundsätzlich aktuell gehalten werden. Vor umfangreicheren Änderungen empfiehlt sich ein Backup und, wenn verfügbar, ein Test auf Staging.
Prüfe außerdem die Servervoraussetzungen des Formular-Plugins. Dazu gehören die unterstützte PHP-Version, verfügbare PHP-Erweiterungen, Speicherlimits und mögliche Sicherheitsfilter. Fehlende oder veraltete Komponenten können dazu führen, dass das Formular zwar angezeigt wird, die Verarbeitung aber fehlschlägt.
Logs statt Vermutungen nutzen
Technische Fehlerprotokolle können zeigen, ob beim Absenden ein PHP-Fehler, eine blockierte Anfrage oder ein Problem mit einer Schnittstelle auftritt. Aktiviere Debugging nur kontrolliert und achte darauf, keine sensiblen Daten öffentlich auszugeben. Debug-Ausgaben sollten nicht dauerhaft auf einer produktiven Website sichtbar sein.
Zusätzlich können Server- und Hosting-Logs wichtige Hinweise liefern. Wenn dort eine Anfrage abgewiesen wird, kann der Hoster oder die Serverkonfiguration die entscheidende Ursache sein. Bei einem HTTP-Fehler solltest Du den Statuscode, den Zeitpunkt und die betroffene URL dokumentieren, ohne personenbezogene Formulardaten weiterzugeben.
Sicherheits- und Spam-Schutz als mögliche Ursache
Kontaktformulare sind ein häufiges Ziel automatisierter Spam-Anfragen. Deshalb setzen viele Websites Captcha-Lösungen, Honeypot-Felder, Rate-Limits oder Sicherheitsplugins ein. Eine zu strenge Regel kann jedoch auch echte Besucher blockieren.
Wenn der Versand nur bei bestimmten Eingaben oder aus bestimmten Netzwerken scheitert, untersuche die Sicherheitsprüfung. Prüfe, ob ein Token abläuft, ein Captcha nicht geladen wird oder eine Anfrage von einer Firewall abgewiesen wird. Auch eine fehlerhafte Domain- oder Site-Key-Konfiguration kann dazu führen, dass die Validierung nicht abgeschlossen wird.
Reduziere den Spamschutz nicht einfach vollständig. Teste stattdessen, ob die Lösung korrekt eingebunden ist, ob die verwendete Domain freigeschaltet wurde und ob Fehlermeldungen für Nutzer verständlich angezeigt werden. Formulare sollten außerdem nur die Daten abfragen, die für die Anfrage tatsächlich erforderlich sind.
Datenschutz und Formularverarbeitung berücksichtigen
Bei einem Kontaktformular werden meist personenbezogene Daten verarbeitet. Dazu können Name, E-Mail-Adresse, Nachricht und technische Metadaten gehören. Die konkrete rechtliche Bewertung hängt von der Website, dem Zweck der Verarbeitung und der eingesetzten Technik ab. Technisch solltest Du jedoch nachvollziehbar dokumentieren, welche Daten wohin übertragen und wie lange sie gespeichert werden.
Prüfe, ob das Formular Daten in der WordPress-Datenbank speichert, an einen externen Dienst übermittelt oder nur per E-Mail versendet. E-Mail ist kein vollständig kontrollierter Transportweg. Wenn Nachrichten gespeichert werden, müssen Zugriffsrechte, Backups und Löschkonzepte berücksichtigt werden. Logs und Debugging-Ausgaben dürfen keine unnötigen Inhalte oder Zugangsdaten enthalten.
Praxisbeispiel: Fehler nach einem Plugin-Update
Angenommen, Dein Formular hat bis zu einem Plugin-Update funktioniert. Danach erscheint beim Absenden eine Fehlermeldung. Ein sinnvoller Ablauf wäre, zunächst die genaue Meldung und den Zeitpunkt zu dokumentieren. Danach prüfst Du, ob die Formularfelder unverändert sind und ob ein Update des Formular-Plugins, des Themes oder eines Optimierungsplugins zeitgleich stattgefunden hat.
Auf einer Staging-Umgebung kannst Du die Komponenten einzeln vergleichen. Wenn das Formular nach dem Zurücksetzen des Optimierungsplugins wieder funktioniert, liegt wahrscheinlich ein Konflikt bei JavaScript oder AJAX vor. Anschließend sollte geprüft werden, ob eine Einstellung angepasst werden kann oder ob eine kompatible Version des Plugins benötigt wird. Ein dauerhaftes Zurückhalten von Sicherheits- oder WordPress-Updates ist keine gute Standardlösung.
Typische Fehler und passende Lösungen
| Fehler | Warum er problematisch ist | Mögliche Lösung |
|---|---|---|
| Besucheradresse als Absender verwenden | Die Absenderdomain passt nicht zur Website oder zum Versandserver. | Domainbasierte Absenderadresse nutzen und Besucheradresse als Reply-to setzen. |
| Nur den Posteingang prüfen | Die Nachricht kann im Spamordner oder in einer Quarantäne liegen. | Alle relevanten Filter und Versandprotokolle kontrollieren. |
| Alle Plugins gleichzeitig deaktivieren | Die Ursache bleibt unklar und Funktionen können ausfallen. | Komponenten einzeln und möglichst auf Staging testen. |
| Debugging dauerhaft aktiv lassen | Technische Details oder sensible Daten könnten sichtbar werden. | Debugging kontrolliert einsetzen und danach wieder sicher konfigurieren. |
| WordPress-Core-Dateien ändern | Änderungen werden bei Updates überschrieben und erschweren Wartung. | Hooks, Filter, Child Theme oder ein eigenes Plugin verwenden. |
| Formular ohne Testbetrieb ändern | Fehler können unbemerkt bleiben und Anfragen verloren gehen. | Nach Änderungen mit nicht sensiblen Testdaten und mehreren Szenarien prüfen. |
Eine praktische Checkliste zur Fehlersuche
Mit der folgenden Reihenfolge kannst Du viele Ursachen strukturiert eingrenzen:
- Öffne die Seite und prüfe, ob das Formular vollständig geladen wird.
- Teste Pflichtfelder, Fehlermeldungen und die Erfolgsmeldung.
- Kontrolliere Empfänger, Absender, Reply-to und Betreff in den Plugin-Einstellungen.
- Prüfe Spamordner und alternative Empfängeradressen.
- Untersuche Browser-Konsole und Netzwerkbereich auf JavaScript- oder AJAX-Fehler.
- Prüfe SMTP- oder Server-Mailkonfiguration, falls kein Versandprotokoll vorhanden ist.
- Vergleiche Updates und Änderungen mit dem letzten funktionierenden Zustand.
- Führe einen Plugin- und Theme-Konflikttest auf Staging oder mit geeigneten Sicherheitsmaßnahmen durch.
- Sieh in WordPress-, Plugin- und Server-Logs nach technischen Hinweisen.
- Dokumentiere die Ursache und die funktionierende Konfiguration für spätere Wartungsarbeiten.
Bei jedem Test solltest Du nur eine wesentliche Variable verändern. Verwende keine echten vertraulichen Inhalte und lösche Testdaten wieder, wenn sie gespeichert wurden. So bleibt die Analyse nachvollziehbar und unnötige Datenschutzrisiken werden vermieden.
Wann professionelle WordPress Hilfe sinnvoll ist
Unterstützung ist besonders sinnvoll, wenn der Fehler nur sporadisch auftritt, mehrere Systeme beteiligt sind oder die Website geschäftlich wichtige Anfragen verarbeitet. Das gilt auch, wenn Du keinen Zugriff auf Server- oder Mailprotokolle hast, die Konfiguration nicht gefahrlos auf der Live-Website testen kannst oder nach einem Update mehrere Funktionen gleichzeitig betroffen sind.
Für eine effiziente Analyse solltest Du den verwendeten Formular-Plugin-Namen, die Versionen, die betroffene URL, den genauen Zeitpunkt, die sichtbare Fehlermeldung und bereits durchgeführte Tests bereithalten. Teile keine Passwörter oder unnötigen personenbezogenen Formulardaten. Zugangsdaten sollten nur über geeignete, sichere Wege und mit den erforderlichen Berechtigungen bereitgestellt werden.
FAQ
Warum zeigt mein WordPress-Kontaktformular eine Erfolgsmeldung, obwohl keine E-Mail ankommt?
Die Erfolgsmeldung bestätigt häufig nur, dass das Formular die Eingabe verarbeitet oder den Versand angestoßen hat. Die Nachricht kann anschließend im Spamordner landen, vom Server abgewiesen werden oder an eine falsch konfigurierte Adresse gehen. Prüfe Empfänger, Spamfilter, Mailversand und gegebenenfalls ein Versandprotokoll.
Benötige ich für jedes WordPress-Kontaktformular SMTP?
Nicht zwingend. Ob der Versand ohne SMTP funktioniert, hängt unter anderem von Hosting und Serverkonfiguration ab. Eine passende SMTP-Konfiguration kann den Versand über einen definierten Mailserver ermöglichen, muss aber korrekt eingerichtet und sicher verwaltet werden.
Was kann ich tun, wenn der Absende-Button keine Reaktion zeigt?
Prüfe zunächst Pflichtfelder und sichtbare Validierungshinweise. Öffne danach die Browser-Entwicklerwerkzeuge und untersuche Konsole sowie Netzwerkbereich. JavaScript-Fehler, blockierte AJAX-Anfragen, Captcha-Probleme oder Plugin-Konflikte sind mögliche Ursachen.
Kann ein Cache-Plugin den Formularversand stören?
Ja, bestimmte Optimierungen können JavaScript-Dateien verändern, verzögert laden oder zusammenfassen. Auch zwischengespeicherte Formularseiten und Sicherheitsregeln können eine Rolle spielen. Teste Optimierungsfunktionen gezielt und schließe dynamische Formularbereiche nur dann vom Cache aus, wenn das technisch erforderlich ist.
Wie finde ich heraus, ob ein anderes Plugin den Fehler verursacht?
Erstelle zuerst ein Backup und teste möglichst auf Staging. Deaktiviere verdächtige Plugins einzeln und prüfe das Formular nach jeder Änderung. So lässt sich der Auslöser besser eingrenzen, als wenn alle Plugins gleichzeitig deaktiviert werden.
Ist ein WordPress-Update die Ursache, wenn das Formular danach nicht mehr funktioniert?
Das ist möglich, aber nicht automatisch der Fall. Auch ein zeitgleich aktualisiertes Plugin, Theme, eine PHP-Version oder eine Serverregel kann verantwortlich sein. Vergleiche die Änderungen und untersuche Logs, Browserfehler und Kompatibilität systematisch.
Warum sollte ich die Besucheradresse nicht als Absender verwenden?
Die Besucheradresse kann zu einer anderen Domain gehören und dadurch nicht zur Versandkonfiguration Deiner Website passen. Das kann die Zustellung erschweren. Verwende eine eigene Domainadresse als Absender und setze die Besucheradresse, sofern das Plugin es unterstützt, als Reply-to-Adresse.
Fazit
Wenn Dein WordPress-Kontaktformular nicht sendet, liegt die Ursache nicht zwangsläufig im Formular selbst. Prüfe zuerst Konfiguration, Empfänger und Absender, untersuche anschließend den WordPress- und SMTP-Versand und berücksichtige danach Browserfehler, Plugin-Konflikte, Updates, Sicherheitsprüfungen und die Serverumgebung.
Arbeite mit Backups, ändere immer nur eine wesentliche Einstellung und dokumentiere die Ergebnisse. Wenn wichtige Anfragen verloren gehen könnten oder Server- und Mailprotokolle fehlen, ist eine strukturierte technische Analyse der sinnvollere nächste Schritt als zufälliges Austauschen von Plugins.

