No first-party history
New sessions without established cookies or prior reputation can be challenged even when the browser profile is coherent.
Captchas are a normal condition in protected browser workflows, especially for cold sessions and high-value actions. Undetect keeps challenge handling inside the runtime path so application code does not become a separate captcha orchestration system.
Runtime
Integrated solve path
CDP command
Activation surface
Included
No extra solve fee
Observable
Challenge outcomes
01 / Detect
Runtime observes challenge state in context.
02 / Solve
A proprietary CDP extension command activates handling.
03 / Continue
Session state and telemetry stay in the same runtime.
Commercial model
Captcha solving is included at no additional cost, removing a separate usage bill, vendor account, and incentive to build brittle bypass branches during incidents.
A strong browser profile reduces friction, but captchas are often a risk-management gate rather than proof that one value is malformed. Production automation needs to handle that condition deliberately.
New sessions without established cookies or prior reputation can be challenged even when the browser profile is coherent.
New device, new route, and no trust path can create enough uncertainty for a target to introduce friction.
Repeated similar actions across many sessions can trigger challenges without any single malformed browser attribute.
Some sites challenge first-time or high-value actions as a normal gate, not only as a bot verdict.
The docs describe a protocol, not a hidden retry trick: observe challenge families at launch, call custom CDP commands when the workflow reaches a gate, and inspect structured responses when a solve fails or is intentionally skipped.
UD_CAPTCHA_OBSERVE
Declare the challenge families to watch at launch so Stealthium can intercept and cache the data needed by solver commands.
Undetect.findCaptchas
Return captcha ids, metadata, and presence state when business logic needs to decide whether to solve or branch.
Undetect.clickCheckbox
Find a supported checkbox, click it, and handle the challenge that appears through the browser runtime.
Undetect.solveChallenge
Resolve active visual challenges after an invisible or checkbox flow has produced a challenge window.
Undetect.solveCaptchas
Detect supported token-based or image-based captchas, request a solution, inject it, and trigger callbacks.
log / captchas / hasSolvedCaptchas
Command responses include structured result flags and execution logs so challenge failures are observable.
When captcha handling is bolted on late, failures show up as intermittent flake: extra vendors, hidden retries, inconsistent challenge detection, and code paths that are hard to reason about during target drift.
Common pattern
Teams add challenge detection, vendor handoffs, retry loops, credentials, dashboards, and error handling across the codebase.
Undetect pattern
Undetect keeps the solve path inside the browser runtime and exposes it through a proprietary CDP extension command.
Some challenges are solved visually in the browser. Others use token-service workflows. Some should only be detected so your application can decide whether to retry, preserve state, or escalate. The point is that the decision stays visible.
Classifies visual challenges and drives mouse or input gestures in the browser for supported checkbox, turnstile-style, slider, and press-and-hold flows.
Reads challenge configuration, requests a token from a configured service, injects the response, and triggers the expected callbacks.
Use find-only commands and command responses when an application workflow needs to decide whether to retry, escalate, or preserve state.
Handled through explicit runtime commands that can block until solved or return quickly when nothing is present.
Supported when the action value can be derived or supplied, so scoring gates can be treated as part of the workflow.
Commands can target a specific frame id when the challenge is not attached to the top-level page.
Selector-driven image solving is available for traditional OCR-style challenge surfaces.
Challenge systems change presentation, timing, and variants without notice. The solving layer is maintained as part of the runtime so customer workflows do not need a redesign every time the challenge surface moves.
Validate that solving works across a realistic sequence, not only a single clean demonstration.
Measure behavior for cold-start sessions with no cookie history and identities with established state.
Include the variants and presentation changes that currently interrupt production workflows.
Confirm application logic can call the runtime rather than owning a separate captcha orchestration layer.
Evaluation should cover repeated runs, new profiles with no cookie history, returning identities, challenge variants, and the amount of application code required to keep the workflow moving.