Capture the whole page header to footer, including everything below the fold as a single image. Lazy-loaded content is triggered, cookie banners and ads are removed, and the file downloads in seconds. Free, no signup, no extension.
Free to try - no account required.
Your full page screenshot will appear here.
This request matches the settings you selected above. Swap in your API key and drop it straight into your project to automate the same capture.
A normal screenshot captures whatever fits inside the browser window typically the first 900 pixels or so of a page. A full page screenshot captures the entire document: every section, every row of the footer, and everything that only appears after you scroll.
Getting that right is harder than it looks. Modern pages defer images until they enter the viewport, pin headers to the top of the window, and inject consent overlays on first visit. Naively stitching scrolled screenshots together produces repeated headers, blank image placeholders, and visible seams.
This tool renders the page in a real Chromium browser, scrolls the full document height so deferred content loads, dismisses consent dialogs, and then captures the result as one continuous image. No seams, no placeholders, no clipping.
The capture height is the height of the page itself, so a 12,000-pixel article comes back as a single 12,000-pixel image.
Lazy-loaded images and off-screen components render before the shot is taken, so the output is complete rather than half-empty.
Because the width is pinned, the same page captured on two different days is directly comparable which is what makes visual diffing possible.
Each control in the tool maps directly to an API parameter, so anything you can do here you can also do programmatically.
The renderer captures the full document height rather than the visible window, so footers, long articles, and infinite feeds all land in a single image.
full_page=trueImages and components that only load as you scroll are forced to render before the capture, so you never get a page full of grey placeholders.
Capture at desktop, tablet, or mobile width to see exactly how a responsive layout stacks at each breakpoint.
viewport=mobilePNG for lossless UI work, JPG for smaller photo-heavy pages, WebP when you want the best size-to-quality ratio for the web.
file_type=webpConsent dialogs are dismissed before the capture, so a full-height screenshot is not ruined by an overlay sitting across the top of the page.
block_cookie_banners=trueAd slots are stripped before rendering, which also keeps the page height stable and stops layout shift from breaking the capture.
block_ads=trueTaking a screenshot with your operating system's built-in shortcut works for one visible window. It falls apart the moment the page is longer than the screen.
| Capability | Manual screenshot | ScreenshotAPI full page tool |
|---|---|---|
| Content below the fold | Only the visible window; you stitch the rest by hand | Entire document height in a single image |
| Lazy-loaded images | Often captured as empty placeholders | Scrolled and rendered before the capture |
| Sticky headers | Repeat on every stitched section | Handled once, at the top of the page |
| Cookie banners and ads | Captured along with the page | Removed before the render |
| Consistency across machines | Varies with screen size, zoom, and OS | Fixed viewport width, identical every run |
| Automation | Manual only, one page at a time | One HTTP request; scale to thousands of pages |
Common questions about capturing an entire web page, choosing a format, and automating the same capture through the API.
Don't see your question here?
Browse all help articles