screenshot & og-image api · render any URL, safely
Sign a URL, get back a PNG or PDF — any page, including the user-submitted ones you don't control. Rendered by our headless Chrome instead of yours and cached at the edge. No browser clusters, no font stacks, no SSRF hole to plug.
free tier · no card required · pro from $14/mo
·
Signed locally in your browser with WebCrypto. The secret is never sent anywhere. Uses your key's rate limit instead of the demo's 6/min. Only paste your secret on an instance you run.
two endpoints
Same pipeline underneath: signed URL in, cached image out. Pick the endpoint that matches the job.
GET /render
Thumbnails, archiving, monitoring, HTML-to-PDF — including user-submitted URLs, captured SSRF-safe so a hostile link can't reach your network. Real Chrome, pixel-consistent, without running a browser yourself.
$ curl "…/render?url=https://your-site.com&w=1200&h=630&key=k_you&sig=…"
the screenshot api
GET /og
Hosted templates, parameterized by query string. Signed at build time in microseconds, rendered lazily on the first crawler hit. Your build never waits on Chrome.
<meta property="og:image" content="{% ogImageUrl title, author, tag %}">
the og image api
why hosted
Self-hosting a renderer means memory leaks, zombie processes, missing fonts, and cold starts. Shotpipe is the same capability behind one signed GET request.
The first request renders; every request after that is served from the CDN in single-digit milliseconds and costs nothing.
Every request is HMAC-signed with your secret. Unsigned or tampered URLs are rejected, so nobody renders on your key.
No browser pool to size, no worker queue to monitor, no 3am OOM. Capacity is our problem.
clean by default
Ads, trackers, and cookie banners are blocked out of the box — no parameter to discover, nothing to configure. Below: a live render of the biggest consent-platform vendor's own homepage, straight from the API.
Requests to ad networks are aborted before they leave the browser. Pages come out cleaner and render several times faster.
CMP scripts are blocked and server-rendered banners hidden — OneTrust, Cookiebot, Sourcepoint, Didomi and friends, with vendor-specific rules that never touch real page content.
Need the page exactly as served, consent wall and all? Add
block_ads=false&block_banners=false and it's an
archival-grade capture again.
how we compare
Verified against each vendor's public pricing in July 2026. The long, honest versions, including where they beat us, are one click away.
| Shotpipe | HCTI | ScreenshotOne | Urlbox | |
|---|---|---|---|---|
| free tier | 100 renders/mo | 50/mo, expires after a year | 100/mo | none |
| entry paid | $14/mo · 2,000 renders | $14/mo · 1,000 | $17/mo · 2,000 | $19/mo · 2,000 |
| hosted og templates | yes | bring your own | no | no |
| static-site plugin | eleventy | none | none | none |
| default cache | forever | while subscribed | 4h–30d TTL | 30 days |
Full comparisons: vs HTML/CSS to Image · vs ScreenshotOne · vs Urlbox