# OpenBrowse > OpenBrowse is an open-source, self-hosted alternative to Browser Use Cloud: AI browser agents that run on your own hardware, driven through the v3 REST API, with schema-validated structured output, anti-hallucination grounding guards, and a live visual dashboard. OpenBrowse is an open-source, self-hosted alternative to Browser Use Cloud. It serves the same v3 REST API that the `browser-use-sdk` client already speaks, so migrating an existing integration means changing `baseUrl` and `apiKey`, with three request fields accepted but inert (listed in the key facts below). It runs on a Raspberry Pi 5 or any Debian or Ubuntu machine. Licence: MIT. DOI: 10.5281/zenodo.21986248. Source: https://github.com/lujstn/openbrowse. Author: Lucas Johnston Kurilov (https://orcid.org/0009-0004-3743-2349). ## Key facts - Like for like, same model and same reasoning effort (claude-sonnet-5, reasoning high): Browser Use Cloud cost $0.78 and used 859k tokens; OpenBrowse cost $0.40 and used 242k. That is 1.95x cheaper on 3.55x fewer tokens, but OpenBrowse was 86 seconds SLOWER on that pairing. This is the comparison that holds the model constant. - Switching model as well as runtime widens the gap: OpenBrowse on gpt-5.6-terra at reasoning none cost $0.24 against Browser Use Cloud's $0.78, which is 3.25x cheaper, 4.25x fewer tokens and 1.46x faster. Note this compares the best of 9 OpenBrowse configurations against a single Browser Use Cloud run on a different model. - Browser Use Cloud recovered all 14 records but hallucinated fields the page never displayed, job seniority among them. OpenBrowse refuses ungrounded values at the answer-store boundary. Every OpenBrowse configuration recovered 14 of 14 without inventing fields. - Costs are LLM token spend only. OpenBrowse charges no per-task platform fee and Browser Use Cloud's own platform charge is excluded from its figure, so the total-cost gap is wider than these token numbers show. - Cost per full 14-record extraction on OpenBrowse ranged from $0.22 to $1.62 in LLM tokens. - What does NOT carry over from Browser Use Cloud, stated because it will break a migration otherwise: Browser Use Cloud runs a managed US residential proxy by default, so target sites see a residential IP. OpenBrowse has no proxy layer at all and requests originate from your own machine's IP. proxyCountryCode, enableRecording and skills are accepted so existing code still compiles, but none of them does anything, and recordingUrls, screenshotUrl and workspaceId always come back empty. There are no session recordings, screenshots, workspaces, skills or hosted integrations. If your current jobs depend on the proxy, test that first. - Same v3 REST surface as Browser Use Cloud: sessions, structured output schemas, cost caps, live URLs, profiles. - Visual-first execution: the agent drives real browser tabs viewable live over VNC, rather than scripting pages headlessly. - `read_pages` opens a whole listing in parallel tab waves of up to six foreground tabs, including inside embedded cross-origin panels. - Structured output is validated live against your JSON Schema, with per-field coverage tracking and a completeness gate the agent must pass before it can finish. - OpenAI and Anthropic models want opposite ends of the reasoning dial on browser tasks: OpenAI models perform better with less reasoning, Anthropic 5-series models need more. ## Pages - [Home](https://openbrowse.co/): What OpenBrowse is, the measured comparison against Browser Use Cloud, what it does that a hosted runner does not, the two-line SDK migration, and the FAQ. Sections: The open-source Browser Use Cloud alternative; Just change two lines.; Cheaper, faster, hallucination-resistant.; What it does that a cloud runner does not; FAQs - [Browser agent benchmarks](https://openbrowse.co/benchmarks): Every run in full, what the runs show, how much reasoning each model family wants, which model to reach for, and how to repeat the task yourself. Sections: Browser agent benchmarks; What we learned running it; Reasoning cuts both ways; Which model to reach for; Run it yourself - [Pricing](https://openbrowse.co/vs/browser-use-cloud/pricing): Browser Use Cloud's published rates read on a stated date, the same work priced on your own hardware, and the multiplier between the two. Sections: Browser Use Cloud pricing, and what self-hosting costs instead; What Browser Use Cloud charges; What the same work costs self-hosted; The multiplier is the whole story - [OpenBrowse vs Browser Use Cloud](https://openbrowse.co/vs/browser-use-cloud): A dimension-by-dimension comparison of the self-hosted runtime against the managed service, including the rows where the managed service wins. Sections: OpenBrowse vs Browser Use Cloud; Dimension by dimension; Just change two lines.; FAQs - [OpenBrowse vs Browserbase](https://openbrowse.co/vs/browserbase): The open-source, self-hosted alternative to Browserbase for the buyer who wants the agent rather than the browser: twelve dimensions from both vendors' own documentation, Browserbase's published rates read on a stated date, and OpenBrowse's measured cost, token and latency figures on a task published in full. Sections: OpenBrowse vs Browserbase; Dimension by dimension; What Browserbase charges; Measured, on a task anyone can rerun; FAQs ## Documentation Every documentation page below is also available as plain markdown by adding .md to its address, for example https://openbrowse.co/docs/installation.md. - [Solving CAPTCHAs](https://openbrowse.co/docs/captchas): How OpenBrowse solves CAPTCHAs through CapSolver: which types are solved, which are only recognised, what a solve costs, and why the checkbox never ticks. - [The openbrowse command](https://openbrowse.co/docs/cli): Every openbrowse subcommand: running the server, managing the systemd service, checking for and installing updates, tuning the host, and removing it again. - [How OpenBrowse works](https://openbrowse.co/docs/concepts): What actually happens between POST /v3/sessions and a finished result: the display slots, the step loop, the goal pre-flight, the answer store, and the reviewer. - [Cost control](https://openbrowse.co/docs/cost): What a run costs, how the real-cost engine prices it from actual token usage, and how maxCostUsd and CLOUD_MAX_COST_FACTOR enforce a hard stop-loss. - [Exposing it safely](https://openbrowse.co/docs/exposing): Reach your OpenBrowse instance from outside its network using Tailscale, either privately or publicly over TLS, without opening a router port. - [Getting started](https://openbrowse.co/docs): Install OpenBrowse on a Raspberry Pi or any Debian machine, run your first browser agent, and point an existing browser-use-sdk client at it. - [Installation](https://openbrowse.co/docs/installation): Full installation of OpenBrowse on Debian or Ubuntu, including the virtual display behind the live view, configuration, running it as a service, and keeping it up to date. - [The live view and debugging](https://openbrowse.co/docs/live-view): Watching a run over VNC, reading the step feed's entry types, following sandbox code in the code tab, and exporting a run as JSON for diagnosis. - [Migrating from Browser Use Cloud](https://openbrowse.co/docs/migrating): What changes when a browser-use-sdk integration moves from Browser Use Cloud to self-hosted OpenBrowse: the two-line client change, the request fields that are silently ignored, the model names that are rejected, and the timing differences that will surprise you. - [Choosing a model](https://openbrowse.co/docs/models): Which model and reasoning effort to use for browser tasks, the full per-model reasoning ladder, and why the two providers want opposite ends of the dial. - [Profiles](https://openbrowse.co/docs/profiles): Keep agents logged in across sessions, and import your existing Browser Use Cloud profiles so profileId references keep working unchanged. - [Running it on a Raspberry Pi](https://openbrowse.co/docs/raspberry-pi): Why a Pi 5 is enough to run browser agents, how many concurrent sessions it will hold, and the three things that behave differently on Pi hardware. - [Structured output](https://openbrowse.co/docs/structured-output): How outputSchema becomes a live, validated answer store with per-field coverage tracking, a completeness gate on done, and refusal of values without evidence. - [Writing tasks](https://openbrowse.co/docs/tasks): How the agent reads your prompt, and the prompt shapes that measurably change what comes back: completion targets, record definitions, and scope. - [Troubleshooting](https://openbrowse.co/docs/troubleshooting): Fixes for the failures that actually happen: Chromium not launching, a blank VNC view, authentication errors, sessions stopping early, running out of memory, and updates that will not install. - [v3 API reference](https://openbrowse.co/docs/api): Every endpoint in the OpenBrowse v3 REST API, the same surface the browser-use-sdk client already speaks, generated from the running application's OpenAPI schema. ## Data Every run is tabulated in full under Key facts above and on the benchmarks page. The results are not published as a separate JSON endpoint; the repository is their only canonical home. - [Benchmark task specification](https://github.com/lujstn/openbrowse/blob/main/benchmark.json): the exact prompt, output schema and cost cap used.