Praxis-Tipps

Kontaktformulare und DSGVO: So machst du sie rechtssicher

Kontaktformulare DSGVO-konform umsetzen: Rechtsgrundlage, Pflichtangaben, Datensparsamkeit, Captcha-Alternativen und technische Umsetzung mit Code-Beispiel.

Compliso Team
7 Min. Lesezeit

Kontaktformulare gehören zu den am häufigsten falsch umgesetzten Elementen auf deutschen Websites. Der Grund: Viele Website-Betreiber glauben, sie bräuchten eine explizite Einwilligung per Checkbox — tatsächlich ist das in den meisten Fällen nicht nur unnötig, sondern kann sogar kontraproduktiv sein.

In diesem Artikel klären wir die Rechtsgrundlage, zeigen die technischen Anforderungen und liefern ein konkretes Code-Beispiel für ein DSGVO-konformes Kontaktformular.

Rechtsgrundlage: Einwilligung ist meist nicht nötig

Das größte Missverständnis zuerst: Für ein normales Kontaktformular brauchst du keine Einwilligung (Art. 6 Abs. 1 lit. a DSGVO). Stattdessen kommen zwei andere Rechtsgrundlagen in Frage:

Berechtigtes Interesse (Art. 6 Abs. 1 lit. f DSGVO)

Wenn ein Website-Besucher dein Kontaktformular ausfüllt, hat er ein eigenes Interesse an der Kommunikation. Dein berechtigtes Interesse, auf die Anfrage zu antworten, überwiegt die Interessen des Absenders — schließlich hat er die Kontaktaufnahme selbst initiiert.

Vorvertragliche Maßnahmen (Art. 6 Abs. 1 lit. b DSGVO)

Wenn das Kontaktformular dazu dient, eine Angebotsanfrage zu stellen oder einen Vertrag anzubahnen (z.B. “Unverbindliches Angebot anfordern”), greift die Rechtsgrundlage der vorvertraglichen Maßnahmen.

Warum eine Einwilligungs-Checkbox problematisch sein kann

Eine Checkbox “Ich willige in die Verarbeitung meiner Daten ein” klingt nach mehr Sicherheit, kann aber rechtliche Nachteile haben:

  1. Widerrufsrecht: Eine Einwilligung kann jederzeit widerrufen werden (Art. 7 Abs. 3 DSGVO). Dann müsstest du alle bereits erhaltenen Daten löschen — auch wenn du die Anfrage noch bearbeitest
  2. Freiwilligkeit: Wenn der Nutzer das Formular nur mit Checkbox absenden kann, ist die Einwilligung nicht freiwillig (Kopplungsverbot, Art. 7 Abs. 4 DSGVO)
  3. Rechtsunsicherheit: Zwei Rechtsgrundlagen gleichzeitig (Einwilligung + berechtigtes Interesse) führen zu Verwirrung in der DSE

Empfehlung: Setze auf berechtigtes Interesse oder vorvertragliche Maßnahmen und informiere über die Datenverarbeitung mit einem Hinweis (nicht mit einer Einwilligungs-Checkbox).

Checkbox: Kenntnisnahme statt Einwilligung

Statt einer Einwilligungs-Checkbox empfiehlt sich ein Kenntnisnahme-Hinweis. Der Unterschied ist juristisch relevant:

EinwilligungKenntnisnahme
RechtsgrundlageArt. 6 Abs. 1 lit. a DSGVOArt. 6 Abs. 1 lit. f oder b DSGVO
Widerrufbar?Ja, jederzeitNein (kein Widerrufsrecht, aber Widerspruchsrecht)
Checkbox nötig?Ja (Nachweis der Einwilligung)Optional (reiner Hinweis)
Text”Ich willige ein, dass…""Hinweis: Informationen zur Verarbeitung deiner Daten findest du in unserer Datenschutzerklärung.”
Pflichtfeld?JaNein (wenn nur Hinweis)

Wenn du dennoch eine Checkbox einsetzen möchtest (aus Transparenzgründen), formuliere sie als Kenntnisnahme:

[x] Ich habe die Datenschutzerklärung zur Kenntnis genommen.

Nicht:

[x] Ich willige in die Verarbeitung meiner Daten ein.

SSL/TLS-Pflicht für Formulare

Art. 32 DSGVO verlangt “geeignete technische Maßnahmen” zum Schutz personenbezogener Daten. Das TDDDG (SS 19 Abs. 4) konkretisiert: Wer Telemedien bereitstellt, muss durch technische und organisatorische Vorkehrungen sicherstellen, dass die Nutzung gegen Kenntnisnahme Dritter geschützt ist.

Konkret bedeutet das:

  • Das Kontaktformular muss über HTTPS erreichbar sein
  • Der Formular-Submit (POST-Request) muss verschlüsselt erfolgen
  • Mixed Content (HTTPS-Seite, aber HTTP-Submit-URL) ist ein Verstoß
  • Ein gültiges SSL-Zertifikat muss vorliegen (kein selbstsigniertes Zertifikat)

Prüfe im Quelltext, ob die action-URL des Formulars HTTPS verwendet:

<!-- Richtig -->
<form action="https://example.com/kontakt" method="POST">

<!-- Falsch -->
<form action="http://example.com/kontakt" method="POST">

<!-- Richtig (relativer Pfad, übernimmt Protokoll der Seite) -->
<form action="/kontakt" method="POST">

Datensparsamkeit: Welche Felder sind erlaubt?

Art. 5 Abs. 1 lit. c DSGVO schreibt Datensparsamkeit vor: Es dürfen nur Daten erhoben werden, die für den Zweck der Verarbeitung erforderlich sind.

Pflichtfelder im Kontaktformular

FeldErforderlich?Begründung
E-Mail-AdresseJaFür die Antwort zwingend nötig
NachrichtJaZweck des Formulars
NameBedingtFür persönliche Anrede sinnvoll, aber nicht zwingend nötig
TelefonnummerNeinNur als optionales Feld, wenn Rückruf gewünscht
FirmaNeinNur bei B2B-Formularen als Pflichtfeld vertretbar
AdresseNeinFür Kontaktanfragen nicht erforderlich
GeburtsdatumNeinFür Kontaktanfragen nie erforderlich

Faustregel: Jedes Pflichtfeld musst du in der DSE begründen können. Wenn du nicht erklären kannst, warum du das Feld brauchst, ist es ein optionales Feld — oder sollte ganz entfallen.

Optionale Felder müssen klar als solche gekennzeichnet sein (z.B. “Telefonnummer (optional)”).

Captcha und Datenschutz

Spam-Schutz ist legitim, aber nicht jede Lösung ist DSGVO-konform. Google reCAPTCHA (v2 und v3) überträgt Nutzerdaten an Google in die USA, setzt Cookies und erstellt Nutzerprofile. Ohne Einwilligung ist der Einsatz ein DSGVO-Verstoß — die bayerische Datenschutzbehörde (BayLDA) hat dies 2023 in mehreren Verfahren beanstandet.

Datenschutzfreundliche Alternativen

LösungDatenschutzEffektivitätAufwand
Honeypot-FelderKein Datenversand, DSGVO-unproblematischGut gegen einfache BotsGering
hCaptchaServer in USA, aber privacy-fokussierter als GoogleGutMittel
Friendly CaptchaServer in der EU, DSGVO-konformSehr gutMittel
Zeitbasierte PrüfungKein DatenversandGut gegen einfache BotsGering
Custom Math-CaptchaKein externer DienstMäßigGering

Honeypot-Implementierung

Ein Honeypot-Feld ist unsichtbar für Nutzer, wird aber von Bots ausgefüllt. Keine externen Dienste, keine Cookies, kein Datentransfer:

<!-- Visuell versteckt, aber für Bots sichtbar -->
<div style="position: absolute; left: -9999px;" aria-hidden="true">
  <label for="website">Website (nicht ausfüllen)</label>
  <input type="text" id="website" name="website" tabindex="-1" autocomplete="off" />
</div>
// Serverseitig: Wenn das Honeypot-Feld ausgefüllt ist, ist es Spam
if (req.body.website) {
  // Spam -- leise ablehnen, keine Fehlermeldung
  return res.status(200).json({ success: true });
}

Speicherdauer und Löschfristen

Art. 5 Abs. 1 lit. e DSGVO verlangt eine begrenzte Speicherdauer. Für Kontaktformulardaten gibt es keine feste Frist, aber folgende Orientierung:

SituationEmpfohlene Speicherdauer
Allgemeine Anfrage beantwortet6 Monate nach letztem Kontakt
Angebotsanfrage ohne Vertragsabschluss6 Monate nach letztem Kontakt
Reklamation / Beschwerde3 Jahre (Verjährungsfrist SS 195 BGB)
Vertragsanbahnung mit AbschlussDauer des Vertragsverhältnisses + Aufbewahrungsfristen

Wichtig: Dokumentiere deine Löschfristen in einem Löschkonzept und setze technische Maßnahmen zur automatischen Löschung um.

E-Mail-Weiterleitung und Autoresponder

Weiterleitung per E-Mail

Wenn das Formular die Daten per E-Mail weiterleitet, gilt:

  • Der E-Mail-Server muss TLS-Verschlüsselung unterstützen (Transportverschlüsselung)
  • Interne Weiterleitung: Firmen-E-Mail-Server genügt
  • Externe Weiterleitung (z.B. an Gmail): AVV mit dem E-Mail-Anbieter nötig

Autoresponder DSGVO-konform

Automatische Antwort-E-Mails sind zulässig, wenn sie sich auf die Kontaktanfrage beziehen. Sie dürfen keine Werbung oder Newsletter-Anmeldung enthalten. Ein guter Autoresponder enthält:

  • Eingangsbestätigung (“Wir haben deine Nachricht erhalten”)
  • Voraussichtliche Bearbeitungszeit
  • Hinweis auf die DSE
  • Keine Produktwerbung, Gutscheine oder Cross-Selling

Formular-Builder im Vergleich

ToolDSGVO-KonformitätServer-StandortAVV verfügbar
Contact Form 7 (WP)Gut (Self-Hosted)Eigener ServerNicht nötig
WPForms (WP)Gut bei Self-HostedEigener Server / USAJa
TypeformEingeschränktUSA / EUJa
Google FormsProblematischUSADPA vorhanden
Eigene LösungOptimal steuerbarEigener ServerNicht nötig

Empfehlung: Bevorzuge Self-Hosted-Lösungen, bei denen die Daten deinen Server nicht verlassen. Bei Cloud-Lösungen prüfe den Server-Standort und schließe einen AVV ab.

Technische Umsetzung: Code-Beispiel

Ein minimales, DSGVO-konformes HTML-Kontaktformular:

<form action="/kontakt" method="POST" novalidate>
  <div>
    <label for="name">Name</label>
    <input type="text" id="name" name="name" required
           autocomplete="name" />
  </div>

  <div>
    <label for="email">E-Mail-Adresse</label>
    <input type="email" id="email" name="email" required
           autocomplete="email" />
  </div>

  <div>
    <label for="telefon">Telefonnummer (optional)</label>
    <input type="tel" id="telefon" name="telefon"
           autocomplete="tel" />
  </div>

  <div>
    <label for="nachricht">Nachricht</label>
    <textarea id="nachricht" name="nachricht" rows="5" required></textarea>
  </div>

  <!-- Honeypot-Feld (Spam-Schutz) -->
  <div style="position: absolute; left: -9999px;" aria-hidden="true">
    <input type="text" name="fax" tabindex="-1" autocomplete="off" />
  </div>

  <!-- Datenschutz-Hinweis (keine Einwilligung!) -->
  <p>
    Hinweis: Informationen zur Verarbeitung deiner Daten findest du
    in unserer <a href="/datenschutz" target="_blank">Datenschutzerklärung</a>.
    Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse).
  </p>

  <button type="submit">Nachricht senden</button>
</form>

Beachte: method="POST" statt GET (GET-Parameter erscheinen in URL und Server-Logs), Labels mit for/id verknüpft, Honeypot statt reCAPTCHA, DSE-Hinweis statt Einwilligungs-Checkbox.

Praxis-Checkliste

  • Rechtsgrundlage festgelegt (berechtigtes Interesse oder vorvertragliche Maßnahmen)
  • Formular über HTTPS erreichbar und Submit über HTTPS
  • Nur notwendige Pflichtfelder (Datensparsamkeit)
  • DSE-Hinweis statt Einwilligungs-Checkbox
  • Kein Google reCAPTCHA (oder nur mit Einwilligung) — Honeypot als Alternative
  • Löschfrist definiert und technisch umgesetzt
  • Autoresponder ohne Werbung
  • E-Mail-Weiterleitung mit TLS-Verschlüsselung
  • AVV mit externen Formular-Anbietern abgeschlossen (wenn zutreffend)
  • Kontaktformular in der DSE dokumentiert (Zweck, Rechtsgrundlage, Speicherdauer)
  • Formular-Labels korrekt verknüpft (Barrierefreiheit)

Kontaktformular automatisch prüfen

Der Compliso Scanner erkennt automatisch, ob dein Kontaktformular DSGVO-konform ist — darunter fehlende SSL-Verschlüsselung, Google reCAPTCHA ohne Consent, fehlende DSE-Verlinkung und Third-Party-Requests, die beim Absenden ausgelöst werden.

Erfahre mehr über den Compliso Scanner oder erstelle deine Datenschutzerklärung mit dem Content-Generator, um die Verarbeitung über das Kontaktformular korrekt zu dokumentieren. Oder teste den Demo-Scanner jetzt kostenlos und prüfe dein Formular in 30 Sekunden.

kontaktformular dsgvo verschluesselung einwilligung datensparsamkeit

Deine Website DSGVO-konform machen?

Compliso prüft deine Website automatisch auf Cookies, Tracker, Dark Patterns und Accessibility-Probleme.