comparison

Shotlane vs running Playwright or Puppeteer yourself

Playwright and Puppeteer are excellent and free. If your code already runs where Chrome can, you may not need Shotlane at all. Here's what changes when you don't have a browser, or don't want to own one.

Playwright or PuppeteerShotlane
Where it runsWherever you can install and run ChromeAnywhere that can make an HTTP request: serverless, small containers, ChatGPT and Claude
SetupInstall ~300 MB of browsers, keep them patched, tune memoryAn API key
CostFree, plus servers and your time100 renders a month free; $1.98–$4.50 per 1,000 after
Cookie banners, ads, popupsWrite and maintain your own ruleshide_cookie_banners, block_ads, hide_popups
Full pages with lazy imagesScroll scripts and size limits yourselffull_page scrolls first and caps the size safely
Untrusted URLsYou handle sandboxing and SSRF protectionSandboxed browser, private networks blocked
PDFs, Markdown, videospage.pdf(); Markdown and video need more libraries/v1/pdf, /v1/markdown, /v1/animate
AI agentsPlaywright MCP needs a local browserRemote MCP server that works in ChatGPT and Claude
ControlTotal: any script, any flow, any volumeOptions per request: click, hover, JS, cookies, waits

Playwright and Puppeteer are open-source projects by Microsoft and Google; Shotlane itself runs on Playwright and Chromium.

When Playwright or Puppeteer is the better choice

Run it yourself if your code already runs next to a browser, you need full control over long multi-step flows like end-to-end tests, or you render millions of pages a month and have the people to run the infrastructure.

When Shotlane is the better choice

Use Shotlane when there's no browser where your code runs (serverless functions, chat agents, quick scripts and no-code tools), or when you'd rather not own sandboxing, patching, cookie banners and memory limits for a few thousand renders a month.

Switching takes minutes

Shotlane is a plain HTTP API: GET /v1/screenshot?url=…, /v1/pdf or /v1/markdown with your key in a header. Common options (full_page, width, format, selector, dark_mode, delay, block_ads, hide_cookie_banners) work the way you'd expect. See the API reference.

curl "https://shotlane.dev/v1/screenshot?url=example.com&full_page=true&format=webp" \
  -H "X-API-Key: $SHOTLANE_API_KEY" -o example.webp

Try it free

You get 100 free renders a month and no card is needed. If it works for you, a $9 pack lasts until you use it up.

100 free renders a month · no credit card · key shown instantly