splitforms.com

reCAPTCHA alternative

reCAPTCHA alternative that stops form spam without puzzles.

Filter spam server-side after the browser submits — no Google script, no tracking cookie, and no puzzle for real visitors to solve.

  • No Google script
  • 500 free / mo
  • Zero puzzles
A hidden honeypot and time-trap blocking spam bots from a contact form without reCAPTCHA

No Google script

Nothing loads before submit — no reCAPTCHA script, cookie, or badge on the page.

Invisible to visitors

The honeypot and time-trap are hidden; real people never see a puzzle.

Filtered server-side

Allowed-domain checks, rate limits, and content scoring run after the POST.

Drop-in pattern

Your reCAPTCHA-free contact form, ready to paste.

Keep your existing HTML, drop in a hidden honeypot and time-trap, and POST to https://splitforms.com/api/submit. Every request is filtered server-side — no Google script, cookie, or puzzle.

Generate access key
contact.html
<form action="https://splitforms.com/api/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" />
  <input type="hidden" name="form_loaded_at" id="form_loaded_at" />

  <input name="email" type="email" required />
  <textarea name="message" required></textarea>

  <!-- reCAPTCHA alternative: hidden honeypot -->
  <input
    type="checkbox"
    name="botcheck"
    autocomplete="off"
    tabindex="-1"
    aria-hidden="true"
    style="position:absolute;left:-9999px"
  />

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

<script>
  document.getElementById('form_loaded_at').value = Date.now();
</script>

Step by step

How to replace reCAPTCHA on a contact form in 5 steps.

You don't need a new tool to drop reCAPTCHA — remove the Google script, add a hidden honeypot and time-trap, and point the form at the splitforms endpoint. Five steps, no puzzle, no client-side dependency.

Remove the reCAPTCHA script and site key

Delete the Google reCAPTCHA script tag and the g-recaptcha-response widget from your markup. There's nothing to load in its place.

Add the honeypot field

Add a hidden botcheck field to the form, visually hidden and marked aria-hidden. Real visitors never see or fill it; a bot that auto-fills every input gives itself away.

Add the time-trap field

Add a hidden form_loaded_at field and set it to the current timestamp with a one-line script when the page loads. Submissions sent back within a couple of seconds are treated as automated.

Point the form at the splitforms endpoint

Set action to https://splitforms.com/api/submit with method="POST" and your access_key as a hidden field. That endpoint enforces allowed-domain checks, a 6-per-minute-per-IP rate limit, and server-side content heuristics on every request.

Add reCAPTCHA v2 only if you still need it

If a specific form keeps attracting human-driven abuse after the layers above, turn on the optional reCAPTCHA v2 add-on with your own site key. Most forms never need it.

reCAPTCHA vs splitforms

How does a reCAPTCHA alternative block spam?

reCAPTCHA v2 and v3 both load a Google script before anyone can submit. A reCAPTCHA alternative runs the equivalent checks server-side after the POST, so nothing loads on the way in — and real visitors never solve a puzzle.

  • Honeypot + time-trap — a hidden botcheck field and a form_loaded_at timestamp catch auto-fills and too-fast submits, invisibly.
  • Rate limiting caps abuse at 6 submissions per minute per IP, with a sustained cap of 20 per 15 minutes — bursts get an HTTP 429.
  • Server-side content heuristics score the message body after it arrives, on top of the honeypot and time-trap.
  • Allowed-domain checks lock each form to the domains it's embedded on, with an optional strict-origin mode.
Server-side spam filtering that runs after submission with no third-party script or cookie

No Google script

Can you stop form spam without reCAPTCHA?

reCAPTCHA v2 shows a checkbox that can expand into an image puzzle; v3 skips the puzzle but still loads Google's script and scores every page view. Most contact-form spam is automated, so a honeypot, time-trap, and rate limits stop it with none of that. See the tradeoffs in honeypot vs reCAPTCHA.

  • No Google reCAPTCHA script, cookie, or tracking badge on the page
  • The honeypot is invisible — real visitors never solve a puzzle
  • reCAPTCHA v2 stays available as an optional, per-form add-on if you ever need it
A contact form that loads and submits as fast as plain HTML with no reCAPTCHA script

Works everywhere

A reCAPTCHA alternative for any form.

It doesn't matter what renders the form — React forms, WordPress forms, or plain HTML all POST to the same endpoint and hit the same spam checks. Filter spam server-side once and every form you ship is covered.

  • One endpoint for HTML, React, Vue, WordPress, and every framework
  • The same honeypot, time-trap, and rate limits protect every form
  • 200 submissions total free, no credit card and no Google script
The same reCAPTCHA-free spam filtering across React, WordPress, and plain HTML forms

How SplitForms works

From form to workflow in 3 simple steps.

Connect your form, collect every submission, and send data where it needs to go — without building backend infrastructure.

A SplitForms contact form submission launching straight to your inbox

Add your endpoint

Point your form to your unique SplitForms endpoint. That's it.

HTML form pointing at a SplitForms submit endpoint

Receive submissions

We instantly capture and organize every submission in your inbox.

Submissions inbox with searchable leads and status pills

Route anywhere

Send data to email, spreadsheets, CRMs, webhooks, and 7,000+ apps.

Generic integration tiles for email, sheets, chat, CRM, automate, and webhook

No credit card required. Set up in under 60 seconds.

Connect & automate

Connect your favorite tools and automate everything

SplitForms works with the destinations you route to and the platforms you build on — from Slack and Sheets to WordPress, Shopify, and Next.js. And with Stripe connected, your forms can take payments too.

Connect your SplitForms form to Slack, Google Sheets, Mailchimp, Zapier and more
NewTake payments on your formsDeposits, bookings, order forms — submitters check out through Stripe and the money goes straight to your Stripe account. Included on every paid plan.See plans →

Trusted by indie teams and agencies shipping forms worldwide

PETAL/COKRAFT.DELINEAR-XBUILD.DEVSTUDIO 71MERIDIANFRAME&CO

Testimonials

Loved by developers shipping at every scale.

40 quotes on record — from indie hacks to agency migrations.

Questions

reCAPTCHA alternative questions.

View all FAQs
What is the best reCAPTCHA alternative for contact forms?

For most contact forms, the best alternative is a layered server-side filter: a honeypot field, a time-trap, IP rate limits, and content heuristics. This avoids Google scripts, puzzle friction, and the accessibility issues visible CAPTCHAs cause.

Can I stop form spam without CAPTCHA?

Yes. Most form spam is automated and can be blocked with a honeypot field, a time-trap, and rate limits. Add the optional reCAPTCHA v2 layer only if you have evidence of human-driven abuse those simpler layers don't catch.

Is a honeypot better than reCAPTCHA?

A honeypot is better for user experience because real visitors never see it, it catches simple bots, and it adds no page weight. Pair it with a time-trap and server-side content heuristics to catch what a honeypot alone misses, including messages written with AI tools.

Does splitforms load third-party anti-spam scripts?

No. The default splitforms spam stack runs server-side after submission. There is no Google reCAPTCHA script, no tracking badge, no puzzle, and no extra client-side dependency.

Does splitforms still support reCAPTCHA v2 if I need it?

Yes. reCAPTCHA v2 is available as an optional, per-form add-on — bring your own Google site key and secret. It sits on top of the honeypot, time-trap, and rate-limit layers rather than replacing them, so most forms never need to turn it on.

Does a reCAPTCHA alternative slow down my form or hurt conversions?

No. splitforms doesn't add a client-side script, cookie, or widget by default, so there's nothing extra to load before a visitor can submit. The honeypot field is invisible, and the time-trap, rate-limit, and content-heuristic checks all run after the POST — the form stays as fast as plain HTML.

Is there a submission limit on the free plan?

Free covers 200 submissions total across unlimited forms, with email notifications included. Pro ($5/mo) raises that to 1,000 and adds exports, webhooks, and auto-responders; Pro ($5/mo) covers 5,000 with CC/BCC and priority support; the $59 3-Year plan (first 3 years, then $59/year) covers 15,000/month. Business plans are unlimited — contact [email protected].

Simple pricing

Start free. Scale when you need more.

Choose a plan that fits your workflow — from a free form endpoint to full automations, exports, Stripe payments, and higher submission limits.

Free

$0
 

No card required

Best for testing

For side projects and indie devs.

  • 200 submissions total (one-time)
  • Unlimited forms
  • Email notifications included
  • Honeypot spam filtering
  • Submissions dashboard
  • MCP setup stays free
  • No credit card required

3-Year

$59/ first 3 years
was $99 · save 40% · new-user price

Pay $59. 3 years sorted.

  • 15,000 submissions / mo
  • Unlimited forms
  • Everything in Pro
  • $59 for 3 years, then $59/year
  • Long-term discount
  • Priority support included
  • Vote on the roadmap

No credit card required on Free • Cancel anytime