Public Beta — all plans are free while we scale infrastructure

Stop bots.
Respect humans.

Captxa is an invisible, Proof-of-Work CAPTCHA built in pure C on the H2O HTTP server. With puzzle solving for suspicious requests. No cookies, no tracking pixels. Built for privacy and

NOBLOCKING

NO BLOCKING BY IP

~16KB

Client script size

0 cookies

No tracking, ever

EU-hosted

GDPR compliant by design

Frugal & Fair Pricing

Because C and H2O run on almost nothing, our server costs are a fraction of traditional CAPTCHA services.

All plans are completely free during the Beta — original prices crossed out for transparency.

Hobbyist

Free

Always free

Personal projects, portfolios, and open source apps.

  • 50,000 verifications/mo
  • Invisible PoW + puzzle fallback
  • Community support
Get started

Starter

$0 /mo $9

Free during beta

Small commercial sites and early-stage startups.

  • 100,000 verifications/mo
  • Analytics dashboard
  • Email support
Get started
Most Popular

Growth

$0 /mo $29

Free during beta

Growing SaaS, e-commerce, and content platforms.

  • 500,000 verifications/mo
  • Custom puzzle styling
  • Priority email support
  • Advanced analytics
Get started

Scale

$0 /mo $49

Free during beta

High-traffic applications with demanding security requirements.

  • 1,000,000 verifications/mo
  • Everything in Growth
  • Webhook event log
  • Direct engineer access
Get started

Need more than 1M verifications/month? Contact us.

How Captxa Works

We believe security systems should be fully transparent. Below is an exact, honest description of every step our server executes when verifying a user — no black boxes.

Normal Path — Invisible to Users

1

TLS JA4 Fingerprint

At the TLS handshake level, the server computes a JA4 fingerprint of the client's cipher suite, extensions, and TLS version. This fingerprint is bound to the session and re-verified on every request to detect fingerprint spoofing.

2

Browser Environment Check

A small JS snippet collects browser signals: WebGL renderer, screen dimensions, hardware concurrency, timezone, device memory, and checks for WebDriver presence, missing Chrome runtime, and error stack tripwires that reveal headless environments.

3

Encrypted PoW Challenge (18-bit)

The server generates a random 16-byte nonce and encrypts a token SIMP|ip|ja4|timestamp|pow_hex using ChaCha20-Poly1305. The browser must find a nonce such that SHA256(challenge + nonce) has 18 leading zero bits.

4

Token Binding & Replay Prevention

On submission, the server decrypts the challenge token, verifies the PoW solution, confirms IP match and JA4 match, and checks a Bloom filter to prevent replay attacks. Valid sessions receive a signed Ed25519 pass token in the response header.

Suspicious Path — Sliding Puzzle

1

Triggers

Complex mode is triggered when: the IP is on the suspicious Bloom filter, the JA4 fingerprint mismatches the User-Agent, the browser environment check reveals automation, or the rate limiter is exceeded.

2

Puzzle Generation

The server generates a randomized sliding puzzle image. The target solution coordinates are embedded inside a COMP|ip|ja4|ts|pow_hex|sol_x|sol_y token, encrypted with ChaCha20-Poly1305. Solution tolerance is ±7 pixels.

3

Mouse Movement Analysis

The full drag trajectory is recorded as [x, y, timestamp_ms] points and sent to the server. The trajectory passes through a multi-stage ML pipeline: integrity filters, burstiness analysis, sample entropy + jerk calculation, Fitts' law validation, and velocity coefficient-of-variation check.

4

Harder PoW (19-bit) + Final Token

Simultaneously with the puzzle, the browser must solve a slightly harder 19-bit PoW. A combined bot score must stay below 0.50 (vs 0.30 for the simple path). On success, a signed Ed25519 token is issued.

Infrastructure — Honest Status

Currently, Captxa runs on a single server located in Nuremberg, Germany (EU). This means latency may be slightly higher for users in Asia or the Americas. This is a known limitation and expanding to additional regions is on the roadmap. We will update this page as new nodes come online. We don't display uptime numbers yet — we'd rather earn that claim over time.

Developer Integration

Integrate Captxa in minutes. Add one script tag, call one function on your form, validate one token on your server.

index.html
<!-- Add before </body> — ~16 KB, zero external dependencies -->
<script src="https://cdn.jsdelivr.net/gh/HelloCaptxa/PublicJS@latest/script.js"></script>

<!-- Add a mount-point for the widget inside your form -->
<div id="captcha-widget"></div>

How We Compare

Captxa was built from scratch to fix what's broken in every existing CAPTCHA solution.

Feature Captxa reCAPTCHA v3 hCaptcha
Invisible to users ✓ Always Mostly Sometimes
Tracking & fingerprinting ✓ None Extensive Some
GDPR / privacy-first ✓ By design Problematic Partial
Token Self Verifyable ✓ Yes NO NO
Open, auditable logic ✓ Fully Black box Black box
Script weight ~16 KB ~500 KB ~300 KB
Free tier ✓ 50K/mo ✓ 10K/mo ✓ 100K/mo NON private

Frequently Asked Questions

Ready to drop the checkbox?

Sign up in seconds, integrate in minutes. Your users will never know it's there.