Contact form for WordPress
A WordPress contact form without a plugin
Skip Contact Form 7 and the SMTP plugins. Drop a plain HTML form into a Custom HTML block and Formpit handles delivery, spam and storage.
How to set it up
- Create a form in Formpit and copy the endpoint URL.
- In the WordPress editor, add a Custom HTML block (or a Code block in Elementor/Divi) and paste the snippet below with your endpoint.
- Publish the page and send a test submission.
Paste into a Custom HTML block
<form action="https://formpit.com/f/YOUR_FORM_ID" method="POST">
<input type="text" name="name" placeholder="Your name" required>
<input type="email" name="email" placeholder="Your email" required>
<textarea name="message" placeholder="Message" required></textarea>
<input type="text" name="_gotcha" style="display:none" tabindex="-1" autocomplete="off">
<button type="submit">Send</button>
</form>Replace YOUR_FORM_ID with the endpoint from your form's Setup tab.
Good to know
- Works on WordPress.com (Business plan or higher, which allows custom HTML) and on any self-hosted site.
- Style the inputs with your theme's CSS or inline styles; Formpit only needs the
action. - For the thank-you page, create a WordPress page and set its URL as the form's redirect in Formpit.
What you get
- Every submission emailed to you and stored forever in an inbox with New / Replied / Closed statuses.
- Reply from the inbox, add tags and notes, search, export CSV or JSON.
- Spam filtering with a honeypot, rate limiting and content checks; hCaptcha, reCAPTCHA or Turnstile if you want it.
- 500 submissions a month free. Pro adds file uploads, Google Sheets, Notion, Slack, webhooks and reminders.
Other platforms
Lovable · Bolt · v0 · Shopify · Wix · Squarespace · Framer · Webflow · Carrd · Plain HTML · React · Next.js · Astro · Hugo, Jekyll & Eleventy · Vue & Nuxt · Svelte & SvelteKit