Website Screenshot — Full-Page PNG & JPEG Capture avatar

Website Screenshot — Full-Page PNG & JPEG Capture

Pricing

$3.00 / 1,000 screenshot captureds

Go to Apify Store
Website Screenshot — Full-Page PNG & JPEG Capture

Website Screenshot — Full-Page PNG & JPEG Capture

Capture pixel-perfect screenshots of any web page: full-page or viewport, PNG or JPEG, custom size. One screenshot per URL, stored with a public image URL. Fast, no setup.

Pricing

$3.00 / 1,000 screenshot captureds

Rating

0.0

(0)

Developer

Marouane Oulabass

Marouane Oulabass

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Categories

Share

Capture pixel-perfect screenshots of any web page — at scale, with zero setup. Give this actor a list of URLs and get back one screenshot per URL, stored with a public image URL you can drop into a report, an email, a dashboard or an API response. Full-page or viewport, PNG or JPEG, custom size. No headless browser to run, no infrastructure to babysit.

A fast, reliable screenshot API for anyone who needs images of web pages on demand.

Who uses this

  • 🖼️ Link previews & thumbnails — generate preview images for shared URLs.
  • 📊 Monitoring & QA — visually snapshot pages, competitors or deployments over time.
  • 📰 Archiving & compliance — keep dated visual records of web pages.
  • 🧑‍💻 Developers & no-coders — a screenshot API you call by URL, no Puppeteer to host.
  • 📈 Marketers & agencies — capture landing pages, ads and SERPs for decks and audits.

Features

  • 🖥️ Full-page or viewport-only capture
  • 🎨 PNG (lossless) or JPEG (smaller, with quality control)
  • 📐 Custom viewport size (width × height)
  • ⏱️ Control when to capture: load, domcontentloaded, networkidle, or commit
  • 💤 Optional extra delay for late-loading animations
  • 🛟 Robust — per-URL errors are reported, never fatal to the run

What you get — one row per URL

FieldDescription
screenshotUrl🌐 Public URL of the stored image
urlNormalized URL captured
formatpng or jpeg
fullPage, viewportWidth, viewportHeightCapture settings used
httpStatus, pageTitle, byteSizePage metadata
ok, errorStatus & error message when a capture fails

Example

Input

{
"urls": ["https://apify.com", "example.com"],
"fullPage": true,
"format": "jpeg",
"quality": 80,
"viewportWidth": 1280,
"viewportHeight": 800,
"waitUntil": "networkidle"
}

Output (one item)

{
"url": "https://apify.com",
"ok": true,
"screenshotUrl": "https://api.apify.com/v2/key-value-stores/.../records/apify-com.jpeg",
"format": "jpeg", "fullPage": true,
"viewportWidth": 1280, "viewportHeight": 800,
"httpStatus": 200, "pageTitle": "Apify: Full-stack web scraping"
}

Why this screenshot tool

  • Public image URLs — use them anywhere, no extra hosting.
  • 🌍 Many URLs per run — pass a list, get a batch of images.
  • 🎛️ Precise control — format, quality, full-page, size and wait strategy.
  • Fast & affordable — pay only for successful screenshots.
  • 🛟 Reliable at scale — one bad URL never breaks the batch.

Input options

  • urls (required) — pages to capture (https:// added automatically if missing).
  • formatpng (lossless) or jpeg (smaller; set quality 1-100).
  • fullPage — capture the whole scrollable page or just the viewport.
  • viewportWidth / viewportHeight — viewport size in pixels.
  • waitUntilload, domcontentloaded, networkidle or commit.

FAQ

Full-page or just the visible area? Both — set fullPage to true for the whole scrollable page or false for the viewport.

PNG or JPEG? Both — PNG is lossless; JPEG is smaller with adjustable quality.

Where is the image stored? In the run's key-value store, returned as a public screenshotUrl you can link directly.

Can I capture many pages at once? Yes — pass a list of URLs; each row carries its own image and metadata.

What if a page fails to load? That single URL is reported with an error; the rest of the batch still completes.

What does it cost? Pay-per-screenshot — you're only charged for successful captures.


Tip: schedule this on your key pages to build a visual history, or wire the screenshotUrl straight into your app's link previews.