A visitor arrives.
Turnstile runs a quick check. Usually, your visitor simply carries on. A successful check creates a short-lived token.
A better welcome to your website.
Cloudflare Turnstile checks for bots without
making people solve a puzzle.
This is real Turnstile. Choose a mode, submit the form, and watch it work.
Create your account. Keep the momentum.
Turnstile checks your visitor.
Waiting for a token…The form sends the token to your server.
Your secret key stays here.Only after Cloudflare confirms the token.
// Submit the form to see // the real server response.
Send a request directly to the server. These should all be blocked.
Reuse becomes available after a successful submission.ⓘ A green check in the browser is only the first step. The form is protected when your server verifies the token.
Your page starts the check. Your server makes the decision.
Turnstile runs a quick check. Usually, your visitor simply carries on. A successful check creates a short-lived token.
The form includes that token. Your server sends it to Cloudflare’s Siteverify service using a private secret key.
Valid token? Process the form. Missing, expired, or already used? Stop the request and ask the visitor to try again.
A public key for your page. A private key for your server. Then connect the two.
The secret is for your server. Keep it in an environment variable or secret store. Never put it in your HTML, browser code, or public repository.
The same server verification, with different visitor experiences.
Cloudflare decides whether a visitor needs to interact. Most pass automatically. Some may be asked to check a box.
A visible widget shows the check’s progress. Visitors don’t need to click or solve anything.
The check runs in the background, with no widget shown. Include the required Turnstile privacy notice on your page.
No. Turnstile works on websites hosted anywhere. Your website doesn’t have to use Cloudflare’s network. This demo uses a Cloudflare Worker for its server, but you can use your existing server.
Managed mode may ask a visitor to check a box when more information is needed. Non-interactive and invisible modes require no interaction. Turnstile does not ask visitors to identify objects in images.
Replace the reCAPTCHA browser script and widget with Turnstile. Update your server to read cf-turnstile-response and verify it at Cloudflare’s Siteverify endpoint. Also update your public and secret keys.
Tokens expire after five minutes and are single-use. Handle the expiry and error callbacks, reset the widget, and ask for a fresh check. If server verification is unavailable, keep the request blocked and let the visitor retry.
No. These are example forms. They verify real Turnstile tokens, but don’t create accounts, sign anyone in, charge a card, or save your email. The email field stays in your browser.