Connecting your HTML form

Contact form on Netlify

Netlify comes with its own form service, Netlify Forms. FormPost is the alternative if your submissions should stay with a provider in Germany, or if your form should work regardless of where you host.

Before you start: create a form in FormPost

Sign up for FormPost, create a form and enter the domain your site runs on. We then show you your form's address. It replaces https://www.formpost.eu/f/abc123 in the code below – nothing else needs to change.

Add the form to your site

The code below is a complete contact page. Whether you use plain HTML, a static site generator or a framework, copy the form block to the right place. Hugo, Jekyll, Astro and Eleventy have their own guides.

contact.html
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Contact</title>
</head>
<body>
  <form action="https://www.formpost.eu/f/abc123" method="POST">
    <label for="email">Email</label>
    <input type="email" id="email" name="email" required>

    <label for="message">Message</label>
    <textarea id="message" name="message" required></textarea>

    <input type="text" name="_gotcha" style="display:none;" tabindex="-1" autocomplete="off">

    <button type="submit">Send</button>
  </form>
</body>
</html>

Good to know

  • If Netlify Forms is enough for you, you don't need FormPost. Netlify is a US provider. With FormPost your submissions stay in Germany, and you can move your site to another host later without rebuilding the form.
  • Leave out the netlify and data-netlify="true" attributes. Otherwise Netlify registers the form for Netlify Forms during the build.
  • In FormPost, enter the domain your site runs on – your-site.netlify.app or your own domain.
  • Deploy previews and branch deploys run under their own addresses, such as deploy-preview-12--your-site.netlify.app. We reject submissions from there; that's the domain lock, not a bug. Test on your production address or with the test form in your dashboard.

What FormPost cannot do today

  • Forms are submitted the classic way, meaning the page changes. Sending in the background via JavaScript is not supported at present.
  • We do not accept file attachments.
  • FormPost does not collect consent from your visitors. The notice in your own privacy policy remains your job – the wording for it is waiting, ready to copy, next to your form.

More guides and comparisons

Create a form and try it

The Free plan covers one form with ten notifications a day and costs nothing, permanently.