Website Screenshot API: Full Page, Mobile, PDF avatar

Website Screenshot API: Full Page, Mobile, PDF

Pricing

from $3.20 / 1,000 screenshot takens

Go to Apify Store
Website Screenshot API: Full Page, Mobile, PDF

Website Screenshot API: Full Page, Mobile, PDF

Screenshot any list of URLs as full-page or viewport PNG, JPEG, WebP or PDF, on desktop, laptop, tablet or mobile. Cookie banners hidden, lazy images loaded, element screenshots, dark mode. Pay only per screenshot saved.

Pricing

from $3.20 / 1,000 screenshot takens

Rating

0.0

(0)

Developer

JT Palms

JT Palms

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Share

Website Screenshot API: full page, mobile, tablet and PDF

Paste a list of URLs and get back a screenshot of each page: the whole scrollable page or just the first screen, as PNG, JPEG, WebP or PDF, on a desktop, laptop, tablet or phone. Cookie banners are hidden, lazy-loaded images are loaded, and you can capture a single element such as a pricing table.

USD 4 per 1,000 screenshots. You pay only for screenshots that were taken and saved. Pages that fail, do not exist or block the browser are reported free.

What people use it for

  • Website archives and change tracking. Capture your own or competitors' homepages, pricing and landing pages on a schedule.
  • SEO and marketing reports. Full-page shots of search results, landing pages and ads, on desktop and mobile.
  • Visual QA. Check how a site renders on a phone, a tablet and a desktop, in light and dark mode, after every release.
  • Link previews and thumbnails. Viewport-sized JPEG or WebP images for directories, dashboards and CMS entries.
  • Compliance and evidence. PDF copies of web pages with selectable text and working links, with the time they were taken.

Sample output

One row per URL. The image itself is saved in the run's key-value store and linked from screenshotUrl:

{
"url": "https://www.python.org/",
"finalUrl": "https://www.python.org/",
"title": "Welcome to Python.org",
"statusCode": 200,
"device": "desktop",
"format": "png",
"width": 1440,
"height": 2555,
"bytes": 501233,
"screenshotUrl": "https://api.apify.com/v2/key-value-stores/STORE_ID/records/python.org-1e99bf8a65.png",
"screenshotKey": "python.org-1e99bf8a65.png",
"truncated": false,
"cookieBannersHidden": 0,
"loadSecs": 0.2,
"takenAt": "2026-09-28T19:31:39.089Z",
"warning": null,
"error": null
}

width and height are the real pixel size of the saved image (for PDFs, the page size in points). The dataset's Screenshots view shows the images as thumbnails. Export as JSON, CSV or Excel, or pull the results through the Apify API.

How to use it

  1. Put your pages in URLs, one per line. Full URLs and bare domains (example.com) both work.
  2. Pick a Device and a File format. Leave Full page on for the whole page, or turn it off for the first screen only.
  3. Click Start, then open the dataset or the key-value store to download the files.

Connect the actor to Make, Zapier, n8n or your own code through the Apify API to take screenshots on a schedule or on demand.

Options

OptionWhat it does
DeviceDesktop 1440 x 900, laptop 1280 x 800, tablet (iPad), mobile (iPhone 15), or a custom width and height. Tablet and mobile use touch and a mobile user agent, so sites show their mobile layout.
Full pageWhole scrollable page (default) or only the first screen. Very long pages are cut at Maximum page height (20,000 px by default) and marked truncated.
File formatPNG (lossless), JPEG or WebP (much smaller, with a quality setting), or PDF (A4, Letter, Legal or A3, scaled to the device width).
Element to captureA CSS selector such as #pricing or table.infobox. Only that element is captured.
Hide cookie bannersOn by default. Hides the banners of 30+ consent managers (OneTrust, Cookiebot, Didomi, Quantcast, TrustArc, Usercentrics, Sourcepoint and others) and clicks "reject" or "necessary only" where offered. It never accepts cookies for you.
Hide these elementsYour own CSS selectors to remove before capturing, for example chat widgets or promo bars.
Load lazy imagesOn by default. Scrolls through the page so lazy images and sections load, then back to the top.
Dark modeAsks the site for its dark color scheme.
Wait until, extra delay, timeoutWhen the page counts as loaded, an optional delay for animations, and the maximum load time.
Pixel density1, 2 or 3 for sharp retina images.
ProxyOptional. Load pages through a data center proxy or your own proxy URL, for example to see a site as visitors in another country see it. Residential proxies are not supported.

Pricing

WhatPrice
Screenshot or PDF taken and savedUSD 0.004 (USD 4 per 1,000)
Page failed, not found, blocked the browser, or private address refusedFree

Set a maximum cost per run in the run options and the actor stops cleanly when it reaches it. Screenshots taken before that are kept.

Speed and memory

With the default 4 GB of memory the actor loads 3 pages in parallel. Full-page captures of heavy news sites take about 2.5 seconds per page on average, first-screen captures about 2 seconds. Each parallel page needs about 1.1 GB of memory at its peak; if you give the run less memory, the actor lowers the number of parallel pages by itself.

Limits

  • No CAPTCHA solving or bot-protection bypass. Pages that answer with HTTP 401, 403 or 429, or show a CAPTCHA or "checking your browser" page, are reported with a warning and are not charged. A proxy under Advanced helps with sites that block data centers, but does not get past CAPTCHAs.
  • Public websites only. Private and internal addresses (localhost, 10.x, 172.16 to 31.x, 192.168.x, 169.254.x, 100.64/10, IPv6 local ranges, *.local, *.internal) are refused before the page is opened, and a public page cannot redirect or load images, frames or requests into them. Refused URLs are free.
  • Logins and paywalls are not bypassed. The actor sees what a new visitor without cookies sees.
  • WebP images are at most 16,383 pixels tall, so long WebP captures are cut there. Use PNG or JPEG for very long pages.
  • Pages that keep changing (live tickers, video, infinite feeds) are captured as they are at the moment of the shot.

FAQ

Where are the image files? In the run's default key-value store. Each dataset row has screenshotUrl, a direct link to the file, and screenshotKey, its key in the store.

How long are the files kept? As long as your Apify plan keeps the run's storage. Download them or copy them to your own storage if you need them longer.

Why is a cookie banner still visible? A few sites use their own banner code. Add its CSS selector to Hide these elements and it will be removed.

Why is my screenshot cut off? The page was taller than Maximum page height. Raise it (up to 60,000 px) or use first-screen captures.

Is it legal? It opens public web pages the way a browser does and saves an image of them. It does not log in or bypass protections. A screenshot shows whatever the page displays, which on some pages includes people's names or photos, so check the terms of the sites you capture and the privacy rules that apply to you before you republish their content.

License

Apache-2.0. Built on Playwright (Apache-2.0) and proxy-chain (Apache-2.0).