The CAPTCHA Tax
Legacy CAPTCHAs are a conversion killer and an accessibility wall everyone just tolerates. Turnstile verifies humans invisibly. No puzzles, no image grids.
The pain
Legacy CAPTCHAs cost you conversions and wall out users on screen readers, friction everyone just absorbs.
The fix
Turnstile verifies humans invisibly: no puzzles, no image grids, no Google ad-tag baggage.
So what
Recover lost conversions, stay ADA/WCAG-accessible, and still stop credential-stuffing bots.
Try it
Sign-in form, protected invisibly
Uses Cloudflare's official Turnstile test keys, so both outcomes are demoable on command. In
production a real sitekey + TURNSTILE_SECRET makes the "Human"
path a genuine live verification; the "Blocked bot" toggle keeps using the test path so the
failure is always reproducible.
How it works
One script tag in your form, one check on your server. No infrastructure to run.
Add it to your site
~10 lines · no infrastructure<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" defer></script>
<div class="cf-turnstile" data-sitekey="YOUR_SITEKEY"></div>const r = await fetch('https://challenges.cloudflare.com/turnstile/v0/siteverify', {
method: 'POST',
body: new URLSearchParams({ secret: env.TURNSTILE_SECRET, response: token }),
}).then((res) => res.json());
if (!r.success) return new Response('Blocked', { status: 403 });Official Cloudflare docs