HTML to image API

Rendered by a real browser, not an HTML-to-canvas approximation. JavaScript runs, web fonts load, CSS grid and flexbox lay out exactly as they do for a visitor.

# PDF, for reports and invoices
curl -o page.pdf "https://api.screenshotline.com/take?url=https%3A%2F%2Fexample.com&format=pdf&access_key=KEY"

# Dark mode
curl -o dark.png "https://api.screenshotline.com/take?url=https%3A%2F%2Fexample.com&color_scheme=dark&access_key=KEY"

# Behind basic auth
curl -o private.png "https://api.screenshotline.com/take?url=https%3A%2F%2Fexample.com&basic_auth=user%3Apass&access_key=KEY"
Get a free key — no card Try it without signing up

What people use it for

PDF reports

Same render path as an image, so what you see is what prints.

Light and dark variants

color_scheme flips the page as a visitor would see it.

Pages behind auth

basic_auth, custom headers, and your own user agent.

Page to Markdown

The same render read as text instead of photographed, for LLMs and agents.

What breaks, and what this does about it

Most screenshot failures are not crashes. They are a 200 with the wrong picture — a consent wall, a half-loaded page, a blank frame your pipeline records as a success. These are the ones a 202-page benchmark of the real web actually found:

Measured against the incumbents

18 news front pages — consent walls, lazy images, heavy embeds — captured through three APIs on the same day at the same viewport.

18 news pagesScreenshotlineScreenshotOneApiFlash
Captured18/1817/1818/18
timesofindia.com414 KB261 KB358 KB

Pricing

Free: 500 renders a month, no credit card. Then $17 for 2,000, $79 for 10,000, $259 for 50,000 — with overage priced below the plan rate, so a spiky month costs less per render rather than more.

Failed renders and cache hits are never billed. Most APIs promise that; blank detection is what lets this one mean it literally.

Full pricing · Documentation

Open source

The renderer is AGPL-3.0 and self-hostable — the same code that runs here, with nothing held back for the hosted version. Read it before you trust it, or run it yourself. The paid product is the hosted API: a warm browser pool, a cache, and someone else's pager.

Related