Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsTo capture a website, give a screenshot service the page URL, choose whether you want the visible viewport, the full scrollable page, or one element, set the viewport and output options, then capture and inspect the result. For repeatable browser-based control, Playwright can save screenshots directly to a file; for a hosted one-request option, ScreenshotNeo returns an image or PDF from a URL.
Choose what part of the website to capture
Before capturing, decide what the image needs to show. The capture mode determines whether you get only what is currently visible, the entire page, or a particular component.
- Viewport: Captures the browser’s visible page area at the chosen viewport size. Use it for a screen-sized view, such as a landing-page hero or a mobile layout.
- Full page: Captures the complete scrollable page, including content below the fold. Playwright documents this mode as a screenshot of the full scrollable page. It is useful for page reviews and records, but a very long page can produce a tall, unwieldy image. Playwright Page API
- Element: Captures one component, such as a form, chart, or navigation area. Use this when the whole page would add irrelevant content. Playwright supports taking a screenshot from a locator. Playwright screenshots guide
If you are comparing a page over time, capture the same mode and dimensions each time. Otherwise, a responsive layout change or a different amount of visible content can make the images difficult to compare.
How to capture a website with a browser automation tool
Playwright is one way to automate a real browser and save a page screenshot to disk. The following Node.js example captures a full-page image. It sets the viewport before navigating, waits for the page to load, and writes a PNG file. Playwright’s screenshot API also supports returning image data as a buffer and options such as clipping, masking, and image quality. Page API documentation
#1 Best Overall
1. Install Playwright
Install Node.js, create a working directory, and run:
npm init -y
npm install playwright
npx playwright install chromium
2. Save and run the capture script
Create a file named capture.mjs. Change the URL and viewport dimensions to suit the page you need:
import { chromium } from 'playwright';
const url = 'https://example.com';
const browser = await chromium.launch({ headless: true });
const page = await browser.newPage({
viewport: { width: 1440, height: 900 },
deviceScaleFactor: 1
});
try {
await page.goto(url, { waitUntil: 'networkidle', timeout: 60000 });
await page.screenshot({ path: 'website.png', fullPage: true });
console.log('Saved website.png');
} finally {
await browser.close();
}
Run it with node capture.mjs. The script saves website.png in the current directory. Replace fullPage: true with fullPage: false to capture only the viewport. The explicit try/finally closes the browser even if navigation or capture fails.
Capture a particular element instead
Use a locator and screenshot that element after the page has rendered. Replace the screenshot line in the example with:
Recommended Free Tools
await page.locator('#pricing').screenshot({ path: 'pricing.png' });
Change #pricing to a CSS selector that matches the component you need. If the selector does not match an element, Playwright cannot take that element screenshot; inspect the page’s markup or use a selector for an element that is present.
Rank #2
Save a viewport image with a different scale
For a viewport-only capture, use fullPage: false. The browser context’s deviceScaleFactor controls the device-pixel scale: a higher scale can produce more image pixels for the same CSS viewport, and therefore a larger file. Keep the scale consistent for repeat captures. The Playwright API documents scale, clipping, transparency, masking, and format options; availability and behavior are specific to the tool you use. Playwright Page API
Or skip the browser setup
ScreenshotNeo accepts a URL in one GET request and returns a PNG, JPEG, WebP, or PDF. The example below saves a WebP screenshot:
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 the request options and response details. The same endpoint can be called from Python or Node.js:
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 accepts and removes cookie or consent banners from more than 60 known consent platforms, as well as newsletter popups and chat widgets, before capture; you can turn off each step. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server offers take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. Every plan includes every feature.
The Free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 shots; yearly billing gives two months free.
| Plan | Price | Included screenshots |
|---|---|---|
| Free | $0 | 1,000 per month |
| Starter | $5 | 3,000 |
| Growth | $15 | 15,000 |
| Pro | $39 | 60,000 |
| Scale | $99 | 250,000 |
| Business | $249 | 1,000,000 |
Sign up for ScreenshotNeo’s free plan to get 1,000 screenshots a month with no card.
Set the viewport and output for your purpose
A screenshot records a rendered page at a particular size and state. The viewport can change responsive behavior: a site may show a compact navigation menu at phone width and a full menu on desktop. Set the target width and height before navigating when the page might respond to the viewport. Playwright specifically recommends setting viewport size before navigation when the site may react to phone-sized dimensions. Playwright Page API
Free tools Windows power users keep installed
One-click scans. No signup required.
For a useful capture, decide these settings deliberately:
- Viewport dimensions: Use dimensions that match the intended screen or test case. Record them if you will need to reproduce the image.
- Scale: CSS-pixel scale is generally sufficient for review; device-pixel scale can yield a larger, higher-density output. Pixel dimensions and file size can increase with scale.
- Format and quality: PNG is often suitable when crisp edges or lossless detail matter. JPEG and WebP may reduce file size, depending on content and quality settings. Check whether your selected tool supports the format and quality controls you need.
- Clip or element: Capture a defined region or a component rather than creating a full-page file when only that area matters.
- Page state: A page that uses animations, delayed content, or lazy-loaded images may need extra waiting or scrolling before capture. Confirm that important content actually rendered.
These controls are not universal: a hosted service may expose only some browser options. Check its current documentation rather than assuming that an option in Playwright is available in every screenshot service.
Check the screenshot before using it
Open the saved file and confirm it answers the purpose for which you made it. For a full-page capture, inspect the lower part of the image as well as the top; a file can exist even when a section has not loaded as expected. Check that the desired viewport, text, and component are visible, and that the image dimensions and format suit the destination.
For repeatable visual comparisons, keep the browser and execution environment consistent. Playwright notes that rendering can differ across operating systems, browser versions, settings, hardware, power source, and headless mode. A screenshot comparison can therefore report differences that reflect the environment rather than a page change. Playwright visual comparisons
Windows 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 reinstallOutdated 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 matchRank #4
A screenshot is useful for visual inspection, but it is not a substitute for understanding page structure or interacting with controls. For those jobs, use an accessibility snapshot or browser interaction tools; Playwright MCP documents its screenshot and related browser tools. Playwright MCP screenshots
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshoot common capture problems
The screenshot is blank or missing content
The page may not have finished rendering, may have returned an error, or may require a different wait condition. Inspect the page in a browser first, then increase the navigation timeout or wait for a specific element that indicates the page is ready. For lazy-loaded sections, scroll them into view before capture or use a full-page method that loads the needed content. Avoid assuming that a successful file write means the page content is correct.
The layout does not match the expected device
Set width and height before navigating, then capture again. A viewport change can trigger a different responsive layout, and setting it only after the page has loaded may miss the site’s initial response to that size.
The element capture fails
Verify that the selector matches an element on the page and that it has appeared before taking the screenshot. For content created asynchronously, wait for the relevant selector rather than relying only on a fixed delay.
The image is too large or unwieldy
Use a viewport or element capture if the entire page is not needed. Reduce the device scale or choose a supported compressed format when the file size matters. Full-page images are naturally taller than viewport captures, so a PDF or several focused captures may be easier to review for especially long documents.
Repeated screenshots differ unexpectedly
Keep the viewport, scale, browser, operating system, and other rendering settings constant. Also account for changing page content, such as timestamps or rotating promotions. Playwright’s visual-comparison guidance lists environment differences as a reason screenshots can vary. Visual comparisons
Navigation times out
Check whether the site loads normally in a browser and whether it depends on a login, network access, or additional time. A page can keep network connections active even after its visible content is ready; in that case, waiting for a particular heading or component can be more appropriate than waiting indefinitely for network idle. Treat failures, bot challenges, and access restrictions as page outcomes rather than trying to bypass them.
What to consider for recurring captures
A browser script is useful when you need direct control over the browser and can maintain the runtime and dependencies. A hosted screenshot API can reduce the setup needed to request captures repeatedly, while an MCP server can expose screenshot actions to an AI agent. Choose based on the actual workflow, not on an assumption that every service supports the same output modes, privacy terms, or controls.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
- Repeatability: Preserve viewport, scale, browser version, and capture timing for comparisons.
- Volume: Estimate how often jobs run and how many URLs are involved; check current service limits and billing behavior before automating.
- Failure handling: Decide how your workflow should respond to timeouts, bot checks, blank pages, and unavailable URLs.
- Data handling: Before sending a private or authenticated page to any hosted service, review that provider’s current privacy and data-handling terms.
Frequently Asked Questions
Can I use a screenshot service for a page behind a login?
Only if the service or browser workflow supports the required authentication and you are authorized to access the page. Do not send credentials or private page content to a provider until you have checked its current security and data-handling documentation.
Is a screenshot the same as a PDF capture?
No. A screenshot is an image of a rendered page or region; a PDF is a document output with its own page and layout behavior. Choose the output based on whether you need a visual image or a document to share or print.
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.

