# Formspree „Form not found“ und andere Fehler: Lösungen

Formspree meldet „Form not found“, „Form should POST“, „Invalid Referer header“ oder „This form isn't set up yet“? Jede Antwort nachgestellt, mit Lösung.

Author: Formgong
Published: 2026-10-09
Language: de
Canonical: https://formgong.com/de/blog/formspree-errors/

„Form not found“ heißt: Die ID hinter /f/ im action Ihres Formulars stimmt nicht, oder das Formular wurde gelöscht. Kopieren Sie den Endpunkt erneut aus dem Formspree-Dashboard. „Form should POST“ heißt: Dem Formular fehlt method="POST", der Browser hat die Adresse einfach aufgerufen. „Invalid Referer header“ und „This form isn't set up yet“ kommen vom alten Adressformat formspree.io/ihre@email.

## Alle Antworten auf einen Blick

Nachgestellt am 09.10.2026 mit einer erfundenen Formular-ID. Sendet ein normales HTML-Formular, antwortet Formspree mit einer HTML-Seite. Schickt Ihr Code `Accept: application/json`, kommt JSON zurück. Derselbe Fehler hat also zwei Texte.

Formspree-Fehler
Was Sie sehenWie gesendet wurdeUrsache

`{"error":"Form not found","errors":[{"code":"FORM_NOT_FOUND","message":"Form not found"}]}` (404)fetch mit JSONFalsche oder gelöschte Formular-ID
Seite: „Form not found. Please check the form hashid“HTML-FormularFalsche oder gelöschte Formular-ID
Seite: „Form should POST. Make sure your form has the method="POST" attribute“Link, oder Formular ohne `method`Der Browser hat GET gesendet
`{"error":"Please submit POST request."}` (405)fetch mit GETDer Browser hat GET gesendet
`{"error":"Invalid \"Referer\" header"}` (400)Alte Adresse `formspree.io/you@example.com`Die Anfrage kam ohne Seitenadresse
`{"error":"This form isn't set up yet"}` (404)Alte Adresse `formspree.io/you@example.com`Zu dieser Adresse gibt es in Formspree kein Formular

## „Form not found“: Die Formular-ID stimmt nicht

Jedes Formspree-Formular hat einen Endpunkt wie `https://formspree.io/f/xxxxxxxx`. „Form not found“ bedeutet, dass der Teil hinter `/f/` zu keinem Formular in irgendeinem Konto passt. Die häufigsten Gründe:

- ein Tippfehler, oder der Platzhalter `YOUR_FORM_ID` aus einem Tutorial oder von einem KI-Baukasten steht noch im Code;

- das Formular wurde gelöscht oder in einem anderen Formspree-Konto angelegt;

- eine Umgebungsvariable enthält die ID lokal, ist auf der Live-Seite aber leer, und die URL endet auf `/f/undefined`.

Kopieren Sie den Endpunkt noch einmal von der Seite des Formulars im Formspree-Dashboard und setzen Sie die ganze URL in das `action` des Formulars ein.

```html
<form action="https://formspree.io/f/YOUR_FORM_ID" method="POST">
  <label>Email <input type="email" name="email" required></label>
  <label>Message <textarea name="message" required></textarea></label>
  <button type="submit">Send</button>
</form>
```

## „Form should POST“: method="POST" ergänzen

Ein HTML-Formular ohne `method` sendet GET: Der Browser hängt die Felder an die URL und öffnet sie. Formspree nimmt nur POST an und zeigt deshalb „Form should POST“. Dieselbe Seite erscheint, wenn Sie den Endpunkt in einem Browser-Tab öffnen. Ergänzen Sie `method="POST"` im Formular. Mit fetch setzen Sie `method: "POST"`, sonst kommt `{"error":"Please submit POST request."}` zurück.

## „Invalid Referer header“ und „This form isn't set up yet“

Ältere Anleitungen schicken das Formular an `https://formspree.io/you@example.com`. Unter dieser Adresse antwortete Formspree mit `Invalid "Referer" header`, wenn die Anfrage keine Seitenadresse mitbrachte, und mit `This form isn't set up yet`, wenn sie eine hatte. In beiden Fällen wird nichts zugestellt. Legen Sie in Formspree ein Formular an und verwenden Sie dessen `/f/`-Endpunkt statt einer E-Mail-Adresse.

## Mit fetch erst die Antwort lesen, dann Erfolg melden

Von KI gebaute Formulare senden oft per fetch und zeigen „Danke!“, egal was zurückkommt. Bei einer falschen ID antwortet Formspree mit 404, und der Besucher sieht trotzdem die Dankesmeldung. In unserem Test von 105 KI-gebauten Websites meldeten 27 Formulare Erfolg und sendeten nichts ([die Studie](/de/blog/contact-forms-that-send-nothing/)). Schicken Sie `Accept: application/json` mit, prüfen Sie `response.ok` und zeigen Sie sonst den `error`-Text von Formspree an.

```javascript
const response = await fetch("https://formspree.io/f/YOUR_FORM_ID", {
  method: "POST",
  headers: { Accept: "application/json" },
  body: new FormData(form),
});
const data = await response.json();
if (!response.ok) throw new Error(data.error); // e.g. "Form not found"
showSuccess();
```

## Wenn Sie ohnehin wechseln

Formgong funktioniert nach demselben Prinzip: Das Formular sendet an eine URL mit einem Schlüssel, und die Antwort lautet `"success": true` oder sagt, was nicht stimmt. Unterschiede gibt es dort, wo es für kleine Websites zählt: Telegram-Benachrichtigungen schon im kostenlosen Tarif, 1.000 Einsendungen pro Monat, Datenspeicherung in der EU und Seiten in 12 Sprachen. Siehe [Formgong vs. Formspree](/de/vs/formspree/) und die [HTML-Anleitung](/de/docs/html/). Für den Wechsel ändern Sie das `action` und ergänzen `<input type="hidden" name="access_key">`. Unser Endpunkt ist `https://formgong.com/submit`.

Alles in einem Konto. Feedback erwünscht
Mit einem Formgong-Konto bekommen Sie neben dem Kontaktformular, das an E-Mail und Telegram sendet, auch kostenlose [Website-Vorlagen](/en/website-templates/) (auf Englisch), in denen das Formular schon angeschlossen ist, einen [KI-Hilfe-Chat](/de/#chat), der Fragen Ihrer Besucher aus Ihren eigenen Seiten beantwortet, und [Kundenbewertungen](/de/#reviews) zum Sammeln und Anzeigen. Anfragen landen in einem Posteingang. Jedes dieser Produkte hat einen kostenlosen Tarif.

Fehlt Ihnen auf dieser Seite etwas, oder ist etwas unklar? Schreiben Sie uns an [support@formgong.com](mailto:support@formgong.com). Wir lesen jede Nachricht und verbessern die Seite danach.

## Häufig gestellte Fragen

### Was bedeutet „Form not found“ bei Formspree?

Die ID hinter /f/ im action Ihres Formulars passt zu keinem Formular. Kopieren Sie den Endpunkt erneut aus dem Formspree-Dashboard und prüfen Sie, dass die URL auf der Live-Seite nicht auf /f/undefined endet.

### Warum sagt Formspree „Form should POST“?

Dem Formular fehlt method="POST", oder Sie haben den Endpunkt als Link geöffnet. Ergänzen Sie method="POST" im form-Tag.

### Funktioniert formspree.io/meine@email.de noch?

In unserem Test lieferte dieses Adressformat „Invalid Referer header“ oder „This form isn't set up yet“. Legen Sie ein Formular an und verwenden Sie seinen /f/-Endpunkt.

### Woran erkenne ich, dass ein Formspree-Formular wirklich gesendet hat?

Senden Sie mit fetch den Header Accept: application/json und zeigen Sie Erfolg nur, wenn response.ok true ist. Schicken Sie danach eine Testnachricht und suchen Sie sie im Formspree-Dashboard.

## Quellen und Dokumentation

- [Formspree: Help Center](https://help.formspree.io/)
- [MDN: das method-Attribut von form](https://developer.mozilla.org/de/docs/Web/HTML/Reference/Elements/form#method)
- [MDN: Fetch API verwenden](https://developer.mozilla.org/de/docs/Web/API/Fetch_API/Using_Fetch)
- [HTML-Kontaktformular](https://formgong.com/de/docs/html/)

[Formularschlüssel holen](https://formgong.com/de/#top)
