Bot Detection Test
Runs 50+ checks against your browser to detect automation frameworks, headless environments, DevTools, API tampering, and behavioral anomalies. Everything runs locally — nothing is sent to a server.
Explore Our Tools
Free IP & browser security tools — no sign-up required.
What is bot detection?
Bot detection analyzes a browser environment to determine if it is controlled by a human or automated software. Websites use it to prevent scraping, credential stuffing, ad fraud, and other abuse. Modern detection examines dozens of signals — Navigator properties, WebGL rendering, timing patterns, API integrity — to build a confidence score.
What automation frameworks are detected?
- Selenium / ChromeDriver — $cdc_ document properties, __selenium_unwrapped, __webdriver_evaluate, domAutomation globals, and navigator.webdriver flag.
- Puppeteer — HeadlessChrome user-agent, missing chrome.runtime, CDP stack traces, and SwiftShader WebGL renderer.
- Playwright — webdriver prototype tampering, missing outer dimensions, overridden Navigator getters.
- PhantomJS & Nightmare.js — framework-specific globals (window._phantom, window.__nightmare).
- Cypress — detects Cypress test runner globals and instrumentation.
- DevTools — window size differential, toString getter triggers, debugger timing analysis.
What API integrity checks are performed?
We verify that critical browser APIs haven't been tampered with. Anti-detect browsers and stealth plugins override Navigator property getters, replace Function.prototype.toString, and proxy the navigator object. Each getter is tested for native code origin, prototype leaks, and toString consistency. Screen properties are verified the same way.
Why does this matter?
If your browser fails bot detection, websites will serve CAPTCHAs, block requests, or flag your account. This is critical for multi-account management, web scraping, and automated testing. Pair this test with our Browser Fingerprint Test for device-level analysis and IP Lookup for IP reputation.
Frequently Asked Questions
What is a bot detection test?
A bot detection test checks your browser for signals that are commonly associated with automated tools like Selenium, Puppeteer, or Playwright. It examines Navigator properties, Webdriver flags, CDP markers, and User Agent consistency to determine whether your browser looks like a real human user or an automated bot.
What does the Navigator check do?
The Navigator check examines dozens of browser properties such as plugins, languages, vendor, hardware concurrency, device memory, and more. Automated browsers often have missing or inconsistent values in these properties, which can reveal their non-human nature.
What is Webdriver detection?
Webdriver detection looks for the navigator.webdriver flag and other markers left by automation frameworks. Selenium sets specific DOM properties, Puppeteer leaves Chrome DevTools Protocol traces, and PhantomJS has its own global variables. If any of these are present, the browser is likely automated.
What does CDP stand for and why does it matter?
CDP stands for Chrome DevTools Protocol. It is used by tools like Puppeteer and Playwright to control Chrome programmatically. CDP detection checks for timing anomalies and stack traces that indicate a browser is being controlled remotely rather than by a human.
Can a VPN or proxy trigger bot detection?
A VPN or proxy by itself does not trigger bot detection. These checks focus on browser internals, not network properties. However, some poorly configured browser automation setups that also use proxies may fail multiple checks simultaneously.
How can I fix a failed bot detection check?
If you are a regular user seeing failed checks, try updating your browser to the latest version or disabling experimental browser extensions that modify Navigator properties. If you are running automation, you may need to use undetected browser configurations or stealth plugins.
Is this test safe? Does it send my data anywhere?
Yes, it is completely safe. All checks run locally in your browser using JavaScript. No data is collected or sent to any server. You can verify this by inspecting the network tab in your browser developer tools while the test runs.

