Skip to main content
By default, Screenshotly captures only the visible viewport. Set fullPage to true to capture the entire scrollable page.

Basic usage

const screenshot = await client.capture({
  url: 'https://example.com',
  fullPage: true
});

How it works

When fullPage is true, the browser scrolls through the entire page and stitches the result into a single image. The width parameter still controls the viewport width used for rendering, but height is overridden by the actual page height.
Full-page screenshots can be significantly larger in file size and take longer to process than viewport-only captures.

Combining with other options

Full-page captures work with all other parameters:
const screenshot = await client.capture({
  url: 'https://example.com/long-article',
  fullPage: true,
  format: 'jpeg',
  width: 1440,
  delay: 2000,          // wait for lazy-loaded content
  deviceScaleFactor: 2  // retina quality
});
If the page has lazy-loaded images or infinite scroll, use the delay parameter or waitForSelector to ensure all content loads before capture. See delays and selectors.

Plan availability

Full-page captures are available on the Starter plan and above. The Free plan supports viewport-only captures.