Skip to main content

Bot Detection Overview

Browserless provides multiple layers of bot detection bypass: stealth routes for fingerprint-level evasion, an Unblock API for sites that detect automation libraries, and CAPTCHA solving for challenges that still appear.

Our Bot Detection Philosophy

IP reputation and browser fingerprinting are the two primary factors that determine whether automated sessions are detected. Combining both is the most effective way to bypass advanced detection systems. Our approach:

  • Stealth-first automation: Prevent detection rather than react to it, using human-like fingerprints with our stealth routes.
  • IP reputation: Residential proxies with high reputation make your sessions appear as regular users and are often more effective than fingerprint masking alone.
  • Layered defense: Combine multiple techniques for maximum effectiveness. A high-reputation IP with a human-like fingerprint yields the best results.

Feature Overview

Stealth Routes

Start here. Stealth routes apply advanced fingerprint mitigations and entropy injection at the connection level, making automated browsers indistinguishable from real users. Changing your connection URL is all that's required:

  • /stealth (Recommended): Managed stealth environment with advanced fingerprinting
  • /chromium/stealth: Chromium-optimized fingerprint mitigations
  • /chrome/stealth: Chrome-native anti-detection protections

See Stealth Routes for a detailed comparison and usage examples.

Residential Proxies

If stealth alone isn't enough, add residential proxies to your stealth route. Proxies improve IP reputation, making sessions appear to originate from real users rather than data centers. Residential proxies are slower than datacenter IPs but significantly more effective against sites that block by IP.

See Proxies for setup details.

Site Unblocking

If stealth and proxies still can't bypass a site's defenses, the Unblock API takes a minimalistic approach that works directly with the browser's native interfaces, leaving no library traces. You can also use BrowserQL for the same result. Both return an unblocked browser session that you connect Puppeteer or Playwright to for continued automation.

CAPTCHA Solving

When a site is unblocked but still presents CAPTCHAs, CAPTCHA solving can automatically resolve them:

  • Automatic solving: add solveCaptchas=true to your connection URL. Browserless monitors and solves CAPTCHAs automatically without you needing to call solveCaptcha manually. Try this first.
  • Detection via the Browserless.captchaFound CDP event for more granular control
  • Programmatic solving with Browserless.solveCaptcha when you need to trigger solving manually
  • Works with Puppeteer, Playwright, and other automation tools
  • Human-in-the-loop fallback via live URL sessions

Next Steps