# Browser Use vs BxPlaywright (slim)

> Browser Use scores 80.3 (A) to BxPlaywright's 55 (C) for browser automation. Prices, MCP, x402, uptime and agent notes side by side.

- Full: https://www.anchorterminal.com/compare/browser-use-vs-bx-playwright.md (~6,000 tokens) · this version ~3,730 tokens · JSON https://www.anchorterminal.com/compare/browser-use-vs-bx-playwright.json · canonical https://www.anchorterminal.com/compare/browser-use-vs-bx-playwright
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-01
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

Browser Use scores 80.3 (A) on agent readiness against BxPlaywright's 55 (C), and leads in 6 of 7 scored categories. Both do browser automation. Browser Use accepts x402. BxPlaywright doesn't.

- Browser Use: A 80.3, rank #8 of 1260 · https://www.anchorterminal.com/tools/browser-use.min.md
- BxPlaywright: C 55, rank #816 of 1260 · https://www.anchorterminal.com/tools/bx-playwright.min.md
- Browser Use, good for An agent that wants to hand a whole browser task to a hosted agent and get a result back, or that needs a low-cost cloud browser over CDP, and for unattended agents that can pay by x402. Ahead on Reliability, 87 against 41; Schema & documentation, 86 against 66; Agent ergonomics, 78 against 63; Security & auth, 69 against 43; Payments & pricing, 90 against 60; Maintenance & community, 82 against 53. Also Agent-ready, a grade of BB or better; An agent can pay per call over x402, with no account; A hosted endpoint, with nothing to install; Runs on your own machine; Free to start without a card.
- BxPlaywright, good for Teams on BoxLang or modernising CFML who want browser tests, rendering and a browser for BoxLang AI agents in the same language. Agents outside BoxLang get the same tools from playwright-mcp directly. Also No key needed to call it.

| Category | Browser Use | BxPlaywright |
| --- | --- | --- |
| Reliability (16%) | 87 | 41 |
| Performance (10%) | pending | pending |
| Schema & documentation (13%) | 86 | 66 |
| Agent ergonomics (13%) | 78 | 63 |
| Security & auth (14%) | 69 | 43 |
| Payments & pricing (10%) | 90 | 60 |
| Task success (10%) | pending | pending |
| Maintenance & community (7%) | 82 | 53 |
| Transparency & trust (7%) | 66 | 70 |

| Fact (where they differ) | Browser Use | BxPlaywright |
| --- | --- | --- |
| Kind | HTTP API | SDK + MCP |
| Vendor | Browser Use | Ortus Solutions |
| Hosted endpoint | `https://api.browser-use.com/api/v4` | no (local only) |
| Transports | HTTP, Streamable HTTP, stdio |  |
| Auth | API key | None |
| Pricing | Pay per use | Free |
| x402 | yes | no |
| Licence | MIT for the open-source library and the SDK. Browser Use Cloud is a proprietary service under Browser Use's terms of service | Apache-2.0 |
| Tools exposed | 7 | none |
| MCP registry | `com.browser-use/browser-use` | not listed |
| Last release | 2026-10-30 | 2026-10-23 |
| Terms last updated | 2026-07-15 | no date given |
| Customer content may train models | yes | not found in the text |
| Terms restrict automated access | yes | not found in the text |
| Terms restrict benchmarking | yes | not found in the text |
| Terms or service can change without notice | yes | not found in the text |
| Arbitration or class-action waiver | yes | not found in the text |
| Popularity | 117k stars, 107k npm/wk, 2.1M PyPI/wk | none |
| Agent reviews | 3/5 (4) | none |

Why the edge:
- Reliability, Browser Use +46: Browser Use 87 (Graded as a hosted service, on Browser Use Cloud. status.browser-use.com runs on Better Stack with one component, Browser Use API, and a 90-day day-by-day history (20). That history shows every day operational from 20 July to 31 October 2026, with no incidents in the data, re-read on 1 November. It is one HTTP monitor, so browser or agent failures wouldn't show there (30). Rate limits published with numbers, 25 to 100 requests a second per project in five-second windows, edge ceilings of 1,000 a second per IP and 2,500 for selected status reads, and concurrency from 10 to 1,000 sessions by lifetime spend (15). 429 responses carry Retry-After, `limit_rps` and `retry_after_seconds`, and the docs give backoff and safe-retry guidance. The SDK retries only 429, three times, without reading Retry-After, and run creation has no idempotency key (12). The pricing page, re-read on 1 November, lists custom SLAs for Enterprise and publishes none (0). API V4 is the current API. The hosted MCP server sits on a /v3 path and the changelog calls it legacy (10).); BxPlaywright 41 (Read with the local-software lines and graded as a pre-release. Official package on ForgeBox with BoxLang 1.17.0 or later, Java 21 and the supported platforms stated, but the only version is 1.0.0-snapshot, rebuilt from the development branch on 23 October 2026, with no binary hash on the entry (14 of 20). tests.yml runs 24 test files on Ubuntu and Windows with JDK 21, real-browser tests on Linux and a test of the full distribution, on pull requests, pushes to development and daily. Whether runs pass wasn't read, since WebFetch refused GitHub (15 of 25). Issues weren't readable for the same reason, bugs go to Ortus's Jira, and the repository is a month old, so there's no record to read (5 of 25). Keep a Changelog with semantic versioning stated and a written public contract, but nothing has been released under it and the changelog reads only [Unreleased] (7 of 15). Ortus announced 1.0 as generally available on 13 October, but no 1.0.0 build or tag exists, so it isn't 1.0 for this line (0 of 15). 14+15+5+7+0 = 41.)
- Payments & pricing, Browser Use +30: Browser Use 90 (x402 on x402.api.browser-use.com for the V2 and V3 APIs, in USDC on Base. Payments are credit top-ups to a wallet-tied project, $1 by default, not per-call prices, and the x402 guide says it doesn't support API V4 yet, the API the docs recommend, so partial (30). Per-hour, per-GB and per-token prices published without login, unchanged on 17 October (20). $1 of free credit once for eligible Google, GitHub or Microsoft signups, no card (20). An agent with a funded wallet gets access with no account or API key. The separate agent signup endpoints are off and return 403, per the 8 October check (20).); BxPlaywright 60 (Free, self-hosted, nothing to buy, so 20 + 20 + 20. The BoxLang runtime's paid plans aren't needed for this module. No payment protocol (0). 60 in all.)
- Maintenance & community, Browser Use +29: Browser Use 82 (The Python library, which carries the CLI agents use with cloud browsers, was tagged 0.13.14 on 26 October 2026, the cloud changelog has an entry on 30 October (BU Ultrafast on API V4), and the SDK's last tag is still 3.12.1 on 16 October (30). SDK releases on 11 and 22 August, 3 and 4 September and 16 October, library tags from 16 August to 26 October, and changelog entries on 10, 17 and 24 August and 30 October (20). A dated public changelog, a support address and a Discord. We couldn't read GitHub issue reply times because the API isn't open to us, so 10 of 15 on the closed-service line (10). Current official SDKs for Python and TypeScript, and a registry entry under the verified com.browser-use namespace, now at 0.13.11 (published 21 October) with the hosted server at https://api.browser-use.com/v3/mcp as its remote (15). The repository has test, lint and publish workflows. We didn't see their pass state (7).); BxPlaywright 53 (The snapshot build of 23 October 2026 is the latest published package, so 30 on time, though it isn't a release (30). No tagged releases or dated changelog entries in the 90 days, only one version rebuilt (0 of 20). 39 pull requests merged by Luis Majano between 30 September and 23 October. Issue replies couldn't be read and bugs go to Jira (10 of 25). Not in the official MCP registry, and the ForgeBox package has no stable version (5 of 15). Playwright for Java 1.63.0, Dependabot for Gradle monthly and Actions quarterly, a daily test run and a format check (8 of 10). 30+0+10+5+8 = 53.)
- Security & auth, Browser Use +26: Browser Use 69 (API keys in a header, several per project, each with an optional monthly spending cap that the docs call a soft limit. The troubleshooting guide, read on 17 October, describes restricted keys. With Full access turned off at creation, a key gets Read or Write per V4 resource, as scopes of the form `v4:runs:create`, and a request outside them returns 403 naming the missing scope. Scopes can't be changed after creation and no rotation or revocation guide was found, so 25 of 30, as for other scoped keys without rotation. The x402 host authenticates by wallet signature (25). A key restricted to Read can only list and get, secret bindings limit each credential to at most 20 named hostnames, 1Password vaults take an allowed-domain list, runs take `maxCostUsd`, and a person can take over the live browser. No confirmation step for destructive calls, and the docs don't say whether key scopes reach the V3 API or the MCP server (15). Agents read untrusted pages, and we found no prompt-injection guidance in the cloud docs. The secrets page does warn that a typed secret is visible to the page and to an agent with CDP access (3). Ordered run events, session messages, per-session cost and optional recordings give the operator a trail. No audit log of key or account changes found (12). SOC 2 Type II audited by Accorp Partners for 17 July to 17 October 2025, a security.txt with a contact and no Expires field, a Vanta trust centre, and zero data retention and HIPAA support for Enterprise. No bug bounty or public advisories found (14).); BxPlaywright 43 (Library reading, as puppeteer and playwright-mcp were. No credential to leak and nothing to scope, so the middle band (20 of 30). Nothing is restricted by default. `browser_visit` takes any URL with no allow-list, `browser_screenshot` writes to any path the model passes, and the tools are added to bx-ai's global registry unless `registerAiTools` is false, so an agent given every registered tool gets a browser. Over MCP it starts Microsoft's server, which limits file access to workspace roots, and Ortus's plugin starts it with `--headless` but without `--isolated`, with `browser_run_code_unsafe` and `browser_evaluate` in the default set. HTTPS errors are not ignored by default (6 of 20). Page snapshots and text go to the model unfenced, and the docs give no prompt-injection guidance (0 of 15). Screenshot, trace and video policies, `show-trace`, and interception points such as onPageCreate and onPlaywrightArtifact give the operator a record, all off by default (10 of 15). CONTRIBUTING.md asks for reports to security@ortussolutions.com and the Slack #security channel; SECURITY.md points there. No security.txt (410, per the boxlang-ai check of the same day), no bounty, no advisories. Node.js downloads are checked against the release's SHA-256 list (7 of 20). 20+6+0+10+7 = 43.)
- Schema & documentation, Browser Use +20: Browser Use 86 (OpenAPI 3.1.0 documents for API v2, v3 and v4, the v4 one with 50 operations on 33 paths and 73 schemas on 17 October (25). llms.txt, a full-text bundle and a Markdown copy of every docs page (10). The guides say which product and API version to pick and when not to. In the v4 document four operations have no description, Create Run among them, and request fields such as `task`, `sessionId` and `maxCostUsd` have none. The seven MCP tools have one-line descriptions (13). Required fields are marked and there are 12 enums, but `modelParams` is free-form and six schemas allow any extra properties, per the 8 October check (10). Python, TypeScript and curl examples throughout, named error schemas for 402, 404 and 429, and a troubleshooting table by status code. 36 of the 50 operations document an error beyond 422, 404 on 32 and 403 on 24, though only three document 429. The 8 October note said most documented only 422, which the 8 October copy of the spec in the vendor's docs repository doesn't bear out either (13). Versioned paths /api/v2, /api/v3 and /api/v4 and a dated public changelog, newest entry 24 August 2026 (15).); BxPlaywright 66 (Library reading. BoxLang is dynamically typed. The public API is listed in the docs' integrations page, `help()` and `bxplaywright help --json` describe it at run time, and the ten agent tools describe each argument in a sentence, with no published API reference (14 of 25). llms.txt with a Markdown copy of each of 18 docs pages (10). The AI page says when to use `aiTools()`, the registry or MCP, and when to turn registration off. Tool descriptions are one line each (13 of 20). Every agent-tool argument is a string, with no enums or limits; library options are checked, and InvalidOption lists the valid values (9 of 15). An errors page lists each error type with when it happens and the fix, eight runnable examples sit in the repository, and the docs have code on every page (13 of 15). Keep a Changelog and docs versioning on release, but no released version and no tags yet (7 of 15). 14+10+13+9+13+7 = 66.)
- Agent ergonomics, Browser Use +15: Browser Use 78 (The hosted MCP server has seven compact tools. The API has a minimal status endpoint for polling, and run events take `limit`, an `after` cursor and `include_output` (22). Cursor and limit on runs, sessions, files and downloads, and page number and size on browsers, profiles and extensions, so two pagination styles, with status, session and metadata filters (17). Errors carry codes an agent can act on, such as `api_key_monthly_spend_limit_reached` with `cap` and `spent`, `rate_limited` with `limit_rps`, and `domain_not_allowed` with the origin. Other errors are a bare `detail` string (16). Cancel, session delete and workspace delete are documented as idempotent. `POST /runs` has no idempotency key, and the docs tell callers to check the earlier run before resubmitting. We didn't read the MCP tools' annotations (8). Only `task` is required to create a run, with a default model, and official SDKs cover Python and TypeScript (15).); BxPlaywright 63 (Library reading, scored on what a tool-calling agent gets. Ten compact in-process tools for BoxLang AI, with nothing to load until a tool is used (25 for ten or fewer), less 5 because every action tool returns the whole page's AI snapshot. Through MCP an agent gets Playwright's 24 default tools (20 of 25). The agent tools have no depth, selector or size limit, and `browser_text` returns the whole page. `snapshot( selector )` exists in the library but not in the tools (8 of 20). Errors come back to the agent as text in the form `Error [type]: message Fix: detail`, and the error types are documented (16 of 20). Assertions retry until they pass. The in-process tools carry no read-only or destructive hints, and bx-ai doesn't read them; over MCP the annotations are Microsoft's (8 of 20). Works with defaults (headless Chromium, 1280 by 720) and profiles, but in one language, BoxLang, with the MCP route for any other client (11 of 15). 20+8+16+8+11 = 63.)
