Bulk Website Screenshot & PDF Generator — Full Page avatar

Bulk Website Screenshot & PDF Generator — Full Page

Pricing

from $12.00 / 1,000 screenshot captureds

Go to Apify Store
Bulk Website Screenshot & PDF Generator — Full Page

Bulk Website Screenshot & PDF Generator — Full Page

Pricing

from $12.00 / 1,000 screenshot captureds

Rating

0.0

(0)

Developer

Rashad Flet

Rashad Flet

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Capture real full-page screenshots (PNG/JPEG/WebP) and optional PDFs of many URLs at once with a headless Chromium browser, so the output is what a human would actually see. One charged event per screenshot captured; a URL that fails is not billed as a capture. Built by PAOE.

Each item is processed individually and charged as its own event, so you pay only for what the run actually delivers. Results are written to the run's dataset as one JSON object per item, ready to download as JSON, CSV or Excel, or to pull through the Apify API.

What it checks

For each URL: a real full-page screenshot captured by a headless Chromium browser (or just the viewport, if you prefer), in PNG, JPEG or WebP, at a viewport you choose. Each record carries the HTTP status, the page title, the file size, a link to the stored image, and how long the capture took. An optional A4 PDF of each page is produced alongside the image at no extra charge, and a failed PDF never invalidates the screenshot that was already captured.

Pricing

EventWhat it coversPrice
screenshot-capturedscreenshot captured (primary)$0.02 per event

Volume tiers reduce the price automatically on higher Apify plans: Bronze 15% off, Silver 25% off and Gold or above 40% off the listed free-tier price. The charge is per item processed, not per run.

Input

FieldTypeRequiredDefaultDescription
urlsarrayyes["https://example.com"]One URL per line. Each captured screenshot is one charged event.
maxUrlsintegerno100Hard cap on how many URLs are captured in one run.
fullPagebooleannoTrueCapture the entire scrollable page instead of just the viewport.
formatstringnopngpng (lossless), jpeg or webp.
widthintegerno1440Browser viewport width in pixels (320-3840).
heightintegerno900Browser viewport height in pixels (240-4320).
makePdfbooleannoFalseSave an A4 PDF of each page alongside the screenshot. No extra charge.
waitMsintegerno0Additional time to wait after load, for animations or lazy content.

Example input:

{
"urls": [
"https://example.com"
],
"maxUrls": 100,
"fullPage": true,
"format": "png",
"width": 1440,
"height": 900,
"makePdf": false,
"waitMs": 0
}

Output

One JSON object per item in the run's dataset. Every result carries the input it came from plus the fields this Actor measures, so the output can be joined back to your own data without guessing which row is which. The final dataset entry is a summary object with the run's totals.

Typical use cases

  • Archive what a page looked like on a given date, for evidence.
  • Capture a portfolio of sites or competitor pages in one run.
  • Feed real page images into a review, a report or a QA process.
  • Produce PDF copies of public pages alongside the screenshots.

Limitations

No. Each URL is fetched as an anonymous browser session, so a page behind authentication, a paywall or an aggressive bot wall returns a login page or a challenge rather than the protected content. Those URLs are reported with their HTTP status and are not billed as captures. The capture is a viewport-level render of what a browser receives, not a claim about the site's full behaviour; very tall pages are captured in one pass with a capped viewport so the run cannot exhaust memory.

Does it screenshot pages behind a login?

Every limitation above is reported per item in a findings entry with a level of fail, warn, info or ok, a machine-readable code and a concrete action. If something cannot be checked it is reported as such rather than assumed to be fine.

Can it run on a schedule?

Yes. Save a task from this Actor with your inputs, then set a schedule on the task. Scheduled runs recur with the same inputs, which is the intended way to use it for ongoing monitoring.

Am I charged for URLs that fail?

No. The charge event fires only after a screenshot is actually captured and stored, so a URL that times out, returns an error, or is blocked costs nothing. The run summary reports failed and withheld_unbilled separately so the counts reconcile.

Notes

If a site returns something unexpected, open an issue on the Actor's page with the URL and the input used, and it will be looked at.

Keywords

website screenshot, bulk screenshot, full page screenshot, url to image, screenshot api, webpage to pdf, website screenshot generator, capture website.