A contact form for your website, no backend needed
Keep the form you already have. Point it at your SendForm endpoint and every message is checked for spam, emailed to you and kept in your inbox. No server to run.
Every screen, from your site to your inbox
Six screens, and what you can do on each.
One contact form, many jobs.
The same simple contact form quietly does a lot of work. Here are the things people actually use a serverless contact form for.
Capture leads
Turn visitors into conversations. Collect a name, an email, and a note, then follow up while interest is hot.
Take support requests
Give customers a direct line for questions and issues, routed straight to the person who can help.
Field quote & booking requests
Let people describe a project, request a quote, or ask for availability without a clunky scheduling tool.
Collect partnership pitches
Open a channel for press, partnerships, and collaboration requests that does not clutter your personal inbox.
Gather feedback
Ask visitors what they think, what is missing, or what broke, with a form that takes seconds to fill in.
Route to the right place
Send each submission to an inbox, a Slack channel, a CRM, or your own webhook, based on the form it came from.
Send an HTML form to email without PHP
A contact form has one job: take a message and deliver it. To send an HTML form to email, you used to need a PHP script on a server, or a mailto: link that only opens the visitor's own mail app. A serverless contact form replaces both with one hosted endpoint.
The old way
Stand up a server or a PHP script just to call mail(). Now you own uptime, patches, and security for one contact form.
Wire up SMTP credentials, fight the spam folder, and bolt on a captcha the moment bots find your contact form.
Static hosts like GitHub Pages or Netlify can't run any of it, so a simple site suddenly needs a backend just to send an email.
With SendForm
Point your contact form at a hosted endpoint. There is no server to run, scale, or keep patched, ever.
Delivery, spam checks, and verified notifications are handled for you, with DKIM and SPF already in place.
Your serverless contact form just posts to a URL, so it works on any static host while your site stays fast.
A contact form for static sites, from portfolios to SaaS docs
If your site can serve an HTML file, it can have a real contact form. No framework or backend skills required.
Freelancers & portfolios
Add a contact form to your portfolio in minutes and never miss an inbound project.
Small businesses
Give customers a reliable way to reach you, with messages landing in the inbox you already check.
Agencies
Ship client sites with working forms and group every project under its own SendForm project.
Developers
Skip the boilerplate backend. Post a form or call the endpoint with fetch() and get clean JSON back.
No-code & site builders
Using a static site generator or a builder that lets you edit HTML? Paste one URL and you are done.
Docs & SaaS sites
Add 'contact sales' or 'talk to us' forms to docs and marketing pages without touching your app's backend.
Everything a contact form needs
All the options in one place, so you can check SendForm fits before you sign up.
Endpoint
- HTML form actionWorks with any static site
- fetch() and JSONFor forms that stay on the page
Bot filtering
- PrivCaptchaOn every plan
- Honeypot fieldOn by default
- Require JavaScriptBlocks direct posts from bots
After submit
- RedirectYour own thank-you page
- Pause the formWith an optional paused message
Notifications
- EmailTo your verified address
- More recipientsDepending on your plan
- Auto-replyA confirmation to the sender, on paid plans
Plugins
- Chat appsSlack, Discord, Telegram, Mattermost
- Custom webhookJSON to any URL, on paid plans
Files and data
- File uploadsAttachments with each message, on paid plans
- Inbox and analyticsSearch, filter and compare periods
- CSV exportDownload everything, on paid plans
Form to email in three steps
Keep your form, change one attribute. Each message then arrives as an email with every field and the names of any attached files.
-
1Step 1Create a contact form
Sign up and confirm the email that receives your messages.
-
2Step 2Paste your endpoint
Put it in the action of your form, or call it with fetch().
-
3Step 3Get messages
Spam is filtered, you and any extra recipients get an email, and every message is in your inbox.
Still just an HTML contact form.
No SDK, no build step. Swap the action URL for your own endpoint and your serverless contact form is live.
The form needs two fields, email and message. Add up to 25 more with any name, such as name, company or phone, and each value can hold up to 3,000 characters.
<form action="https://sendform.net/!a8Kz3mXq12" method="POST"> <input name="name" placeholder="Name" required> <input type="email" name="email" placeholder="Email" required> <textarea name="message" required></textarea> <button type="submit">Send message</button> </form>
HTML contact form questions.
A serverless contact form is a normal HTML form that posts to a hosted endpoint instead of your own backend. There is no server to run, the form just sends each message to SendForm, which delivers it for you.
Point your form's action at your SendForm endpoint, or call it with fetch(). That is the whole setup, your serverless contact form is live on any static page in minutes.
Yes. Because a serverless contact form only posts to a URL, it runs anywhere you can host an HTML file, including GitHub Pages, Netlify, Vercel, and Cloudflare Pages.
A hidden trap field is on by default, and you can add a fill timer of 2 seconds or require a JavaScript token. Together they catch most automated spam without a captcha, and PrivCaptcha is there when you want one. One email address can send one message per form every 6 hours. A message caught as spam gets a normal success reply and is dropped, so bots don't learn to retry.
Each message is stored in your dashboard and delivered to your inbox, a Slack channel, or your own webhook, so your serverless contact form reaches you wherever you work.
Yes. Redirect visitors to your own thank-you page after submitting, or request JSON and show a success state inline without leaving the page.
Yes, on paid plans. Turn on the auto-responder in the form's settings and each sender gets your reply by email, with a subject of up to 255 characters, a message of up to 5,000 and their own message quoted underneath.
No. If you can paste a URL into an HTML form, you can run a serverless contact form. There is no backend, SDK, or build step to learn.
Yes. As of November 2026, SendForm's Free plan gives you a free contact form for your website with 100 messages a month, unlimited forms, email notifications, chat apps and spam protection, with no credit card and no servers to manage.
Put a real contact form on your site.
Create your free account and get a working contact endpoint in two minutes. No servers, no credit card.



















