Playground
Test CaptchaCore live
Configure the widget in real time — mode, theme, language and more. The code snippet updates automatically.
API version
Adaptive defense: policy-based challenges, confidence score, reason codes, EdDSA-signed bindings
Widget mode
The checkbox checks itself automatically on human interaction.
Start mode
The challenge is fetched immediately on page load.
Theme
Language
Accent color
#34d399
Size
Checkbox text
Branding
Live preview & test
interactive | auto | auto | de | #34d399
Integration code
Widget options
| Attribute | Values | Default |
|---|---|---|
| data-captchacore | interactive | visible | invisible | interactive |
| data-start | auto | focus | none | auto |
| data-theme | light | dark | auto | auto |
| data-lang / lang | de, en, fr, es, it, nl, pl, pt, tr, ja, zh, ko, ar, ru | auto (html lang) |
| data-color | Hex color code | #34d399 |
| data-size | normal | compact | normal |
| data-brand | Text or empty | CaptchaCore |
| data-label | Checkbox text | i18n-basiert |
The other side
And this is what a bot looks like to us
Replayed signals of a typical headless bot (simulation, not a real attack) — compared directly with your verification above.
Headless bot (simulation)
User-Agent
HeadlessChrome/131.0
Mouse entropy
0.02 — no real movement
Typing rhythm
0 ms variance — machine-like
Canvas/WebGL
SwiftShader — virtual
Time-to-Submit
0.4 s — inhumanly fast
blocked
Risk score 100/100 · decided in 5 ms
Your verification above ran through the very same checks — just with human signals. Exactly this difference protects your forms.