Undetectable. Still Fast.

Detection and performance benchmarks against CreepJS — proving Owl Browser passes every fingerprint test while keeping pace with bare-metal automation tools.

Baseline With Stealth Plugin

Playwright

  • Headless: 100%
  • Like Headless: 94%
  • Platform: Linux
  • GPU: ANGLE (Google, Vulkan 1.3.0 (S...
  • Fonts: 1/51
  • Devices: 0
  • User Agent: HeadlessChrome
  • Confidence: moderate

creepjs — fingerprint

Puppeteer

  • Headless: 100%
  • Like Headless: 50%
  • Platform: Linux
  • GPU: ANGLE (Google, Vulkan 1.3.0 (S...
  • Fonts: 1/51
  • Devices: 0
  • User Agent: HeadlessChrome
  • Confidence: moderate

creepjs — fingerprint

Owl Browser

  • Spoofed: Unique fingerprint per context — each session gets its own identity
  • Platforms: Windows, macOS, Linux
  • Headless: 0%
  • Like Headless: 31%
  • Platform: Windows
  • GPU: ANGLE (AMD, AMD Radeon RX 6900...
  • Fonts: 5/51
  • Devices: 7
  • User Agent: Mozilla/5.0 (Windows NT 10.0...
  • Confidence: moderate

creepjs — fingerprint

Fingerprint Uniqueness

Playwright and Puppeteer expose identical device fingerprints — they leak the real machine. Owl Browser generates unique fingerprints per profile at the C++ source level.

Category Playwright Puppeteer Owl (Windows) Unique?
Canvas f5ae5edb f5ae5edb dbf90531
WebGL 208a9379 208a9379 59bfb3f6
Audio 9048f6b9 9048f6b9 2655fd77
Fonts f936b9a1 f936b9a1 023b83e2
DOMRect c4c4b540 c4c4b540 8e02378c
SVGRect cbd2ed1a cbd2ed1a cca10e0b
Screen 5ccbceb6 b0313e03 39974c4d

Identical hash — real device leaked
Unique hash — properly spoofed

Stealth Has a Cost. Here's How Small It Is.

Playwright and Puppeteer run bare — no fingerprint spoofing, no context isolation, no anti-detection. Every Owl request includes all of that, yet full-cycle times stay competitive. 1000 sequential iterations per browser, same machine, same network. Median times shown.

Cold Start

median (p95)

  • Owl: 21.6ms
    p95: 32.2
  • Playwright: 60.8ms
    p95: 77.1
  • Puppeteer: 179.1ms
    p95: 206.4

Navigation

median (p95)

  • Owl: 183.0ms
    p95: 213.0
  • Playwright: 158.6ms
    p95: 190.9
  • Puppeteer: 162.9ms
    p95: 195.0

Screenshot

median (p95)

  • Owl: 41.5ms
    p95: 42.4
  • Playwright: 79.7ms
    p95: 94.5
  • Puppeteer: 98.9ms
    p95: 116.0

Close

median (p95)

  • Owl: 11.3ms
    p95: 12.1
  • Playwright: 14.9ms
    p95: 22.6
  • Puppeteer: 116.0ms
    p95: 136.0

Full Cycle

median (p95)

  • Owl: 258.5ms
    p95: 296.7
  • Playwright: 316.0ms
    p95: 355.4
  • Puppeteer: 560.0ms
    p95: 612.1

Methodology: Each browser performs 1000 sequential iterations of: create/launch → navigate to target URL (wait for domcontentloaded) → capture screenshot → close. All times in milliseconds. Playwright and Puppeteer run inside the benchmark container (local process). Owl Browser runs in a separate container and is accessed via REST API over localhost, adding ~5-10ms of network overhead per API call — Owl's real times are faster than shown. Sequential execution, same machine. Owl times include the full cost of stealth — fingerprint generation, per-context isolation, and REST API overhead to an isolated container.

Concurrency Scaling

All sessions launch simultaneously. Each performs a full cycle — create context, navigate, screenshot, and close.

Owl, Playwright, and Puppeteer all completed successfully across every concurrency level.

Detection Immunity, Production Speed

Zero headless detection. Unique fingerprints on every session. Competitive full-cycle performance. Deploy Owl Browser and stop getting blocked.