Run Headless Chrome in Production | Browserless (original) (raw)

Run headless Chrome in production without the maintenance

Your Puppeteer and Playwright scripts stay the same. We handle the browsers, Chrome updates, and everything that breaks at scale.

1k free runs a month. No card, no catch.

Trusted by 2,000+ teams, from solo devs to global enterprise.

Why your scraper works locally and dies in prod

Your script runs fine locally. Spin up 100 concurrent sessions and everything falls apart. You didn't get into this to debug headless browsers at 2am.

prod.log

02:14:03 ERROR Chrome  process crashed (SIGSEGV)
02:14:11 WARN  memory usage 4.2 GB / 4 GB
02:14:28 ERROR session_id=9f3a lost, unable to reconnect
02:15:02 WARN  captcha_challenge detected, blocked
02:15:44 ERROR Chrome 130 → 131: launcher args rejected
02:16:09 ERROR queue overflow (127 sessions pending)
02:16:12 HINT  migrate to Browserless → one-line swap

Connect your scripts in minutes. Three lines, no rewrite.

scrape.ts

import puppeteer from 'puppeteer-core';

// Local — maintain Chrome yourself:

// const browser = await puppeteer.launch();

const browser = await puppeteer.connect({

browserWSEndpoint:

'wss://chrome.browserless.io?token=YOUR_API_KEY',

});

const page = await browser.newPage();

await page.goto('https://example.com');

// ✓ Ship. We handle concurrency, Chrome updates, bot detection.

await browser.close();

  1. 01

Swap launch() for connect()

One-line change. Your automation code stays identical. 2. 02

Drop in your API key

Free plan: 1k sessions/month. No credit card required. 3. Get your API key

Your existing scripts. Our infrastructure.

Your browser layer, without the trade-offs.

Scrape anything. Run anywhere. Deploy on your terms. Three problems that usually force a compromise, solved by default.

Get past the blockers

Anti-bot bypass, retries, and Chrome upgrades. Not your problem anymore.

Production you can actually sleep through

Eight years in production, 173M+ Docker pulls, 99.9% uptime. Boring on purpose.

Your infrastructure, your rules

Cloud, managed cloud, or your own hardware. Same API either way. No lock-in.

We've been running browsers at scale for eight years. Since before AI agents were a thing.

173M+

Docker pulls

One of the most-pulled browser images on Docker Hub.

99.9%

uptime, measured

The kind of reliability your on-call engineer can sleep through.

One API. Four ways people actually use it.

Shipping with Browserless

“Browserless helped us focus on the problem we were trying to solve, and less on scaling an automation infrastructure. Browserless's developer focused approach has been a key to us bringing our product to market at the speed we were able to do so.”

“We were hosting our own Puppeteer-driven smoke testing service, which required specialized operational attention to maintain and scale. We began looking for third-party hosted solutions so that we could focus our attention on building and supporting our core products, and Browserless fit the bill.”

Case study: Takeoff Copenhagen

Takeoff cut scrape times from 25 seconds down to under 5, hit a 99.5% success rate, and reduced their costs by two-thirds. Their first scraper was live inside an hour.

Why Takeoff switched from Bright Data

Deploy as code. Debug through a GUI.

See every request. Catch every regression.

Success, errors, timeouts, queue times, and session durations at a glance.

CPU and memory usage for dedicated workers.

Watch scripts run in real time. Fix issues without digging through logs.

Common questions

Skip the browser infrastructure.

Ship the thing you're actually building.

Get your API key

Free plan: 1k units/month, 2 concurrent browsers. No credit card, no surprise charges.