Website Screenshot Generator (Full Page, Mobile, PDF) avatar

Website Screenshot Generator (Full Page, Mobile, PDF)

Pricing

from $3.00 / 1,000 screenshots

Go to Apify Store
Website Screenshot Generator (Full Page, Mobile, PDF)

Website Screenshot Generator (Full Page, Mobile, PDF)

Take full-page website screenshots of any URL list as PNG, JPEG, WebP or PDF. Desktop/mobile viewports, dark mode, cookie banner removal, element capture.

Pricing

from $3.00 / 1,000 screenshots

Rating

0.0

(0)

Developer

Marlon Lee

Marlon Lee

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Categories

Share

Take full-page website screenshots of a list of URLs in one run, as PNG, JPEG or WebP, with an optional PDF of each page. Marketers, QA teams, SEO agencies and developers use it for visual archives, responsive checks, client reports and link thumbnails.

What you get

For every URL, the Actor saves the image (and PDF, if enabled) to the run's key-value store and adds one dataset row with:

  • Links: screenshotUrl (direct link to the image), screenshotKey, pdfUrl
  • Page: requested URL, final URL after redirects, page title, HTTP status code
  • Result: success flag and error message
  • Image: format, pixel width and height, file size in bytes
  • Settings used: viewport (width, height, device scale factor, mobile flag), full page, selector, whether a cookie button was clicked
  • Timing: time to the load event (loadMs), total time including waits and capture (totalMs), capture timestamp

The dataset's table view shows a thumbnail per row.

Capture options:

  • Bulk URLs: paste any number of URLs. example.com works, the Actor adds https:// for you.
  • Full page or first screen only
  • Device presets: Desktop 1920x1080, Laptop 1366x768, Tablet 820x1180 (2x, touch), Mobile 390x844 (3x, touch), or a custom width, height and pixel density (up to 4x for retina)
  • Formats: PNG, JPEG or WebP with a quality setting, plus an optional PDF
  • Cookie banner removal: hides the popups of common consent platforms (OneTrust, Cookiebot, Didomi, Usercentrics, Quantcast, TrustArc, Sourcepoint, CookieYes, Osano, Complianz, iubenda, Google Funding Choices and more). It can also click Accept or Reject first.
  • Dark mode: emulates prefers-color-scheme: dark for sites that support it
  • Lazy loading: scrolls through the page before capture so images further down render
  • Waits: load, DOM ready or network idle, a CSS selector to wait for, or a fixed delay
  • Element screenshots: capture one element only, such as header, #pricing or article

Use cases

  • Website monitoring and visual archives: keep dated snapshots of your own or competitors' pages.
  • SEO and marketing reports: capture landing pages, search result pages and ads for clients.
  • QA and responsive testing: check how pages look on mobile, tablet and desktop, in light and dark mode.
  • Link previews and thumbnails: generate images for directories, dashboards and newsletters.
  • Compliance and evidence: save a PDF and PNG of a page as it looked on a given date.
  • AI and LLM pipelines: feed page images to vision models.

How to use

  1. Open the Actor in Apify Console and paste your URLs.
  2. Pick a viewport, image format and whether you want the full page.
  3. Choose how to handle cookie banners, and turn on dark mode or PDF output if you need them.
  4. Click Start.
  5. Open the dataset to see thumbnails and links, or download the images from the run's key-value store. You can also fetch everything through the Apify API.

Input example

{
"urls": ["https://apify.com", "en.wikipedia.org/wiki/Web_scraping"],
"viewport": "mobile",
"fullPage": true,
"format": "webp",
"quality": 80,
"cookieBanner": "reject",
"darkMode": false,
"scrollToBottom": true,
"waitForNetworkIdle": true,
"delayMs": 500,
"savePdf": false
}

Other options: selector (capture one element), waitForSelector, waitUntil (load, domcontentloaded, networkidle), width and height with "viewport": "custom", deviceScaleFactor, maxHeight (the Actor cuts long pages at 15,000 px by default), navigationTimeoutSecs, maxItems and proxyConfiguration.

Output example

A real result for https://en.wikipedia.org/wiki/Web_scraping (desktop, full page, WebP):

{
"url": "https://en.wikipedia.org/wiki/Web_scraping",
"finalUrl": "https://en.wikipedia.org/wiki/Web_scraping",
"title": "Web scraping - Wikipedia",
"statusCode": 200,
"success": true,
"error": null,
"screenshotUrl": "https://api.apify.com/v2/key-value-stores/<storeId>/records/002-en-wikipedia-org-wiki-Web-scraping.webp",
"screenshotKey": "002-en-wikipedia-org-wiki-Web-scraping.webp",
"pdfUrl": null,
"format": "webp",
"width": 1920,
"height": 8745,
"viewport": { "width": 1920, "height": 1080, "deviceScaleFactor": 1, "isMobile": false },
"fullPage": true,
"selector": null,
"consentClicked": false,
"sizeBytes": 231520,
"loadMs": 599,
"totalMs": 5328,
"takenAt": "2026-09-29T19:59:43.958Z"
}

width and height are the image's pixel size (viewport size times device scale factor).

If a page returns HTTP 4xx or 5xx, you still get the screenshot and a row with success: false. If a page can't load after retries, you get a row with success: false and an error message. Neither is charged.

Pricing

This Actor uses pay-per-result pricing: you pay for each successful screenshot. Failed pages, blocked pages and HTTP error pages are free. The PDF, if you enable it, is included in the same screenshot price. Set a spending limit on the run and the Actor stops cleanly when it reaches it.

FAQ

Is it legal to take screenshots of websites? Capturing a public page is generally fine, but the content belongs to the site owner. Check the site's terms and copyright before you republish screenshots. The Actor only visits publicly accessible pages.

Can it screenshot pages behind a login? No. It captures public pages only and never logs in anywhere.

How do I take a mobile screenshot? Set viewport to mobile. The Actor renders the page at 390x844 with 3x pixel density, touch support and a mobile Chrome user agent, so sites serve their mobile layout.

Why is my full-page screenshot cut off? The Actor cuts pages taller than maxHeight (15,000 CSS px by default, max 16,000) to stay within format and memory limits. WebP images can be at most 16,383 px tall, so WebP full-page shots at 2x or 3x density are cut shorter. It scrolls infinite-scroll feeds for up to 60 screens.

Will cookie banners always disappear? The Actor hides banners from the common consent platforms listed above, and "accept" or "reject" mode also clicks buttons labelled in English, German, French, Spanish, Italian, Portuguese, Dutch, Polish and Swedish. Custom-built banners on individual sites may still show.

A site returns 403 or a "verify you are human" page. What now? Some sites, often behind Cloudflare, block automated browsers or datacenter IPs. The default proxy is Apify datacenter; switch it to Residential. The Actor doesn't solve CAPTCHAs.

What are the limits?

  • Chromium only, with no Firefox or Safari rendering.
  • Element screenshots use the first element that matches the selector.
  • Pages that need a login, a CAPTCHA or heavy bot protection won't render correctly.
  • The Actor cuts very long pages at maxHeight.
  • PDF output uses the page's screen styles at the chosen viewport width. Full-page PDFs are split into Letter-height pages. With Full page off, the PDF is a single viewport-sized page.