The CAPTCHA your users
will actually enjoy.

Replace the checkbox with a 10-second arcade game. Bots fail. Humans smile. Two lines of code to integrate.

Try a game. This is exactly what your users see.

๐Ÿ”ด

Connect 4

Get 4 in a row to pass

โฑ 15sEasy

1 of 7 games

Dead simple to integrate.

01
๐Ÿ›’

Step 01

Purchase a game

Buy any of the 7 arcade mini-games, or grab the full pack. Pay what you want, yours forever.

02
๐Ÿ“‹

Step 02

Copy your embed code

Your dashboard shows a two-line snippet: a script tag and a div with your unique site key.

03
โœ…

Step 03

Paste into your form

Drop it into any HTML form. When a visitor passes the game, a token is generated. Verify it server-side before processing the submission.

Try before you buy.

Click any game to play it live. This is exactly what your users will see.

Details + buy โ†’
Details + buy โ†’
Details + buy โ†’
Details + buy โ†’
Details + buy โ†’
Details + buy โ†’
Details + buy โ†’

๐ŸŸข All 7 games playable now ยท Click any card to try instantly

The checkbox is dead.

Security doesn't have to be annoying. Here's why developers are switching.

๐Ÿค–

Bots can't play games

Game logic requires real-time human input: spatial reasoning, reaction time, decision making. No scraper, headless browser, or ML model beats it without your token system catching it.

๐Ÿ˜Š

Users actually enjoy it

Instead of squinting at blurry letters or clicking fire hydrants, visitors play a 10-second arcade game. Conversion rates go up. Bounce rates go down. People screenshot it.

โšก

Two lines to embed

One script tag. One div. Drop it anywhere: React, Vue, plain HTML, WordPress. No SDK, no npm package, no bundler required.

๐Ÿ”

Server-side token verification

Game completion generates a signed short-lived JWT. Verify it on your server before processing any form submission. Bots can't fake the token.

๐Ÿ’ฐ

Pay what you want, keep forever

No monthly fees. No per-verification charges. No usage limits. Pay once, embed everywhere, use indefinitely.

๐ŸŽฎ

Your brand, not Google's

No reCAPTCHA watermark. No Google tracking. No privacy policy footnotes about third-party data collection. Your form, your experience.

The old wayVSThe CaptchaKit way

Legacy CAPTCHA

I'm not a robot
reCAPTCHA

Privacy ยท Terms

  • โœ•Users find it frustrating
  • โœ•Google tracks your visitors
  • โœ•Fails silently on VPNs
  • โœ•Free, but you pay in data

CaptchaKit

๐Ÿ”ดConnect 4 to verifyPLAY โ†’

CaptchaKit ยท No tracking

  • โœ“Users genuinely enjoy it
  • โœ“Zero third-party tracking
  • โœ“Works on all devices & VPNs
  • โœ“Pay what you want, keep forever

Pay what you want.

Name your price. Support the project with whatever feels right.

Best value

Full Pack

All 7 Games

Every arcade CAPTCHA we make. Sign up, grab your embed code, protect your forms today.

Pay what you want

You choose the price

$
๐Ÿ”ด
๐Ÿ’
๐Ÿ”จ
๐ŸŽจ
๐ŸŒ€
๐ŸŽ
๐Ÿงฑ
๐Ÿ”ด

Connect 4

Get 4 in a row to pass

โฑ 15sEasy
$
๐Ÿ’

Pac-Man Lite

Eat all 3 fruits before time runs out

โฑ 8sEasy
$
๐Ÿ”จ

Whack-a-Bot

Whack 5 humans, avoid bots

โฑ 12sMedium
$
๐ŸŽจ

Color Match

Repeat the color sequence

โฑ 10sMedium
$
๐ŸŒ€

Maze Runner

Navigate to the exit in time

โฑ 20sHard
$
๐ŸŽ

Fruit Sorter

Sort 6 fruits into the correct baskets

โฑ 15sMedium
$
๐Ÿงฑ

Stack It

Stack 5 blocks to pass

โฑ 10sEasy
$

Secure checkout via Stripe ยท All major credit cards accepted

Two lines. Any framework.

Add the script. Add the div. Done.

Client embed

<!-- 1. Load the widget script -->
<script src="https://captchakit.com/widget.js"></script>

<!-- 2. Drop the widget into your form -->
<form action="/submit" method="POST">
  <input type="email" name="email" placeholder="Email" />

  <div
    data-gamecaptcha
    data-site-key="gc_connect4_a8f3bc"
    data-game="connect4"
  ></div>

  <!-- widget.js sets this automatically on pass -->
  <button type="submit">Sign up</button>
</form>

<!-- gamecaptcha_token is added to the form automatically -->

Server verification

verify.js
// Node.js โ€” verify on your server before processing the form
const res = await fetch('https://captchakit.com/api/verify', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer cgv_your_api_key',
  },
  body: JSON.stringify({
    token: req.body.gamecaptcha_token,
    siteKey: 'gc_connect4_a8f3bc',
  }),
});

const { success, gameId } = await res.json();

if (!success) {
  return res.status(400).json({ error: 'Bot detected' });
}

// โœ… Human verified โ€” process the form
await createUser(req.body.email);
Works with ReactWorks with VueWorks with Next.jsWorks with plain HTMLNo npm install neededMobile responsiveTypeScript types includedGDPR friendly