Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
Start with the provider defaults. Add ms_delay only when content is missing, and increase it in small steps until asynchronous work appears. Set device_scale: 1 for the smallest practical file; use 2 when you need a retina-density image. These names are not universal: some APIs call the same controls delay and deviceScaleFactor.
What the two parameters actually do
ms_delay is a pause after loading
ms_delay tells a screenshot service to wait for a specified number of milliseconds after its normal loading process before rendering the image. It gives JavaScript, remote images, web fonts, embeds, canvas drawing and other asynchronous work time to finish. HTML/CSS to Image says most users do not need it because the service handles common loading scenarios automatically; its guidance is to use the parameter when expected content, dynamic content, fonts or images are missing.
A delay does not repair a broken URL, a blocked request, a bot challenge or invalid JavaScript. It only gives a page that is still progressing more time. It also increases processing time, so a long value can reduce throughput without improving the result.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →device_scale changes pixel dimensions
device_scale multiplies the rendered pixel density. It does not change the CSS layout size. A 1,200 × 630 canvas rendered at device_scale: 2 becomes a 2,400 × 1,260 image, as shown in HTML/CSS to Image’s canvas documentation. Higher scale can make text and graphics sharper on high-density displays, but it increases bytes, memory use, transfer time and storage requirements.
#1 Best Overall
- CRISP CLARITY: This 23.8″ Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
- WORK SEAMLESSLY: This sleek monitor is virtually bezel-free on three sides, so the screen looks even bigger for the viewer. This minimalistic design also allows for seamless multi-monitor setups that enhance your workflow and boost productivity
- A BETTER READING EXPERIENCE: For busy office workers, EasyRead mode provides a more paper-like experience for when viewing lengthy documents
A reliable way to choose values
- Render with defaults. Do not add a delay or increase scale until you have inspected the baseline image.
- Identify what is missing. Check whether the problem is dynamic text, a late image, a font, an embed or an animation. A completely white image may instead indicate a failed navigation, access control or a browser error.
- Add a short delay. Begin with a modest value such as 500 ms when blank or late content is observed. Canvasflare documents a 100 ms default and uses 500 ms as a starting example; treat those figures as guidance, not a universal optimum.
- Increase gradually. Try 1,000 ms, then larger values only if the page demonstrably needs them. Stop when the required marker appears. There is no independently established delay that is optimal for every site.
- Prefer readiness conditions. If your provider can wait for a stable CSS selector or other readiness marker, use that condition instead of a large blind pause. A selector such as
[data-rendered="true"]is usually more repeatable than guessing how long a network request will take. - Choose scale for delivery. Keep
device_scale: 1for thumbnails, archives and bandwidth-sensitive workflows. Choose2for retina-ready cards or documentation images after checking the resulting file size. Do not assume scale fixes a low-resolution source image; it only renders more output pixels.
Using the settings in an API request
Parameter names and limits belong to each vendor. The following shape illustrates the settings; replace the endpoint and authentication details with the service’s documentation. Do not send ms_delay to a service that documents a different name.
{
"url": "https://example.com/page",
"ms_delay": 500,
"device_scale": 2
}
For a page whose content is ready at navigation, omit both fields. For a page that exposes a readiness selector, a provider-specific request might instead look like this:
{
"url": "https://example.com/dashboard",
"wait_for_selector": "[data-rendered="true"]",
"device_scale": 1
}
The selector option above is intentionally provider-specific: consult the API reference for the exact field name and timeout behavior.
Rank #2
- CRISP CLARITY: This 22 inch class (21.5″ viewable) Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- 100HZ FAST REFRESH RATE: 100Hz brings your favorite movies and video games to life. Stream, binge, and play effortlessly
- SMOOTH ACTION WITH ADAPTIVE-SYNC: Adaptive-Sync technology ensures fluid action sequences and rapid response time. Every frame will be rendered smoothly with crystal clarity and without stutter
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
Why a screenshot is blank or incomplete
The page is still executing JavaScript
Single-page applications may initially contain only a shell. Add a small post-load delay or wait for the element that proves rendering finished. If the element never appears in a normal browser, increasing the delay will not help.
Fonts or images arrive late
Cross-origin assets, slow image hosts and web-font negotiation can finish after the first paint. Confirm that the asset URLs are reachable from the capture service, then add a short delay. A blocked font may cause a fallback typeface rather than a blank image.
An animation is captured between states
Use a readiness marker, disable animation with custom CSS when your provider supports it, or choose a delay that lands after the desired state. A fixed delay can still be nondeterministic when animation duration changes.
Rank #3
- Clear visuals. Fluid motion: A 144Hz refresh rate and 1ms MPRT deliver smooth, tear‑free motion across work, gaming, and streaming for clearer, more fluid viewing.
- Eye comfort: TÜV Rheinland 3‑star* certification reduces harmful blue light while preserving stunning color quality without compromise. *TÜV Rheinland 3-star eye comfort certification.
- Wide viewing angle: Get consistent views across a wide 178° /178° viewing angle.
- In-Plane Switching (IPS): See excellent color accuracy and consistency across wide viewing angles with In-plane Switching (IPS) technology.
- Ultra-thin bezels: Maximize your viewing experience with thin bezels.
The navigation failed
Check the response or provider diagnostics for DNS errors, TLS failures, timeouts, authentication and robots or bot checks. A longer wait cannot turn a failed navigation into a page.
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 reinstallVendor limits and naming differences
| Service/documentation | Delay name and information | Device-scale name and information | Other documented behavior |
|---|---|---|---|
| HTML/CSS to Image | ms_delay; intended for missing dynamic content, fonts or images; most users do not need it |
device_scale; a 1,200 × 630 canvas at 2 outputs 2,400 × 1,260 |
Full-screen guidance recommends scale 1 for smaller files and adding delay only when content is missing |
| Canvasflare | Described as additional delay for JavaScript completion; documentation lists a 100 ms default and suggests starting at 500 ms for blank images | Not stated in the cited material | Use the service’s own request schema |
| ScreenshotAPI | delay, documented from 0 to 20,000 ms |
deviceScaleFactor, documented from 1 to 5 |
Names and limits differ from ms_delay/device_scale |
These figures are documentation values accessed in 2026, not a cross-provider performance benchmark. A setting accepted by one API may be rejected or ignored by another.
Performance, reliability and cost trade-offs
- Latency: every millisecond of blind delay extends the request’s critical path. A selector or network-idle condition can finish earlier when the page is fast.
- Throughput: high delays occupy browser capacity, which matters for bulk jobs and concurrency limits.
- Payload size: doubling each dimension with scale 2 produces roughly four times as many pixels before compression. Actual file size depends on format and image content.
- Memory: full-page, high-scale captures can exceed browser or service limits. Reduce scale, capture an element, or split a long page if the provider reports resource exhaustion.
- Reproducibility: wait for a semantic marker, freeze animations and use consistent viewport, timezone and locale settings when available.
- Billing: check whether your provider bills attempts, successful images or processing time. The cited documentation does not establish a universal billing model.
ScreenshotNeo: skip the browser setup
If you need a production screenshot without maintaining a headless-browser script, ScreenshotNeo is the first service to try: it produces clean shots, bills only clean shots, and its paid entry plan is $5 for 3,000 shots.
Rank #4
- CURVED FOR ENHANCED ENGAGEMENT: An immersive viewing experience with a curved monitor that wraps more closely around your field of vision; It creates a wider view, enhancing depth perception and minimizing peripheral distraction
- SMOOTH PERFORMANCE FOR SEAMLESS CONTENT: Stay in the action when playing games, watching videos, or working on creative projects; The 100Hz refresh rate reduces lag and motion blur so you don't miss a thing in fast-paced moments¹
- MORE GAMING POWER: Gain the edge with optimizable game settings; Color and image contrast can be adjusted to see scenes more vividly and spot enemies hiding in the dark; Game Mode adjusts any game to fill the screen so you can view every detail²
- KEEP IT EASY ON THE EYES: Care for your eyes and stay comfortable, even during long sessions; Advanced eye comfort technology certified by TÜV reduces eye strain by minimizing blue light and reducing irritating screen flicker²
- INCREASED VERSATILITY: Connect to more; Plug devices straight into your monitor for increased flexibility, making your computing environment even more convenient
ScreenshotNeo accepts a URL with one GET request and returns PNG, JPEG, WebP or PDF. Before capture it accepts cookie or consent banners like a visitor and removes more than 60 known consent platforms, newsletter popups and chat widgets. Each step can be disabled. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads and cache hits are not billed, and response headers identify the page verdict and billing result.
Its 63 options include full-page capture with lazy images loaded, CSS-selector element capture, dark mode, 12 device presets plus arbitrary viewports, retina scale, PDF paper and page controls, custom CSS and JavaScript, pre-capture clicks, hidden selectors, selector/delay/network-idle waits, ad and tracker blocking, custom headers, cookies, user agents and Authorization, timezone and geolocation, transparent backgrounds, resizing, configurable-TTL caching, signed image links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, a usage API and an OpenAPI specification. An MCP server supplies take_screenshot, get_page_info and capture_pdf tools to Claude, Cursor and other MCP clients.
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}`);
See the complete parameter reference at ScreenshotNeo’s documentation. Plans include 1,000 free shots per month with no card; paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshooting checklist
“The image is white”
- Open the URL normally and verify it renders without login or a bot challenge.
- Inspect the provider’s verdict, status and error headers.
- Try a readiness selector or a 500 ms delay.
- Check that scripts, fonts and images are not blocked by policy or authentication.
“The dynamic section is missing”
- Find a stable selector that appears only after rendering.
- Wait for that selector if supported; otherwise increase
ms_delaystep by step. - Check whether the section is inside an iframe or shadow DOM, which may require provider-specific handling.
“The file is too large”
- Return to
device_scale: 1. - Use WebP or JPEG when transparency and lossless text are unnecessary.
- Capture the relevant element instead of the entire page, or resize after capture.
“The parameter has no effect”
- Confirm the vendor’s spelling:
delayversusms_delay, anddeviceScaleFactorversusdevice_scale. - Check documented ranges; ScreenshotAPI, for example, limits delay to 20,000 ms and device scale to 1–5.
- Ensure the value is numeric and is sent in the correct query or JSON field.
Practical starting presets
| Use case | Starting delay | Scale | Adjustment |
|---|---|---|---|
| Static marketing page | 0 or provider default | 1 | Add delay only after observing missing assets |
| JavaScript-rendered dashboard | 500 ms or a readiness selector | 1 | Increase in small steps; prefer the selector |
| Retina social graphic | 0 unless content is late | 2 | Check pixel dimensions and delivery size |
| Large full-page archive | Default, then targeted wait | 1 | Lower scale or split captures if memory or size limits occur |
Frequently Asked Questions
Is a longer ms_delay always better?
No. It adds latency and may still miss content when the page has failed. Use the shortest delay that consistently follows a real readiness signal.
Best Value
- 【INTEGRATED SPEAKERS】Whether you're at work or in the midst of an intense gaming session, our built-in speakers provide rich and seamless audio, all while keeping your desk clutter-free.
- 【EASY ON THE EYES】 Protect your eyes and enhance your comfort with Blue-Light Shift technology. This feature reduces harmful blue light emissions from your screen, helping to alleviate eye strain during long hours of use and promoting healthier viewing habits.
- 【WIDEN YOUR PERSPECTIVE】Our sleek minimal bezel design ensures undivided attention. The nearly bezel-free display seamlessly connects in a dual monitor arrangement, delivering an unobstructed view that lets you focus on more at once, completely distraction-free.
Does device_scale change CSS dimensions?
No. It changes output pixel density; the CSS layout remains the same.
Can I use ms_delay and device_scale on every screenshot API?
No. Equivalent controls have provider-specific names, ranges and behavior. Check the service documentation before sending them.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsQuick 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.

