FormRelay
Delivery & Retries
What happens between someone pressing Submit and the record appearing at your destination.
The path a submission takes
- Webflow accepts the submission and handles it as normal.
- Webflow sends it to FormRelay over a signed
form_submissionwebhook. FormRelay verifies the signature and rejects anything that fails. - FormRelay records that the submission arrived.
- If the form is mapped and the site is subscribed, FormRelay sends it to every destination on that form and records the result of each one separately.
Delivery normally completes in a few seconds, though it depends on how quickly the destination responds. Some destinations then take a little longer to make the new record visible in their own interface.
What counts as delivered
A 2xx response from the destination. Anything else is a failure and is recorded with the destination's own error message β for example Your API key is missing required scopes, rather than a generic error.
Retries
A delivery is attempted up to 3 times in total, so a failure is retried twice before we stop. If it still fails, it is recorded as failed and left for you to replay.
Each destination on a form is retried on its own. If a form sends to Mailchimp and Slack and Slack is refusing the message, Mailchimp still receives it, and only the Slack delivery is marked failed. The form card shows Partly delivered in that case, so a destination that worked never hides one that did not.
FormRelay de-duplicates deliveries, so a submission that Webflow sends twice is not delivered twice. Deliveries to different destinations are tracked separately, so one submission reaching three destinations is three records, not a duplicate.
Replaying a failed delivery
On the site's Logs page, open the entry and click Replay. This re-sends the stored submission to the destination that failed, using the mapping as it stands now, so fix the connection or mapping first. Destinations that already succeeded are not sent again.
Replay needs the submission values, which are erased after 90 days. Older entries cannot be replayed β the delivery history remains, but the values are gone.
Checking delivery status
- The form card on the site page shows whether the last submission was received and whether it was delivered.
- Deliveries by destination summarises the last 24 hours per destination, including failures.
- The Logs page lists every attempt, with the destination's response.
When nothing arrives at all
| What you see | Usually means |
|---|---|
| "Webflow received: Never" | The site is not published, or the form was not submitted from the published page. Preview mode does not send submissions. |
| Received, but no delivery | The form has no mapping, or the site has no active subscription. |
| "Webhook missing" on the site | The Webflow webhook was removed. Click the badge to re-register it. |
| Delivery failed | Open the log entry β the destination's own error message is recorded there. |