← Zurück zum Blog
WordPressContact Form 7SpamBot-Schutz

Spam in Contact Form 7 gezielt reduzieren

Marc Wagner·5. Oktober 2026·6 Min. Lesezeit

Welches Problem haben Sie?

Drei Fälle sehen ähnlich aus, haben aber verschiedene Ursachen:

  • Spam kommt an. Ihr Postfach füllt sich mit Werbung, Links oder sinnlosem Text. Das Formular lässt Bots durch.
  • Das Formular meldet einen Fehler. Besucher sehen „There was an error trying to send your message. Please try again later.“ (auf deutschsprachigen Seiten in der übersetzten Fassung). Das kann eine Spam-Abwehr sein oder ein Problem beim Mailversand.
  • Echte Anfragen fehlen. Niemand beschwert sich, aber es kommt auch nichts an. Dann weist ein Schutz womöglich Menschen ab, oder die Mails erreichen Ihr Postfach nicht.

Bestimmen Sie zuerst den Fall, bevor Sie einen Schutz einbauen. Wie das geht, steht im Abschnitt „Mailzustellung oder Botschutz?“.

Was Contact Form 7 selbst mitbringt

Contact Form 7 hat mehrere Maßnahmen gegen Spam eingebaut (geprüft an Version 6.1.7):

  • Sperrliste. CF7 prüft jede Absendung gegen die Liste unter „Einstellungen → Diskussion“ (englisch „Disallowed Comment Keys“). Ein Treffer gilt als Spam. Das hilft gegen wiederkehrende Wörter und Domains, nicht gegen neue Texte.
  • Quiz-Feld. Mit dem Tag [quiz] stellt das Formular eine Frage, die Sie selbst festlegen. Bots, die beliebige Formulare ausfüllen, scheitern daran; Bots, die gezielt Ihre Seite angreifen, nicht.
  • Akismet. Mit dem Akismet-Plugin und einem Akismet-Schlüssel prüft CF7 Name, E-Mail-Adresse und Text über den Dienst Akismet.
  • reCAPTCHA v3. CF7 lädt das Skript von Google und weist Absendungen unter einer Score-Schwelle ab.
  • Cloudflare Turnstile. CF7 bindet Turnstile ein; das Skript kommt von Cloudflare.

Sperrliste und Quiz kommen ohne fremden Dienst aus. Akismet, reCAPTCHA und Turnstile senden Daten Ihrer Besucher an den jeweiligen Anbieter, und das gehört in Ihre Datenschutzerklärung.

Wann zusätzlicher Botschutz sinnvoll ist

Ein eigener Botschutz lohnt sich, wenn

  • trotz Sperrliste und Quiz weiter Spam ankommt,
  • Sie keine Skripte von Google oder Cloudflare laden möchten,
  • Sie bei jeder abgewiesenen Absendung sehen möchten, warum sie abgewiesen wurde.

Reicht das Quiz für Ihr Formular, brauchen Sie nichts weiter. Ein Schutz, den niemand braucht, ist nur eine weitere Fehlerquelle.

SilentShield für Contact Form 7 einrichten

Das offizielle Plugin „SilentShield – Captcha & Anti-Spam“ schützt Contact Form 7 ohne eigenen Code. Wir haben es mit Contact Form 7 6.1.7 und WordPress 7.0 geprüft.

  1. Installieren und aktivieren Sie das Plugin aus dem WordPress-Verzeichnis.
  2. Tragen Sie unter „SilentShield → API / SilentShield“ Ihren Schlüssel ein, klicken Sie auf „Validate“, schalten Sie „Activate API“ ein und speichern Sie.
  3. Schalten Sie unter „SilentShield → Forms“ Contact Form 7 ein.

Die Seite muss über https laufen, sonst lässt sich das Formular nicht absenden. Alle Schritte und die geprüften Formular-Plugins stehen in der WordPress-Anleitung. Jede Absendung zählt zum Kontingent, siehe Preise und Kontingente.

Echte Absendungen und Fehlversuche testen

Eine echte Absendung: Öffnen Sie die Seite in einem privaten Fenster, füllen Sie das Formular von Hand aus und senden Sie es ab. Erwartet ist die grün umrandete Bestätigung von CF7.

Ein Fehlversuch: Senden Sie dasselbe Formular ohne Browser an die Schnittstelle von CF7. Die Formular-ID und den Wert für _wpcf7_unit_tag finden Sie im Quelltext der Seite, in den versteckten Feldern des Formulars.

curl -X POST "https://example.com/?rest_route=/contact-form-7/v1/contact-forms/123/feedback" \
  -F "_wpcf7=123" -F "_wpcf7_unit_tag=wpcf7-f123-p45-o1" -F "_wpcf7_container_post=45" \
  -F "your-name=Test" -F "[email protected]" -F "your-message=Test"

Erwartet ist eine Antwort mit "status":"spam". Mit SilentShield lautet die Meldung „Behavior check“.

Mailzustellung oder Botschutz?

In Contact Form 7 haben „Spam“ und „Mail konnte nicht gesendet werden“ denselben Standardtext. Unterscheiden lassen sich die beiden an zwei Stellen:

  • Rahmenfarbe der Meldung: Orange heißt Spam, Rot heißt, dass der Mailversand gescheitert ist, solange Ihr Theme die Farben von CF7 nicht überschreibt.
  • Antwort im Browser: In den Entwicklerwerkzeugen (Reiter Netzwerk) steht in der Antwort auf feedback der status, also spam oder mail_failed.

Ist es mail_failed, hat der Botschutz die Absendung durchgelassen; das Problem liegt beim Mailversand von WordPress. Prüfen Sie dann die Mail-Einstellungen, etwa mit einem SMTP-Plugin. Ist es spam, hat eine Schutzmaßnahme abgewiesen. Bei SilentShield nennt die Meldung den Grund, etwa „Behavior check“.

Grenzen

  • Kein Schutz hält Spam fern, den ein Mensch von Hand schreibt.
  • Ohne JavaScript im Browser wird eine Absendung an einem geschützten Formular abgewiesen.
  • SilentShield schützt Formulare vor Bots. Es ersetzt keine Web Application Firewall und keinen DDoS-Schutz.

Formularschutz einrichten

Verwandte Seiten

Bereit, CAPTCHA loszuwerden?

Schützen Sie Ihre Formulare — unsichtbar. Keine Kreditkarte erforderlich.