Skip to content
Browserbase
    • Primitives
      • BrowsersReal browsers for your agent to use the web, without the headaches
      • Web Data APIsSearch and fetch APIs to efficiently retrieve web data
      • RuntimeScalable, sandboxed environments for agent deployments
      • IdentityAuthenticate your agent to navigate the web like a human
      • ModelsUse any model with a single API key
      • ObservabilityUnified debugging your agent across replays, logs, and prompts
    • Open Source
      • Browse CLIGive your agent browsing skills with a single command
      • StagehandThe most popular AI browser automation framework
      • DirectorA complete UI for building useful browser agents
      • All Use Cases
      • Browser Agent
      • Automated Testing
      • Workflow Automation
      • Web Data Extraction
    • Resources
      • Blog
      • Customers
      • Enterprise
      • Templates
  • Pricing
  • Docs
  • Log in
Log in
Sign up
Get a demo
Browserbase

Primitives

  • Browsers
  • Web APIs
  • Runtime
  • Identity
  • Model Gateway
  • Observability
  • Stagehand
  • MCP

Industries

  • AI
  • Healthcare
  • Supply Chain
  • GTM
  • Tax
  • Legal

Developers

  • Docs
  • Templates
  • APIs & SDKs
  • Changelog
  • Status
  • Github

Company

  • Careers
  • Customers
  • Partner with Us
  • Trust & Security

Community

TwitterLinkedinYoutubeInstagram
  • Privacy Policy
  • Terms of Service

Community

TwitterLinkedinYoutubeInstagram
  • Privacy Policy
  • Terms of Service

Browser infrastructure that works everywhere, every time.

Browserbase gives your agents full, real browser sessions that handle the web as it actually is: JavaScript-heavy, bot-resistant, and always changing.

Start buildingGet a demo

Browsers, built for agents

Production-grade Chromium at scale. Every session is isolated, fully configurable, and ready in seconds.

Chromium at scale

Run thousands of concurrent browser sessions on globally distributed infrastructure. 2 vCPUs per browser, isolated environments, and no shared state between sessions.

Fully configurable

Control every aspect of the browser. Set cookies, install extensions, configure proxies, manage uploads and downloads. Your agent gets the exact browser environment it needs.

Instant spin-up

Sessions launch on demand with no cold starts. Scale from one browser to thousands without provisioning clusters or managing infrastructure.

Secure by default

SOC-2 Type II compliant. Every session runs in full isolation with encrypted connections, credential management through 1Password, and no data persistence between runs.

A real browser.Arealbrowser.

Persistent sessions, cookies and file download support.

  • Handle files like a human would: Your agent can upload documents, download reports, and move files between browser sessions.

  • Stay logged in across runs: Persist cookies and session state between runs so your agent never starts from scratch. Re-authenticate once, then pick up exactly where it left off.

  • Bring your own extensions: Load Chrome extensions into any session. Ad blockers, custom auth plugins, accessibility tools. Whatever your agent workflow requires, the browser supports it natively.

  • Fine-grained network control: Route traffic through residential or datacenter proxies. Set custom headers, intercept requests, and shape network behavior to match your agent's access requirements.

See everything your agent sees

Debug in minutes, not hours.

Every browser session is fully observable. Watch sessions live, replay them later, and trace every action your agent took. Rich logs, network traces, and console output in one place. No more guessing why your agent failed on step 47.

Learn more

Agent Identity gives your browser agents a real web identity.

The web is full of CAPTCHAs, anti-bot systems, and login walls that stop agents cold. Agent Identity combines strategic partnerships with Cloudflare, Stytch, Fingerprint, and Vercel with automated credential management to get your agents through, every time.

Learn more
  • Fingerprinting and CAPTCHA solving

    Automated CAPTCHA resolution built into every session. Your agent moves through verification challenges without custom integrations or third-party CAPTCHA services.

  • Managed proxies

    Residential and datacenter proxy rotation handled automatically. Geo-target requests, rotate IPs on each session, and avoid rate limits without managing proxy infrastructure yourself.

  • Automated credential management

    Securely store and inject login credentials through 1Password integration. Your agent authenticates into gated sites without hardcoding secrets or building custom auth flows.

Works with the tools you already use.

SDKs, CLIs, and framework integrations to get your agents browsing in minutes.

Get started with StagehandGet started with CLI
  1. Typescript
  2. Python
import { Stagehand } from "@browserbasehq/stagehand";

const stagehand = new Stagehand({
  env: "BROWSERBASE",
  model: {
    modelName: "google/gemini-3-flash-preview",
    apiKey: process.env.MODEL_API_KEY,
  }
});
await stagehand.init();

const page = stagehand.context.pages()[0];
await page.goto("https://news.ycombinator.com");

// Let AI click
await stagehand.act("click on the comments link for the top story");

// Extract structured data
const data = await stagehand.extract("extract the title and points of the top story");
console.log(data);

await stagehand.close();
import asyncio

from stagehand import AsyncStagehand

async def main() -> None:
    # Create client using environment variables:
    # BROWSERBASE_API_KEY, BROWSERBASE_PROJECT_ID, MODEL_API_KEY
    client = AsyncStagehand()

    # Start a new browser session (returns a session helper bound to a session_id)
    session = await client.sessions.create(model_name="openai/gpt-5-nano")

    try:
      await session.navigate(
          url="https://news.ycombinator.com",
          options={"wait_until": "domcontentloaded"},
      )
  
      stream = await session.execute(
          agent_config={"model": model_name},
          execute_options={
              "instruction": "Go to Hacker News and return the titles of the first 3 articles.",
              "max_steps": 5,
          },
          stream_response=True,
          x_stream_response="true",
      )
  
      result = await _stream_to_result(stream, "execute")
      message = result.get("message") if isinstance(result, dict) else result
      print("Agent message:", message)
      print("\nFull result:")
      print(json.dumps(result, indent=2, default=str))
  finally:
      await session.end()

if __name__ == "__main__":
    asyncio.run(main())

Don't use the web. Scale it.Don'tusetheweb.Scaleit.

Monthly Browser Sessions

36,925,87036,925,870

One API Key. One platform.

Build, ship and scale on Browserbase.

Start buildingGet a demo