Device and operating system
OS version, architecture, device class, screen behavior, and platform-specific browser traits must agree.
Undetect resolves device identities before launch so OS, browser, graphics, locale, route, storage, and session state agree from the first measurement. The goal is not plausible-looking values; it is a profile that behaves like it belongs to the population it claims to represent, backed by millions of fingerprints per month across Windows, macOS, and Android.
Input constraints
4.2M
Windows
10, 11, Server 2022
2.8M
macOS
13.x, 14.x, Apple Silicon
3.5M
Android
12, 13, 14
Resolved before launch
Pre-launch / Coherence resolution
Persistent / Identity continuity
Session sync / State continuity
Unlimited / No per-fingerprint fee
847
OS versions
2,341
Browser builds
156
Device classes
94
Regions
412
GPU variants
The docs expose the important distinction: customers provide inputs, not a brittle final fingerprint. The launch system validates those inputs, fills the missing dimensions, and returns the effective profile for inspection.
UD_FINGERPRINT_JSON
Provide partial inputs such as OS, country, timezone, languages, or public IP; the fingerprint API validates them into a complete coherent profile.
UD_FINGERPRINT_FILE
Read and write a fingerprint file so a specific device profile can be reused across separate browser sessions.
UD_FINGERPRINT_UPDATE
Let cached profiles refresh as browser versions and high-entropy surfaces age, or disable writes when a static fixture is required.
Undetect.getFingerprint
Retrieve the full profile that actually launched, including fields derived from defaults, route resolution, and backend validation.
Most failures come from treating a fingerprint as a list of editable values. Real systems evaluate behavior, distribution, continuity, and change over time.
OS version, architecture, device class, screen behavior, and platform-specific browser traits must agree.
Version distribution, API behavior, feature exposure, and execution semantics are part of the identity.
Canvas, WebGL, GPU, media, and font outputs need to match the device profile instead of standing apart.
Language, timezone, region, route, and repeated account history are evaluated together by modern systems.
Cookies, local storage, permissions, and browser state are continuity signals, not incidental implementation details.
A profile that never evolves can become just as suspicious as a profile with an obvious mismatch.
Customers should not have to specify hundreds of parameters. The resolver expands minimal constraints into a coherent profile before the browser starts, which avoids early measurements seeing the wrong state.
01
Start from minimal hints such as operating system, region, screen class, and optional device class.
02
The resolver expands those hints into a cohesive browser, device, graphics, locale, and runtime profile before launch.
03
Identity is present from the first browser measurement, avoiding late patch contradictions.
04
Returning identities keep continuity while surfaces update over time so profiles do not freeze into outliers.
Stealthium requests a new randomized persona for the launch.
Inputs such as Windows + country are expanded into a full profile before the browser opens.
A fingerprint file acts like a device identity record and is refreshed when surfaces age.
Cookies and browser state move with the identity so returning sessions behave like returning devices.
Persistent workflows need more than reusable JSON. Cookies, storage, permissions, session artifacts, and controlled surface evolution all affect whether a returning identity looks real.
Tie a fingerprint to a specific identity when returning-user semantics or authenticated workflows require continuity.
Back up cookies, relevant storage, session data, and the associated fingerprint JSON for deterministic resumption.
Refresh fingerprints as browser, platform, and device distributions move so long-lived profiles stay plausible.
Capture profiles from your own user population when exact alignment matters more than generic realism.
Fingerprints are included at no extra cost because identity coherence is a prerequisite for reliable operation.
UD_SYNC_REMOTE
Use an rclone-backed remote such as object storage to download the user data directory before launch and upload it after close.
UD_SYNC_FILENAME
Name synced profiles with a reference id or metadata value so browser state maps cleanly to your own identity model.
UD_SYNC_AUTO_VACUUM
Retain cookies, local storage, IndexedDB, and relevant profile data while stripping files that only add size and sync latency.
Undetect.setConfig
Toggle profile upload at runtime after deciding whether a session produced valid state worth preserving.
Test pre-launch resolution, persistent identities, Session Sync, and automatic profile evolution against the flows where mismatch currently causes blocks or challenge escalation.