Yourform.
Ourbackend.
Point any HTML form at Formcrest. We validate, filter spam, store, and deliver submissions to verified inboxes, webhooks, Slack, or Discord — without you running a server.
500 submissions/mo free · spam filtering on every plan · EU-friendly
<form action="https://api.formcrest.com/v1/submit/x9k2v"
method="POST">
<input name="email" />
<button>Send</button>
</form>New submission — jane@acme.com
delivered to 3 inboxes · webhook 200 · 84 ms
The pipeline
One POST. Five things handled.
Every submission runs the same hardened path — you never write server code for it.
01Your HTML form
Any page, any framework — or none.
02Validate
Required fields, types, size limits.
03Filter spam
Honeypot, Turnstile, rate limits.
04Store
Searchable archive, CSV export.
05Deliver
Inboxes, webhooks, Slack, Discord.
Batteries included
Everything after the submit button
Spam never reaches you
Honeypot fields, Cloudflare Turnstile, and per-IP rate limits run on every plan — free included. Flagged entries are quarantined, not forwarded.
Routed to verified inboxes
Instant emails or hourly/daily digests, per-form templates, Reply-To, BCC, and autoresponders for your submitters.
Signed webhooks
HMAC-signed payloads with automatic retries and dead-letter capture.
X-Formcrest-Signature: sha256=9f2a…Slack & Discord
Pipe submissions straight into the channel where your team already lives.
File uploads
Attachments validated by magic bytes — not file extensions — and stored on R2 with signed download links.
Form analytics
Volume trends, spam rate, top countries and referrers — per form, no extra tracking script.
Setup
Live in three steps
Verify a destination
Tell us where submissions should land. Click the confirmation email. Done.
Create a form
Name it and get a unique endpoint URL instantly — no schema required.
Point your form at it
Change one action= attribute in your HTML. Deploys with your site as-is.
<form action="https://api.formcrest.com/v1/submit/…">
Switching from another form backend?
Keep your HTML. Change one URL.
Your markup stays exactly where it is. Swap the endpoint, and submissions start flowing through Formcrest's pipeline.