Website screenshots

Website screenshot API — capture any URL as an image or PDF

Send a public URL and get back a PNG, JPEG, WebP or PDF of the page — the visible viewport or the full scroll height, at up to 3× for retina screens. No browser farm to run, no queue to maintain.

Read the docs
100 renders / month free · no card · paid plans are never blocked
MostlyRenderChangelog
Screenshot any URL
Full page · PNG, JPEG, WebP or PDF
A
Ada Render
Engineering
A single template, rendered from your data

How it works

1

Send the URL

POST the page address to /v1/screenshots with the viewport you want — 1200 × 630 by default, up to 2400 pixels each way.

2

Choose the capture

Set fullPage for the whole scroll height, scale for sharper output, or output "pdf" with a paper size such as A4 or Letter for a paginated document.

3

Get the file back

The response holds a URL to the stored image or PDF. For slow pages, send async: true or a webhookUrl and we call you when it is ready.

One API call

curl https://api.mostlyrender.com/v1/screenshots \
  -H "Authorization: Bearer mr_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","fullPage":true,"output":"png"}'

Questions

How much does a website screenshot cost?

One screenshot is one render on your plan. The Free plan includes 100 renders a month; Starter is $19 for 2,000, Pro $49 for 10,000 and Scale $149 for 50,000. Past that, paid plans bill overage at $3–$5 per 1,000 instead of blocking your captures.

Can I capture the full page, not just the viewport?

Yes. Set fullPage: true and the capture covers the page’s whole scroll height. width and height set the viewport (1200 × 630 by default, up to 2400 pixels each), and scale up to 3 renders at a higher device pixel ratio for retina output.

Can I save a web page as a PDF?

Yes. Set output to pdf. Without a paper size you get one full-height capture; add paper — A4, A3, A5, Letter, Legal, Tabloid or Ledger — and the page is paginated into a document with margins.

Which URLs can I screenshot?

Any public http or https address. Private, internal and cloud-metadata addresses are refused, including when a public URL redirects to one, so the API cannot be pointed at your internal network. Pages that need a login are not supported.

Can I take screenshots asynchronously?

Yes. Add async: true and the API answers 202 with a job id straight away. Add a webhookUrl to receive a signed callback when the capture is done, or notifyEmail to get an email.

Are repeated screenshots cached?

No. Every call captures the page as it is at that moment and counts as one render — what you want for monitoring and archiving. Images built from your own data with templates and signed URLs are cached and not billed again.

Does it hide cookie banners or block ads?

No. The capture shows the page as a first-time visitor sees it, cookie banner included. For a clean image, capture a page you control or render your content from a template instead.