OpenRouter
    for browsers.

    Route browser sessions across every provider. One endpoint, one balance, one dashboard. Sign up with $10 in free credits, or self-host the MIT open-source gateway.

    Or self-host the open source

    $npx browser-gateway serve
    browser-gateway dashboard
    MIT open sourceRuns on CloudflarePayments by PaddleBuilt by Monostellar
    The stack

    Route, run, or scale.
    Self-host it, or run it on our cloud.

    Four products, one stack. Ship the OSS gateway and the browserserve runtime today. Move to the cloud when you want the infrastructure off your plate.

    Available now, MIT

    Gateway

    One endpoint that routes across every browser provider. Automatic failover, persistent profiles, session replay, MCP server.

    Read the docs
    Available now

    Cloud

    Every browser provider behind one endpoint. $10 in free credits on signup. Bring your own keys (first 1M sessions per month free) or top up prepaid credits at a 5.5% + $0.80 checkout fee. Refunds within 14 days. Paddle handles payment as our Merchant of Record.

    Sign up
    Available now, MIT or Apache-2.0

    Browserserve

    A self-hosted browser server. One container runs isolated Chrome sessions over CDP: warm pools for instant starts, per-session resource caps, zero cross-session state. Works with Puppeteer, Playwright, and any CDP client.

    View on GitHub
    Enterprise

    Autoscale

    Demand-based autoscaling for self-hosted browser fleets. Runs in your VPC. Ed25519 offline licensing, no phone-home.

    Talk to us
    Pricing

    Usage-based. No monthly subscriptions.

    Two paths. Bring your own provider keys, or top up prepaid credits. Both start with $10 in free credits on signup. Both refundable within 14 days.

    BYOK

    First 1M sessions / month free
    5% of equivalent cost after that

    Add credentials for the browser providers you already use. Route through your own accounts. We handle observability, cost control, and failover.

    • Bring your own Browserless, Steel, Browserbase, or any CDP endpoint
    • 1,000,000 routed sessions per month included
    • 5% of the equivalent cost above the monthly limit
    • Full session logs, replays, and cost reporting
    Start with BYOK

    Credits

    5.5% + $0.80 top-up fee
    $10 free on signup. Refunds within 14 days.

    Top up a prepaid balance. Sessions decrement at pass-through provider rates. Zero markup on the underlying provider. Our fee is a one-time surcharge added at top-up time.

    • $10 in free credits on signup
    • Minimum top-up $5, maximum $2,000
    • Pass-through provider rates, no markup
    • 5.5% + $0.80 fee added at top-up time
    Start with Credits

    Paddle.com Market Limited is our Merchant of Record and appears on your card statement. All amounts in USD. Purchased credits expire 12 months after purchase. Full details on the pricing page.

    Available today, MIT

    The Gateway.

    The routing layer of the stack. One endpoint that fans out to every browser provider you use, with automatic failover, persistent profiles, and session replay. Think of it as OpenRouter for browsers.

    Any Provider

    Browserless, Steel, Chrome, Docker

    Auto Failover

    Zero downtime, zero code changes

    One Endpoint

    Route all connections through one URL

    MIT Licensed

    Open source and free

    Connect once. We route to what's available.

    AI Agents
    Applications
    Automation

    browser-gateway

    504 sessions
    Routing
    Failover
    Health Checks
    Queuing
    Sessions
    P1

    Cloud CDP

    Load504/504
    P2

    Docker

    Load0/336
    P3

    browserserve

    Load0/210

    Works with everything

    Drop-in compatible

    Change one line. Get routing, failover, and pooling for free.

    app.ts
    import { chromium } from "playwright-core";
    
    // One line change. Route through the gateway.
    const browser = await chromium.connectOverCDP(
      "http://localhost:9500"
    );
    
    const page = await browser.newPage();
    await page.goto("https://example.com");
    console.log(await page.title());
    await browser.close();

    Drop-in replacement. Change the URL, keep everything else.

    Built for AI agents

    Give every agent
    a browser.
    No setup required.

    The built-in MCP server auto-detects Chrome on your system, launches it on first use, and gives AI agents 8 browser tools through the gateway's routing layer.

    Works with Claude Code, Cursor, and any MCP client
    Each agent session gets its own browser instance
    Headed on desktop, headless in Docker/CI automatically
    Routes through multi-provider gateway for failover
    MCP documentation
    8 Browser Tools
    browser_navigateGo to a URL
    browser_snapshotAccessibility tree with refs
    browser_screenshotCapture page as PNG
    browser_interactClick, type, scroll
    browser_evaluateRun JavaScript
    browser_set_viewportResize viewport
    browser_closeEnd session
    browser_statusGateway health
    Persistent sessions

    Sessions that
    survive a crash.

    Capture cookies, localStorage, and IndexedDB once. Replay across providers. Encrypted at rest, decrypted only inside the gateway.

    Agents resume mid-workflow. State auto-captures on disconnect.
    Login once. Every script after starts logged in.
    Capture on one provider, replay on another. No vendor lock-in.
    AES-256-GCM at rest. Key never leaves the gateway.
    Profile documentation
    Profile
    Encrypted at rest
    acme-prod
    Last used 2 min ago
    Cookies
    12
    Origins
    3
    Size
    47 KB
    Inject by URL
    wss://browsergateway.io/v1/connect?profile=acme-prod

    Any client, any provider. The gateway loads the profile before your code runs and saves changes when the session ends.

    Session replay

    See what
    the agent saw.

    When an agent breaks at 3am, screenshots and logs are not enough. Replay the whole session frame-by-frame. Shipped in v0.3.5, on by default.

    Replay docs

    CDP screencast at the router

    Every routed session gets Page.startScreencast on the provider's Chrome. JPEG frames with SHA-1 dedup keep storage down.

    Scrub the timeline

    The dashboard replays frames in order. Jump to any second of any session, on any provider.

    Export as MP4

    One button turns a replay into a video file. ffmpeg auto-installs on first export.

    Retention you control

    7-day default, configurable to any window. Per-session byte cap. Encrypted on disk with the profile key.

    Features

    Everything you need to route browsers

    5 Routing Strategies

    Priority chain, round-robin, least-connections, latency-optimized, and weighted distribution.

    Automatic Failover

    Provider goes down? Next one picks up instantly. TTL-based cooldowns with auto-recovery.

    MCP Server

    8 browser tools for AI agents. Navigate, screenshot, snapshot, interact, evaluate. Zero config.

    Request Queue

    All providers busy? Connections wait in a FIFO queue instead of failing. Configurable timeouts.

    Concurrency Limits

    Set maxConcurrent per provider. The gateway enforces it so providers never get overwhelmed.

    Encrypted Profiles

    Cookies, localStorage, and IndexedDB captured per profile. AES-256-GCM at rest, replayable across providers.

    Session Reconnect

    Dropped clients reconnect to the same browser via session id. Cookies and page state stay intact.

    Web Dashboard

    Manage providers, view live sessions, edit config, and monitor health, all from the browser.

    Health Monitoring

    Periodic connectivity probes detect unhealthy providers. Cooldown system skips failing ones.

    Webhooks

    Get notified when providers go down, recover, enter cooldown, or when the queue overflows.

    Protocol Agnostic

    Works with CDP, Playwright protocol, and WebDriver BiDi. The raw TCP pipe forwards any WebSocket protocol.

    Developer experience

    From zero to routing in seconds

    terminal
    $ npx browser-gateway serve
    ┌─────────────────────────────────────────┐
    browser-gateway v0.1.8
    └─────────────────────────────────────────┘
    + Config loaded gateway.yml
    + Provider cloud-cdp healthy (5 slots)
    + Provider docker-pw healthy (10 slots)
    + Provider local-chrome healthy (2 slots)
    > Gateway ws://localhost:9500
    > Dashboard http://localhost:9500/web
    > MCP http://localhost:9500/mcp
    > Strategy priority-chain
    Waiting for connections...|
    Open source

    Built in the open.
    MIT licensed.

    No vendor lock-in. Fork it, self-host it, extend it. Your infrastructure, your rules.

    browser-gateway serve

    Start gateway + dashboard

    browser-gateway mcp

    MCP server for agents

    browser-gateway check

    Test provider health