Skip to main content

Confirm

Are you sure?

Glossary

Headless browser

The same engine your visitors use, minus the window, driven by a script.

By · Last updated: September 2026

TL;DR

A headless browser is a full browser — such as Chrome — running without a visible window and controlled by a program. It loads pages exactly as a visitor's browser would: it runs JavaScript, applies CSS, lays the page out and can take screenshots, which a plain HTTP client cannot.

Free plan, no credit card. 1,000 credits a month.

How it works

What it is

Chrome ships a headless mode that is the same browser as the one on your desktop, with the window taken away. A program drives it over the Chrome DevTools Protocol — directly, or through a library like Puppeteer or Playwright — telling it to open a URL, wait, click, read the DOM or capture the screen. Firefox and WebKit can be driven the same way.

HTTP client (curl, requests)Headless browser
Runs JavaScriptNoYes
ReturnsThe HTML sourceThe rendered DOM, screenshots, metrics
Sees console errorsNoYes
Time per pageMillisecondsSeconds
MemoryKilobytesHundreds of megabytes per tab

In practice

When you need one

Whenever the answer depends on the page having run: content on a client-rendered site, a screenshot, a Largest Contentful Paint time, a JavaScript error. For a static HTML page an HTTP client is faster and cheaper, and you should use one.

Running your own is where the cost is. Each browser needs its own memory and CPU, crashes and leaks have to be recycled, pages that never finish loading need timeouts, and deciding when a page is "done" is its own problem (see networkidle). That is manageable for a script and a real piece of work for a service.

URLpipe

How URLpipe uses one

Every URLpipe request loads the page in real Chrome on our own custom-built rendering engine, and one visit can answer several questions: /scrape returns the HTML, Markdown, a screenshot and the console of a single page load. You send a URL and get results; the browsers, timeouts and recycling are ours to run.

One page visit, two results
curl -X POST https://urlpipe.dev/scrape \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "sync": true, "operations": ["html", "console"]}'

What it does not do: click through flows, log in, or fill forms. URLpipe reads one URL as a visitor first sees it.

FAQ

Frequently asked questions

Is headless Chrome different from normal Chrome?
Chrome's headless mode runs the same browser code as the desktop app, without a window. Pages render the same way.
Puppeteer or Playwright?
Both drive a headless browser well. Puppeteer is Chrome-first from the Chrome team; Playwright drives Chromium, Firefox and WebKit with one API. If you only need the page's output, an API saves you running either.
How much memory does a headless browser use?
It varies by page, but each open tab of a modern site typically needs hundreds of megabytes, which is why running many in parallel needs real servers.

See it on your own pages.

Free plan, no card. Confirm your email and your API key is live — you'll be making real requests in minutes.