Point your form at us. We handle the rest.
Point any HTML form at one endpoint and every POST becomes an email in your inbox and a record you can query — without writing a line of backend code.
| 1 | <form method="POST" |
| 2 | action="https://api.formwire.io/submit"> |
| 3 | <input type="hidden" name="access_key" value="YOUR-KEY"> |
| 4 | <input type="text" name="name"> |
| 5 | <input type="email" name="email"> |
| 6 | <textarea name="message"></textarea> |
| 7 | <button>Send</button> |
| 8 | </form> |
You keep the HTML and the styling. We handle everything after the POST.
- 250
- Free submissions / month
- ~2s
- Typical POST-to-inbox delivery
- ∞
- Unlimited forms on every plan
- 0
- Lines of backend code
A working form in three steps.
No SDK to learn, no library to install. If your site can render an HTML form, your contact form can be live in under a minute.
- Step 01
Create a form, get your key
Sign up and grab your access key, a public ID that's safe to ship in your HTML. It can only ever deliver mail to you.
- Step 02
Point your form at us
Set your form's action to our endpoint and drop the key in a hidden field. Plain HTML, fetch, React: whatever you already write.
- Step 03
Submissions land in your inbox
Every POST becomes an email, typically within seconds, plus a stored record in your dashboard you can search, filter, and export.
Any stack, same endpoint
- Alpine.js
- Angular
- Astro
- Eleventy
- Framer
- Ghost
- Hugo
- Jekyll
- Next.js
- Nuxt.js
- Preact
- Qwik
- React
- Remix
- SolidJS
- Svelte
- Vue
- VitePress
- Webflow
- WordPress
What happens after submit.
Here's what FormWire does with every POST from your HTML form, fetch call or React component.
What happens after submit.
Here's what FormWire does with every POST from your HTML form, fetch call or React component.
-
Filtered before it reaches you
A server-side honeypot filters bots before anything reaches you. Add hCaptcha, reCAPTCHA or Turnstile per form when you want more.
-
Saved to your dashboard
Every submission lands in a searchable inbox you can filter, export to CSV, or query over the read API. Nothing lives only in email.
-
Email lands in your inbox
Typically within seconds, with Reply-To set to your visitor. Hit reply in your inbox, land in theirs.
-
Integrations are triggered
Send the data where it needs to be: signed webhooks fire today, with more direct integrations on the way.
Everything a form needs, nothing to run.
The parts that are easy to get wrong — delivery, security, and design — are the parts we take off your hands.
-
Built not to lose leads
Stored before we say OK, delivered with retries, and delivery status visible on every submission.
-
Leads you can actually use
Every submission is a searchable record, not just an email: filter the inbox, export CSV, or pull JSON from the read API.
-
Design without limits
Keep your own markup, styling and framework. The endpoint never imposes a widget or an iframe on your page.
Submissions
- delivered
Do you take on analytical engines?
Ada Lovelace · Contact · 2m ago
- delivered
Plus one is a golden retriever — okay?
Hannah B. · RSVP · 28m ago
- quarantined
URGENT!!! exclusive offer inside 🎁
cheap-pills-now · Contact · 3h ago
- delivered
Order #418 — I'm a teapot, apparently
Short & Stout · Order · 4h ago
- delivered
The math checks out — where do I sign?
Katherine Johnson · Support · 5h ago
- delivered
Have you tried turning it off and on?
Roy from IT · Support · 7h ago
Spam stopped at the door.
Honeypot filtering and rate limiting are on for every form. Add hCaptcha, reCAPTCHA or Turnstile per form, plus domain rules when you need them.
Honeypot (built in)
hCaptcha
reCAPTCHA
Turnstile
Rate limiting
Domain rules
Want the details?
How spam protection worksThe features your form will actually need.
Every real contact form ends up needing these. FormWire wires them up for you.
Works with any <form>
Form-encoded, multipart, or JSON. Plain HTML posts and AJAX both get clean responses.
Verified recipients only
Mail only goes to addresses you've verified, so the public key in your HTML can never become an open relay.
Redirect anywhere
Send visitors to your own thank-you page after submit, validated against your allowlist.
Reply straight to visitors
Reply-To is set from the submitter's email. Hit reply in your inbox and land in theirs.
Auto-responder
Send a branded confirmation to the person who filled in your form, with template tokens.
File uploads
Accept attachments up to 5MB without any storage configuration. Secure links arrive with the notification email.
A real submissions inbox
Searchable dashboard with inbox and spam tabs, full submission detail, and bulk actions.
Export or query
One-click CSV export, or pull JSON from the read API with a revocable, hashed key.
CORS done right
Preflight handled, JSON responses readable from fetch. Your SPA form just works.
Free to start. Fair when you grow.
No credit card for the free tier. Upgrade when you need more volume, richer spam controls, and integrations.
FREE
For side projects and static sites
- 250 submissions / month
- Unlimited forms
- Honeypot + hCaptcha spam protection
- 2 verified recipient emails
- 30-day submission history
- Submissions inbox + CSV export
Pro
The full toolkit for products and client work
- 10,000 submissions / month
- reCAPTCHA + Turnstile + domain rules
- 10 verified recipient emails
- 1-year submission history
- File uploads & attachments
- Auto-responder, CC & BCC
- Signed webhook integrations (Slack & Sheets coming soon)
- JSON read API
Frequently asked questions
Everything you need to know before pointing your form at FormWire.
Can't find what you're looking for?
Contact supportMake that POST turn into an email.
Grab an access key, paste the snippet, and watch your first submission arrive before your coffee cools.
Free tier forever. No credit card required. GDPR-friendly · TLS everywhere.