splitforms.com
All articles/ TUTORIALS9 MIN READPublished June 12, 2026UPDATED June 18, 2026

How to Add a Contact Form Without Coding (2026 Guide)

Add a working contact form to any website with zero code — copy-paste form snippets, built-in blocks on WordPress, Wix, Squarespace, and Webflow, and how to pick a builder vs a backend.

✶ Written by
splitforms.com / blog

Founder of splitforms — the form backend API for developers. Writes about form UX, anti-spam, and shipping web apps without backend code.

The two no-code routes (and how to pick)

"I need a contact form but I don't code" has exactly two good answers in 2026, and which one fits you depends on where your site lives:

  1. Use your platform's built-in form. Wix, Squarespace, WordPress (via blocks or plugins), and Webflow all ship a form element you drag onto the page. Zero code, zero paste. The trade-offs: submissions live inside that platform, monthly caps apply on some plans, and the form breaks if you ever move your site.
  2. Paste a ready-made form connected to a form backend. You copy a block of finished HTML — from a template gallery or generator — paste it where you want the form, and replace one placeholder with your free access key. The backend handles receiving, spam filtering, storage, and email. This works on every platform that lets you paste HTML, which is nearly all of them.

A quick vocabulary note, because the products in this space sound alike: a form builder (Google Forms, Typeform, Jotform, Tally) designs and hosts the form for you, usually embedded in an iframe; a form backend handles only the invisible receiving side while the form itself sits natively in your page. We compare the two models in depth in form backend vs form builder — the one-line version is: builders win when you have no form and want a survey-like experience; backends win when you want a form that looks like part of your site.

The copy-paste method, step by step

Here's the full process for the paste route — no step involves writing code:

  1. Get the form HTML. Use the free HTML form generator to pick your fields visually, or grab a finished contact form template. Both hand you a complete, styled snippet.
  2. Get a free access key. Sign up for splitforms (free, no credit card) and copy the access key from your dashboard. The key is what routes submissions to your inbox instead of someone else's.
  3. Paste the snippet into your page wherever your platform accepts HTML — a Custom HTML block, an embed element, a code widget. Replace the YOUR_ACCESS_KEY placeholder with your key.
  4. Send yourself a test message. Fill in the form on your live page, submit, and confirm it arrives in your email and in the splitforms dashboard. Done.

The entire "code" involved looks like this — shown so you can see there's nothing scary in it:

<form action="https://splitforms.com/api/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />
  <input type="text" name="name" placeholder="Your name" required />
  <input type="email" name="email" placeholder="Your email" required />
  <textarea name="message" placeholder="How can we help?" required></textarea>
  <button type="submit">Send message</button>
</form>

You never edit it beyond the key. Submissions are spam-filtered automatically (a built-in honeypot plus an AI classifier — no CAPTCHA puzzles for your visitors), stored in a dashboard you can search and export, and emailed to you. The free tier covers 500 submissions a month with 2 forms; Pro is $5/month if you outgrow it.

WordPress: block, plugin, or paste

WordPress gives you three no-code paths, in increasing order of independence:

  • A form plugin (WPForms, Contact Form 7, Gravity Forms). Install, build the form in the plugin's editor, drop the shortcode into your page. It works, but you take on plugin updates, compatibility risk with every WordPress upgrade, and — for the popular freemium plugins — persistent upsells. Our rundown of the options: best WordPress contact form plugins.
  • Your theme or page builder's form widget (Elementor, Divi, and most premium themes include one). Fine if you already use that builder; check where submissions are stored and whether email notifications actually deliver.
  • Paste HTML into a Custom HTML block. Add block → search "Custom HTML" → paste the snippet from the previous section. No plugin to update, nothing to break on the next WordPress upgrade, and the form survives a future migration off WordPress untouched. Full walkthrough: WordPress contact form without a plugin.

Wix and Squarespace: use the built-in block

Wix: in the editor, Add Elements → Contact & Forms → drag a form onto the page. Customize fields in the form settings panel. Submissions land in your Wix Inbox and Contacts list, with optional email notifications. This is the right default on Wix — the platform is closed enough that fighting it isn't worth it. If you need more (a dashboard your whole team can use, webhooks, exports), Wix also lets you embed custom HTML via an embed element, and the paste method above works inside it. Details: contact forms on Wix.

Squarespace: edit a page → add block → Form. Configure fields and set the storage option (email address, and optionally Google Sheets or Mailchimp). Submissions are emailed and collected under Contacts. Same advice as Wix: the native block is the path of least resistance, and a Code Block accepts pasted form HTML when you want submissions flowing into an external dashboard instead. Walkthrough: contact forms on Squarespace.

Webflow: native element, your choice of destination

Webflow is the friendliest of the builders for this, because its form element separates the design from the destination. Drag a Form block onto the canvas and style it like any other element — that part is pure Webflow, no code. By default, submissions go to Webflow's own handling (Site settings → Forms), which caps monthly submissions by plan.

When you hit that cap — or want submissions in a real dashboard with spam filtering — you don't rebuild anything: select the form, open its settings, and paste a backend URL into the Action field, plus add a hidden field for the access key. The form you designed stays pixel-identical; only the destination changes. Step-by-step: contact forms on Webflow, and there's a dedicated integration page at splitforms for Webflow.

Everywhere else: if you can paste, you can have a form

The paste method's superpower is that it doesn't care about your platform. The same snippet works on:

  • Carrd — via an Embed element (guide)
  • Framer — via an embed component (guide)
  • Notion-based sites — through embed-friendly site builders (guide)
  • Shopify — pasted into a page or theme section, no app required (guide)
  • Static sites and AI-generated sites — GitHub Pages, anything built by an AI site generator; if the output is HTML, the form drops straight in (guide)

One snippet, one access key, every platform. And because the destination is a URL rather than a platform feature, redesigning or replatforming your site later never costs you your form setup — your submission history stays in the same dashboard throughout.

Which no-code builder to pick

Not all platforms are equal when it comes to form handling. Here is how the major no-code tools compare for contact form use:

PlatformForm methodEmail deliverySpam protectionCan paste custom form?
CarrdEmbed HTML or custom codeVia backendVia backendYes — embed element
WebflowNative form elementWebflow or backendWebflow or backendYes — form settings Action
SquarespaceBuilt-in Form blockBuilt-inBasic reCAPTCHACode Block (limited)
WixBuilt-in form elementWix InboxBasicHTML embed element
NotionNo native formsN/AN/AVia Super/Potion/Other

The "paste custom form" column matters because it determines whether you can use a hosted backend for delivery. Carrd and Webflow are the most flexible: they let you point a form at any external endpoint. Squarespace and Wix technically accept HTML embeds, but the experience is clunkier and support documentation is sparse. Notion has no native form support at all — you need a third-party site builder that renders Notion content plus custom HTML.

For each platform, we have a dedicated guide with screenshots and step-by-step instructions: Carrd, Webflow, Squarespace, Wix, and Notion sites.

Copy-paste HTML snippet

Here is a ready-to-use contact form you can paste into any platform that accepts HTML. Replace YOUR_ACCESS_KEY with a key from your splitforms dashboard and it will send submissions to your email immediately.

<form action="https://splitforms.com/api/submit" method="POST"
      style="max-width:480px;margin:0 auto;display:grid;gap:14px;font-family:inherit;">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />
  <input type="hidden" name="subject" value="Website contact form" />
  <input name="name" placeholder="Your name" required
    style="padding:12px 14px;border:1px solid #ccc;border-radius:8px;font-size:16px;" />
  <input name="email" type="email" placeholder="Email address" required
    style="padding:12px 14px;border:1px solid #ccc;border-radius:8px;font-size:16px;" />
  <textarea name="message" rows="4" placeholder="How can we help?" required
    style="padding:12px 14px;border:1px solid #ccc;border-radius:8px;font-size:16px;resize:vertical;"></textarea>
  <input name="botcheck" type="checkbox" style="display:none" tabindex="-1" autocomplete="off" />
  <button type="submit"
    style="padding:12px 24px;background:#111;color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;">
    Send message
  </button>
</form>

This form includes inline styles so it looks reasonable on any page without external CSS. The honeypot field (botcheck) is hidden from humans and checked server-side by splitforms. The subject line is configurable. On submission, splitforms filters spam, stores the lead in your dashboard, and emails it to you with Reply-To set to the visitor's email so you can respond directly.

Testing your form

After pasting the form and replacing the access key, verify it actually works before moving on. Five quick checks:

  1. Submit a real message. Fill in every field with real-looking data and click submit. Confirm the success state appears (whether that is a redirect, a thank-you message, or the default splitforms JSON response).
  2. Check your email. The submission should arrive within 2-5 seconds. Open it and confirm the fields are correct, the subject line matches, and Reply-To is set to the email address you submitted.
  3. Check the dashboard. Log into splitforms and verify the submission appears in your form's submission list. The timestamp, field values, and spam score should all be visible.
  4. Test with an empty field. Leave the email field blank and submit. The browser's built-in required attribute should block submission. If it does not, check that the required attribute is present on the correct input.
  5. Test the honeypot. Open your browser's developer tools, remove display:none from the honeypot checkbox, check it, and submit. The form should return a success message but no email should arrive, and the dashboard should show the submission flagged as spam.

If the submission does not arrive in email, the most common cause is that the access key is incorrect or the form is not posting to the correct endpoint. Double-check both. For a more detailed troubleshooting guide, see how to test a contact form.

When a form builder is actually the better pick

To keep this honest: there are jobs where a survey-style builder beats both the platform blocks and the paste method.

  • Multi-page questionnaires with conditional logic — "if they answer A, show question 7." That's builder territory (Typeform, Tally, Jotform).
  • Forms with payments attached — registration fees, paid bookings. Builders ship the payment step ready-made.
  • You have no website at all — builders give you a hosted form page with its own link you can share directly.

For a contact form — name, email, message, maybe a phone number — a builder is overkill that arrives in an iframe, often with the builder's branding on your page. Match the tool to the job; for the simple case, paste wins on looks, ownership, and price.

FAQ

Can I really add a contact form with zero coding knowledge?

Yes, through two routes. Route one: if your site is on Wix, Squarespace, WordPress, or Webflow, each has a built-in form element you drag onto the page — genuinely zero code. Route two: for any other site, you copy a ready-made block of form HTML (from a generator or template) and paste it into your page, the same way you'd paste a YouTube embed. You don't write the code; you only paste it, and the only thing you ever personalize is one access key.

What's the difference between a form builder and a form backend?

A form builder (Typeform, Jotform, Google Forms, Tally) gives you a hosted form page or widget designed in their editor — they control how it looks, and it usually lives in an iframe on your site. A form backend gives you only the invisible receiving side: your form, your design, their delivery, spam filtering, and storage. Builders are faster if you don't have a form at all; backends are better if you want the form to look native to your site or you already have form markup from a template or an AI tool.

Will pasted form HTML break my site?

No. A form is inert HTML — inputs and a button. It can't conflict with your theme's functionality the way a plugin can, doesn't load external scripts unless you add them, and if you ever want it gone you delete the block you pasted. The worst realistic outcome is cosmetic: the form inherits your site's fonts and colors, which is usually exactly what you want, but may need a width tweak inside a narrow column.

Do I need a plugin to add a contact form to WordPress?

No. Plugins (WPForms, Contact Form 7) are the common route, but each plugin adds maintenance, updates, and often upsells. The plugin-free alternative is pasting form HTML into a Custom HTML block in the editor and pointing it at a hosted backend — the form then works with no plugin to update and keeps working even if you later move off WordPress. We have a full walkthrough for the no-plugin method.

How do form submissions reach my email if I didn't code anything?

The form's action URL points at a form backend whose servers do the work: they receive the submission, filter spam, store a copy in a dashboard, and email it to the address on your account. None of that requires code on your site — it's the same division of labor as using Gmail instead of running your own mail server. With splitforms this is free for 500 submissions a month, which comfortably covers a typical small-business contact form.

What about spam? I've heard contact forms get flooded.

They do — any public form attracts bots within days. The no-code answer is to use a backend with protection built in rather than bolting on a CAPTCHA puzzle. splitforms includes a honeypot trap (an invisible field only bots fill in) plus an AI spam classifier on every plan, so spam is filtered server-side without your visitors ever solving traffic-light puzzles. If you use a platform's built-in form instead, enable whatever spam option it offers, because the defaults are often minimal.

Which option should a non-technical person pick if they just want it done?

If your site is on Wix or Squarespace: use the built-in form block — it's the path of least resistance and submissions stay in the platform's inbox. If you're on WordPress, Webflow, Carrd, or anything where you can paste HTML: grab a ready-made form template, paste it, add your free access key, and you're done in about five minutes with submissions stored in a dashboard and emailed to you. Only reach for a separate form-builder subscription if you need multi-page surveys or conditional questions.

More on this topic: add a contact form in 60 seconds, what a contact form costs, the HTML form generator, and the splitforms FAQ.

Get a free access key →

About the author
✻ ✻ ✻

Get your free contact form API key in 60 seconds.

500 free form submissions per month. No credit card. No SDK, no PHP, no plugin. Drop one POST endpoint in your form and submissions land in your dashboard. Starter adds inbox delivery.

Generate access key →Read the docs
founders pricing locked in · early access open