ScreenshotNeo

BlogScreenshots on your device

How to Capture a Full-Page Screenshot Instead of Only the Visible Area

Capture an entire webpage beyond the viewport in Firefox, Chrome, Edge, iPhone Safari, or with ScreenshotNeo automation.

By the ScreenshotNeo team1 October 20266 min read

A normal screenshot records only the pixels currently visible in the browser window. A full-page screenshot captures the webpage from top to bottom, including content below the viewport.

Use the browser’s built-in full-page command: Firefox calls it Save full page, Chrome DevTools calls it Capture a full size screenshot, Edge calls it Capture full page, and iPhone Safari exposes Full Page after you take a screenshot.

1. Choose the right full-page method

Platform Documented action Best for
Firefox desktop Right-click the page, choose Take Screenshot, then Save full page. Quick user-facing captures
Chrome desktop Open DevTools, enable Device mode, open More options, then choose Capture a full size screenshot. Developer workflows
Microsoft Edge Press Ctrl+Shift+S, then choose Capture full page. Quick desktop captures and markup
iPhone Safari Take a screenshot, tap its thumbnail, then tap Full Page. Entire Safari webpages on iPhone

These workflows come from the vendors’ documentation: Mozilla’s Firefox instructions, Chrome DevTools documentation, Microsoft’s Edge Screenshot guide, and Apple’s iPhone guide.

2. Firefox: save the full page

  1. Open the webpage in Firefox.
  2. Right-click an empty area of the page.
  3. Select Take Screenshot.
  4. Select Save full page.
  5. Save the resulting image or copy it, depending on the options shown.

Firefox also provides a developer-oriented screenshot route in Firefox Developer Tools. Its documented :screenshot command supports the --fullpage option; see the Firefox Developer Tools screenshot documentation for the command syntax available in your version.

3. Chrome: capture the full page from DevTools

  1. Open the page in Chrome.
  2. Open DevTools with F12 or Ctrl+Shift+I (Windows/Linux), or the equivalent shortcut on macOS.
  3. Enable Device mode by selecting the phone/tablet icon.
  4. Open the DevTools More options menu.
  5. Select Capture a full size screenshot.

Chrome’s Device mode is an approximation of a mobile device. A screenshot taken there should be described as a browser emulation capture, not as proof of how the page renders on physical hardware. For the documented workflow and caveat, see Chrome’s Device mode guide.

4. Microsoft Edge: capture the whole webpage

  1. Open the webpage in Edge.
  2. Press Ctrl+Shift+S.
  3. Select Capture full page.
  4. Use Edge’s markup tools if needed, then copy or save the result.

Shortcut names and menus can vary by platform or Edge version. If the shortcut does not open Screenshot, find Screenshot in the browser menu. Microsoft documents the feature at Screenshot Tool in Microsoft Edge.

5. iPhone: use Safari’s Full Page option

  1. Open the webpage in Safari.
  2. Take a screenshot with the iPhone’s hardware buttons.
  3. Tap the screenshot thumbnail when it appears.
  4. Tap Full Page.
  5. Inspect or crop the preview, then save it using the available sharing or file options.

Apple documents an entire Safari webpage as the example for the Full Page screenshot flow: Take a screenshot on iPhone.

6. Make long-page captures reliable

Full-page capture is a rendering operation, so the saved image can differ from what you see before the page finishes loading. Use this checklist:

  • Wait until the page’s loading indicator settles.
  • Scroll through the page once so delayed images have a chance to load, then capture again.
  • Check the saved image from top to bottom before publishing or archiving it.
  • Record the URL, viewport, browser, and capture time when the image is evidence or documentation.
  • For pages that change frequently, capture at a consistent time and logged browser configuration.

Infinite scrolling, nested scroll areas, and content that changes while the page is being captured can produce incomplete or inconsistent results. The official browser guides do not guarantee that every page structure will capture perfectly.

7. Common problems and fixes

Problem Likely cause Fix
The image stops at the screen boundary A normal operating-system screenshot was used. Use the browser’s dedicated full-page command: Firefox Save full page, Chrome Capture a full size screenshot, Edge Capture full page, or iPhone Full Page.
Images or text are missing near the bottom Lazy loading had not completed. Wait, scroll through the page once, and capture again.
Only part of an app appears The content is inside a nested scroll container rather than the document. Scroll that container before capture, or capture the relevant element separately with an automation tool.
The page keeps growing while you capture Infinite scrolling is loading new content. Stop loading, capture a defined state, and record what portion was included.
The result changes between captures Live ads, personalization, animations, or time-dependent data. Use a consistent session, wait for the intended state, disable animations where possible, and inspect the output.
Chrome’s result does not represent a real phone Device mode is an approximation. Use a physical device when hardware-specific rendering matters.

8. When a screenshot API is better

Browser commands are convenient for one-off captures. An API is more practical when you need repeatable screenshots in CI, a backend job, many URLs, custom headers or cookies, or a clean result without consent banners and overlays.

Or skip the browser setup

ScreenshotNeo returns a full-page PNG, JPEG, WebP, or PDF from one GET request. Before capture it accepts cookie or consent banners and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each cleanup step can be disabled. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the result with X-Page-Verdict and X-Billed headers.

See the ScreenshotNeo API documentation for all options, including full-page capture with lazy images loaded, CSS-selector element capture, dark mode, 12 device presets or any viewport, retina scale, PDF paper size and margins, custom CSS and JavaScript, clicks, selector or delay waits, network-idle waits, request and resource blocking, headers, cookies, user agents, Authorization, timezone, geolocation, transparent backgrounds, resizing, chosen cache TTLs, signed image links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, usage data, and the OpenAPI specification.

cURL

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python

import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)

Node.js

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

ScreenshotNeo has an MCP server with take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots. Only clean shots are billed, so inspect X-Page-Verdict and X-Billed when handling errors or cache responses.

Create a free ScreenshotNeo account with 1,000 screenshots a month and no card.

9. Performance, reliability, and cost

  • Browser capture: no API fee, but it consumes interactive time and is harder to standardize across machines.
  • Dynamic pages: waiting for a selector, a delay, or network idle improves consistency; lazy images and infinite scroll still need inspection.
  • Automation at scale: use caching with a TTL when the page does not change often, bulk capture for up to 100 URLs per call, and asynchronous jobs with signed webhooks for long-running work.
  • Cost control: ScreenshotNeo bills only clean shots. Free usage is 1,000 shots monthly; plans are Starter $5 for 3,000, Growth $15 for 15,000, Pro $39 for 60,000, Scale $99 for 250,000, and Business $249 for 1,000,000. Yearly billing gives two months free, and every feature is available on every plan.

10. FAQ

Is a full-page screenshot the same as a scrolling screenshot?

Usually, yes. Both terms describe a capture that extends beyond the visible viewport instead of recording only the current screen.

Which desktop browser has the simplest documented workflow?

Firefox and Edge expose direct user-facing commands. Chrome’s documented route uses DevTools and Device mode.

Can full-page capture include content that loads only after scrolling?

It may, but dynamic loading is a common source of missing content. Scroll through the page first, wait for images, and inspect the saved result.

Should I use an image or PDF for an archive?

Use the format your downstream process needs. A screenshot image preserves the rendered page as pixels; a PDF workflow may be more suitable for document-oriented review.

Can I capture one section instead of the entire page?

Yes. ScreenshotNeo supports capturing one element by CSS selector, while browser built-in commands generally target the document or full page.