If a Playwright screenshot shows the top of a page but blank space below it, first confirm the capture uses fullPage: true. If that is already set, check whether the missing content has actually loaded: full-page capture extends the image to the page’s scrollable height, but it does not automatically trigger every application’s scroll-dependent loading. The cause cannot be confirmed without the page and code, so use the checks below to separate capture extent from missing or unrendered content.
1. Enable full-page capture
page.screenshot() captures the visible viewport by default. In JavaScript or TypeScript, set fullPage: true to capture the full scrollable page:
await page.screenshot({ path: 'full.png', fullPage: true });
The Playwright Page API describes fullPage as taking a screenshot of the full scrollable page instead of the currently visible viewport. This changes the capture extent; it does not guarantee that content created only after a user scrolls has loaded. The Playwright screenshots guide documents the same option for Python.
Check the call that produced the file
- Verify that the screenshot call responsible for the reported image includes
fullPage: true. In Python, the equivalent option isfull_page=True. - Check whether another screenshot call runs later and writes to the same path, replacing the full-page image with a viewport capture.
2. Determine whether the missing content exists
Before adjusting screenshot options, check the page’s DOM for the specific missing text or element and inspect the document’s scroll height. If the expected content is absent from the DOM, a screenshot option cannot create it. Your application must first fetch or render that content.
#1 Best Overall
- PORTABLE SCANNER FOR USE ON-THE-GO — The fastest and lightest mobile single-sheet-fed compact document scanner in its class¹
- QUICK DOCUMENT SCANNING ― This Epson ultra-fast scanner scans a single page as quickly as 5.5 seconds²; Windows and Mac compatible
- VERSATILE PAPER HANDLING ― Portable scanner scans documents up to 8.5 x 72 in; Also easily digitizes receipts and ID cards to make accounting, bookkeeping, and organizing simpler
- INTUITIVE, HIGH-SPEED SOFTWARE — Epson ScanSmart Software³ is a smart tool allowing you to easily scan, review, and save; Stay organized easily with the help of this Epson scanner
- EASY SETUP — USB-powered connect to your computer for quick and simple scanning; No batteries or external power supply required to operate portable document scanner; Standard Connectivity: USB 2.0
Use an application-specific locator or loading signal rather than assuming that the page is ready because navigation finished. For a dynamic page, identify the target content the screenshot is supposed to include, then verify that it appears before capture.
3. Trigger scroll-dependent loading and wait for the result
Infinite lists and similar interfaces may load more content only after scrolling. Playwright’s scrolling guide notes that scrolling a footer into view can force an infinite list to load more content. Scroll a meaningful target into view, then wait for the expected content or the application’s own loading-complete signal:
Rank #2
- FAST SPEEDS - Scans color and black and white documents a blazing speed up to 16ppm (1). Color scanning won’t slow you down as the color scan speed is the same as the black and white scan speed.
- ULTRA COMPACT – At less than 1 foot in length and only about 1. 5lbs in weight you can fit this device virtually anywhere (a bag, a purse, even a pocket).
- READY WHENEVER YOU ARE – The DS-640 mobile scanner is powered via an included micro USB 3. 0 cable allowing you to use it even where there is no outlet available. Plug it into you PC or laptop and you are ready to scan.
- WORKS YOUR WAY – Use the Brother free iPrint&Scan desktop app for scanning to multiple “Scan-to” destinations like PC, Network, cloud services, Email and OCR. (2) Supports Windows, Mac and Linux and TWAIN/WIA for PC/ICA for Mac/SANE drivers. (3)
- OPTIMIZE IMAGES AND TEXT – Automatic color detection/adjustment, image rotation (PC only), bleed through prevention/background removal, text enhancement, color drop to enhance scans. Software suite includes document management and OCR software. (4)
await page.getByText('Footer text').scrollIntoViewIfNeeded();
await page.getByText('Last expected row').waitFor({ state: 'visible' });
await page.screenshot({ path: 'full.png', fullPage: true });
Replace the example text locators with stable selectors from your application. If content loads over multiple scroll increments, repeat the interaction the application expects and wait for concrete content after each relevant step. There is no universal delay that guarantees every site has finished loading; a fixed sleep can be too short on a slow run and unnecessarily long on a fast one.
4. Check which element actually scrolls
Some pages scroll within an inner panel rather than the document. If the missing content belongs to a nested scrolling container, scroll that container or a locator inside it; scrolling the document may not trigger the panel’s loading behavior. After scrolling, check that the intended container grew or revealed the expected content before taking the full-page screenshot.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallRank #3
- FAST DOCUMENT SCANNING — Document scanner with feeder allows you to speed through stacks with a 50-sheet Auto Document Feeder (ADF); Efficient office scanner to help you scan more productively
- INTUITIVE, HIGH-SPEED SOFTWARE — Quickly scan with this desktop document scanner; Epson ScanSmart Software lets you easily preview scans, email files, upload to the cloud, and more; Plus, automatic file naming saves even more time
- SEAMLESS INTEGRATION — Easily incorporate your data into most document management software with the included TWAIN driver; Office document scanner integrates seamlessly with business workflows
- EASY SHARING — Duplex scanner allows you to scan straight to email or popular cloud storage2 services like Dropbox, Evernote, Google Drive, and OneDrive for simple storage and sharing
- SIMPLE FILE MANAGEMENT — Scanner allows the creation of searchable PDFs with Optical Character Recognition (OCR) and convert scans to editable Word or Excel files effortlessly; Designed for home and office document scanning
5. If the content exists, investigate rendering and layout
If the target is present in the DOM but absent from the screenshot pixels, look beyond loading. Check the target’s dimensions and visibility, whether an ancestor clips it with overflow, whether an overlay covers it, whether images are still lazy-loading, and whether CSS positions it outside the captured document. These are diagnostic possibilities, not a confirmed explanation for an unspecified page.
Compare a viewport screenshot, a screenshot of the target element, and a full-page screenshot. If the element screenshot contains the content but the full-page image does not, that narrows the problem toward document extent, layout, or clipping. If all are empty, investigate whether the element rendered and became visible at all.
Rank #4
- Scanner type: Document
- Connectivity technology: USB
- With Auto Scan Mode, the scanner automatically detects what you're scanning
- Digitize documents and images
6. Stabilize visual screenshot tests
If the issue appears only in a visual assertion, distinguish it from a direct page.screenshot() failure. Playwright’s visual comparison documentation says expect(page).toHaveScreenshot() waits until two consecutive screenshots match before comparing with the baseline. That stability check does not make output identical across different environments: operating system, browser version, settings, hardware, power source, and headless mode can affect rendering. Keep those conditions consistent when diagnosing visual differences.
Screenshot options can disable or control animations and inject styles. Use those controls only when appropriate for the test, and verify that any stabilization style does not hide or alter the content under test. See the Page API for screenshot options.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Best Value
- OUR MOST ADVANCED SCANSNAP. Large touchscreen, fast 45ppm double-sided scanning, 100-sheet document feeder, Wi-Fi and USB connectivity, automatic optimizations, and support for cloud services. Upgraded replacement for the discontinued iX1600
- CUSTOMIZABLE. SHARABLE. Select personalized profiles from the touchscreen. Send to PC, Mac, mobile devices, and clouds. QUICK MENU lets you quickly scan-drag-drop to your favorite computer apps
- STABLE WIRELESS OR USB CONNECTION. Built-in Wi-Fi 6 for the fastest and most secure scanning. Connect to smart devices or cloud services without a computer. USB-C connection also available
- PHOTO AND DOCUMENT ORGANIZATION MADE EFFORTLESS. Easily manage, edit, and use scanned data from documents, receipts, photos, and business cards. Automatically optimize, name, and sort files
- AVOIDS PAPER JAMS AND DAMAGE. Features a brake roller system to feed paper smoothly, a multi-feed sensor that detects pages stuck together, and skew detection to prevent paper damage and data loss
7. Troubleshoot by symptom
| What you observe | Likely area to inspect | Next check |
|---|---|---|
| The image ends at the viewport height. | Capture extent or a later screenshot overwriting the file. | Confirm the saved image came from a call with fullPage: true (or Python’s full_page=True). |
| The image is tall, but the lower section is empty and its content is not in the DOM. | Application readiness or scroll-triggered loading. | Scroll a meaningful target into view and wait for the expected content or loading signal. |
| The target exists in the DOM but does not appear in the full-page image. | Visibility, dimensions, clipping, overlays, lazy images, or layout. | Compare viewport, target-element, and full-page screenshots; inspect the target and its scroll container. |
| A nested panel reveals more items, but the document screenshot does not show them. | Inner scrolling surface. | Scroll the panel itself and verify that its contents have loaded before capture. |
| Direct screenshots look right, but visual assertions vary between runs or machines. | Rendering stability or differences in test environment. | Keep browser and environment conditions consistent; check stabilization styles and the assertion’s output. |
Or skip the browser setup
If you need a screenshot without maintaining a Playwright browser flow, ScreenshotNeo is a website screenshot API and MCP server for developers. It accepts a URL in one GET request and returns a PNG, JPEG, WebP, or PDF. For a WebP capture:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo documentation for request options. ScreenshotNeo accepts cookie and consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each of those steps can be turned off. Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and responses indicate the page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for AI agents using Claude, Cursor, or another MCP client. The Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots.
Sign up for 1,000 free screenshots a month, with no card required.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

