Anti-detect browser for automation. Measured on real sites.
An anti-detect browser changes the fingerprint a site sees and keeps each profile apart. Ours is built for code and agents: our own Chromium fork in the cloud, a new fingerprint every session, residential IPs in 195+ countries, $0.02 per browser-hour.
Browser Use Cloud: 90.5% got through. 8.5 points ahead of Anchor, the next best.
- Browser Use Cloud90.5%
- Anchor82%
- Kernel80.5%
- Browserbase78.5%
- Browserless77.5%
- Steel74.5%
- Hyperbrowser73.5%
Got through · longer is better · scale 0–100%
- of visits got through, 100 bot-protected sites
- 90.5%
- Anchor, the next best cloud browser provider
- 82%
- plain headless Chrome, the baseline
- 3%
What an anti-detect browser is. And which kind you need.
- Built for
- People running many accounts by hand, each in its own saved profile
- Code and AI agents that open browsers, many at a time
- Where it runs
- An app on your computer. Some also launch profiles in their cloud
- On our servers. Nothing to install
- Identity
- Each profile keeps its own fingerprint, cookies and proxy
- A new fingerprint every session. Profiles keep cookies and logins
- Automation
- A local API starts a profile; your script attaches to its debug port
- One API call returns a CDP URL; your script connects to it
- Price
- Per month, by number of profiles
- Per browser-hour, $0.02, plus proxy traffic
Five anti-detect browsers built for multi-accounting, and Browser Use
Where each one runs, how code drives it and what it costs, from each vendor's own pages.
| Product | Where it runs | How code drives it | API on | Starting price | Free |
|---|---|---|---|---|---|
| Browser Use | Cloud only. Browsers run on our servers, created by API | One API call returns a CDP URL. Playwright, Puppeteer, any CDP client | Every account, including free | $0.02/browser-hour | One-time $1 credit for eligible signups, 10 browsers at once per project, shared by its API keys (up to 1,000 with spend, more on Enterprise) |
| Multilogin | Desktop app; profiles saved locally or in Multilogin's cloud storage. Scripts need the app running | A local launcher starts a profile and returns a port. Playwright, Puppeteer, Selenium | Pricing table lists API rate limits on paid plans | $11/mo | 5 profiles, cloud storage only |
| GoLogin | Desktop app, web app and a cloud browser (1 to 4 cloud launches at a time, by plan) | REST API and SDK; Puppeteer, Playwright, Selenium; a CDP endpoint for cloud sessions | Paid plans list 300 to 1,200 API requests a minute | $9/mo | 3 profiles |
| AdsPower | Desktop app with Chrome and Firefox based browsers | Local API on localhost:50325 opens a profile and returns its debug address. Selenium, Puppeteer, Playwright | Paid plans | $9/mo | 2 profiles |
| Octo Browser | Desktop app; can run headless in Docker | Local API on localhost:58888 starts a profile and returns a CDP endpoint. Selenium, Playwright, Puppeteer | Base plan and up, from €79/mo | €10/mo | No free desktop plan listed; a 2-day Starter trial with a promo code |
| Dolphin Anty | Desktop app for Windows, macOS and Linux | Local API on localhost:3001 starts a profile and returns a port. Puppeteer, Playwright, Selenium | Not on the Free plan | $10/mo | 3 profiles |
Browser Use
- Where it runs
- Cloud only. Browsers run on our servers, created by API
- How code drives it
- One API call returns a CDP URL. Playwright, Puppeteer, any CDP client
- API on
- Every account, including free
- Starting price
- $0.02/browser-hour
- Free
- One-time $1 credit for eligible signups, 10 browsers at once per project, shared by its API keys (up to 1,000 with spend, more on Enterprise)
Multilogin
- Where it runs
- Desktop app; profiles saved locally or in Multilogin's cloud storage. Scripts need the app running
- How code drives it
- A local launcher starts a profile and returns a port. Playwright, Puppeteer, Selenium
- API on
- Pricing table lists API rate limits on paid plans
- Starting price
- $11/mo
- Free
- 5 profiles, cloud storage only
GoLogin
- Where it runs
- Desktop app, web app and a cloud browser (1 to 4 cloud launches at a time, by plan)
- How code drives it
- REST API and SDK; Puppeteer, Playwright, Selenium; a CDP endpoint for cloud sessions
- API on
- Paid plans list 300 to 1,200 API requests a minute
- Starting price
- $9/mo
- Free
- 3 profiles
AdsPower
- Where it runs
- Desktop app with Chrome and Firefox based browsers
- How code drives it
- Local API on localhost:50325 opens a profile and returns its debug address. Selenium, Puppeteer, Playwright
- API on
- Paid plans
- Starting price
- $9/mo
- Free
- 2 profiles
Octo Browser
- Where it runs
- Desktop app; can run headless in Docker
- How code drives it
- Local API on localhost:58888 starts a profile and returns a CDP endpoint. Selenium, Playwright, Puppeteer
- API on
- Base plan and up, from €79/mo
- Starting price
- €10/mo
- Free
- No free desktop plan listed; a 2-day Starter trial with a promo code
Dolphin Anty
- Where it runs
- Desktop app for Windows, macOS and Linux
- How code drives it
- Local API on localhost:3001 starts a profile and returns a port. Puppeteer, Playwright, Selenium
- API on
- Not on the Free plan
- Starting price
- $10/mo
- Free
- 3 profiles
Why sites let it in.
The only setting is the proxy country.
How automation attaches. A local app, or one API call.
POST /api/v4/browsers returns a cdpUrl, and connectOverCDP or puppeteer.connect attaches to a browser on our servers. To start it logged in, pass a profileId; profiles keep cookies and logins. Same code from Playwright or Puppeteer.Questions people ask
Is Browser Use an anti-detect browser?
Yes, the cloud kind, built for automation. It changes the fingerprint a site sees and routes through residential proxies, like a desktop anti-detect browser. It is not a multi-account profile manager: browsers are created by API on our servers and driven by code or AI agents. If you manage many accounts by hand in a desktop app, a desktop anti-detect browser such as Multilogin, GoLogin, AdsPower, Octo Browser and Dolphin Anty is built for that.
Can I keep the same identity across sessions?
Logins, yes. A profile keeps cookies, local storage and login state, and a browser created with its profileId starts logged in. The fingerprint is randomized per session, and the API has no option to pin one fingerprint to a profile. If a site needs the exact same device fingerprint for months, a desktop anti-detect browser is built for that.
Do anti-detect browsers work with Playwright and Puppeteer?
The multi-account ones do: their API or SDK starts a saved profile and hands Playwright, Puppeteer or Selenium a debug port or WebSocket URL to attach to. Multilogin, GoLogin, AdsPower, Octo Browser and Dolphin Anty all document this. Browser Use returns a CDP URL from one API call, so connectOverCDP or puppeteer.connect works with no local app.
What makes it hard to detect?
It is our own Chromium build, maintained and patched non-stop. Canvas, WebGL, fonts, navigator and the other fingerprint surfaces are randomized per session, and headless signals are removed.
How is the number measured?
Stealth Bench V2: 100 real sites that block bots, two visits per provider, 60 seconds each. A judge model that does not see the provider name checks whether the real site loaded. The chart on this page is the result, for cloud browser providers. Each ran the stealth setting its standard plans offer (Steel's have none); Browserbase Verified and Hyperbrowser Ultra Stealth need Enterprise plans and were not tested. Plain headless Chrome gets through 3% of the time. The sites were picked because Browser Use Cloud historically got through where stock Chrome with a US proxy did not, so they are not a balanced sample. Code and raw results are public.
Does it get through Cloudflare?
On our earlier 71-site benchmark it got through 93% of Cloudflare-protected sites, 85% of Akamai and 81% of PerimeterX. Nobody gets 100%, and detectors change, so the benchmark is re-run as they do.
Are proxies included?
Residential proxies in 195+ countries are on every browser at $5/GB, chosen per session by country code. Bring your own proxy and egress is $0.20/GB.
Does my Playwright or Puppeteer code need changes?
Your page logic stays the same. Two things change: replace the local launch with connectOverCDP (or puppeteer.connect) to the cdpUrl, and stop the browser through the API when you are done, because closing the CDP connection does not stop it.