Short answer: Cypress’s cy.screenshot() is for capturing an application or Cypress runner as part of a test workflow. For capturing many unrelated websites, use a hosted screenshot API with a documented bulk endpoint, such as ScreenshotOne’s POST /bulk. Browserless documents a hosted POST /screenshot endpoint, but its reviewed documentation does not establish an equivalent bulk wrapper. These tools serve different jobs; the available documentation does not support a speed or image-quality winner.
Choose by what you need to capture
- Test screenshots: Use Cypress when the screenshot belongs in a Cypress test, captures a page or element under test, or records a failure during
cypress run. - A list of unrelated public URLs: Choose an API that explicitly accepts multiple capture requests, or build a queue that calls a single-capture API. ScreenshotOne documents a bulk endpoint for the first approach.
- Hosted single-page captures: Browserless documents a REST screenshot endpoint that accepts a URL and capture options. The reviewed documentation does not establish a matching bulk endpoint.
This is a fit-for-purpose distinction based on documented integrations, not a comparative benchmark.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
MABCIRY Pocket Changes Pinger Tester Kit, Portable Gold and Silver Changes Resonance Testing Tool... | $12.99 | Buy on Amazon |
| 2 |
|
Responsive Web Design Toolkit | $51.16 | Buy on Amazon |
As an Amazon Associate I earn from qualifying purchases.
What Cypress’s screenshot command does
cy.screenshot() runs inside Cypress. It can capture the application, a DOM element yielded by a preceding command, or the Cypress runner. Its capture option supports viewport, fullPage, and runner; full-page capture scrolls down the page and stitches captures, while runner capture includes the browser viewport and Cypress Command Log. See the Cypress screenshot command reference.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →The command also documents clipping, blackout selectors, padding for element captures, scaling, disabling timers and animations, overwrite behavior, callbacks before and after capture, and a timeout. These controls are useful when a screenshot is part of a test or when you need to hide sensitive or distracting page regions.
#1 Best Overall
- Precision Authentication: Uses pure resonance frequency analysis to verify changes ranging from 1/10 troy ounce to 10 troy ounces. Complies with certification standards, ensuring professional and reliable authentication results
- Comprehensive Authentication Tool kit: Includes acoustic resonance testing and magnetic composition detection for multi factor verification of gold and silver changes. Compatible with mainstream verification systems, meeting comprehensive authentication needs
- Cross Platform System Compatibility: Connects with changes analysis apps, supporting advanced spectral analysis and automated report generation. Conveniently stores complete authentication documents for record keeping
- Easy to Operate: Place the changes in the included stand to start resonance analysis, authenticate authenticity intuitively through sound characteristics. Magnetic buckle design enables simple and efficient metal composition testing, no professional expertise needed
- Portable Design for On the Go Use: Easily fits in pockets, enabling professional grade authentication anytime anywhere. Ideal for collectors and merchants needing on site changes verification
Run it manually or capture test failures
You can invoke screenshots in either cypress open or cypress run. Cypress automatically captures a screenshot for a test failure during cypress run; it does not do this automatically in cypress open. Failure screenshots can be disabled in configuration. See the Cypress screenshots and videos guide and Cypress configuration reference.
Files and timing
Cypress writes screenshot files to the configured screenshots folder, which defaults to cypress/screenshots. Unless you supply a filename, naming is based on spec and test names. The command is asynchronous: Cypress notes that it takes around 100 ms and that the page may change before capture completes. Treat this as a timing caveat, not a claim that every screenshot will be inaccurate.
Cypress’s command is not a documented public endpoint for submitting a list of arbitrary URLs. The reviewed screenshot documentation describes individual commands within the Cypress test flow.
Hosted API options for multiple websites
ScreenshotNeo: an alternative to try first
ScreenshotNeo is a website screenshot API and MCP server. Its one-request API is useful when you want a straightforward way to capture a URL; it also offers features for capture customization, async jobs, and bulk capture. It is the first alternative to try here because clean captures remove consent banners, newsletter popups, and chat widgets before the shot, and only clean shots are billed.
ScreenshotOne: documented bulk submission
ScreenshotOne documents POST https://api.screenshotone.com/bulk, which accepts a list of screenshot requests for URLs, HTML, or Markdown. A shared options object can set defaults, while individual requests can override them. The response can provide generated screenshot URLs; set execute to true to execute requests before the response is returned. See ScreenshotOne’s bulk endpoint documentation.
Bulk submission does not eliminate request limits: ScreenshotOne says bulk requests use the same one-minute request bucket as regular requests. Its documentation advises checking concurrency.remaining and concurrency.reset before sending a large queue. Its guide recommends proxies when needed, retries for failures, and queue-based batches. These are provider recommendations, not independently tested performance claims. See the ScreenshotOne bulk guide.
Rank #2
ScreenshotOne also documents regular GET and POST screenshot requests with access-key authentication. Its getting-started documentation states that POST bodies containing HTML or Markdown can be up to 100 MiB. See ScreenshotOne’s getting-started documentation.
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 errorsBrowserless: documented single-capture endpoint
Browserless documents an authenticated POST /screenshot REST endpoint. It accepts a URL and screenshot options and can return PNG, JPEG, or WebP. Its REST overview describes captures from a URL or raw HTML, including viewport and full-page capture. The reviewed documentation establishes this endpoint, but not an equivalent single-request bulk wrapper; that is not evidence that batching is impossible through other implementations. See Browserless’s screenshot endpoint documentation and REST API overview.
Compare the integration and operating model
| Question | Cypress | Hosted APIs in the documented examples |
|---|---|---|
| Where does capture run? | As a command in the Cypress test flow. | As an HTTP request from a client. Browserless documents POST /screenshot; ScreenshotOne documents regular endpoints and /bulk. |
| Is bulk URL capture documented? | The reviewed screenshot docs describe individual commands, not a bulk URL endpoint. | ScreenshotOne explicitly documents multiple requests through /bulk. The reviewed Browserless docs establish a screenshot endpoint, not an equivalent bulk wrapper. |
| What can be captured? | The app, a selected element, or the runner; viewport, full-page, and runner modes. | Browserless documents URL or raw HTML capture and screenshot options. ScreenshotOne documents lists of URL, HTML, or Markdown requests plus shared and per-request options. |
| How is output handled? | Screenshot files go to the configured Cypress screenshots folder; failure capture is integrated with cypress run. |
Output depends on endpoint and options: Browserless documents image output; ScreenshotOne bulk can return generated screenshot URLs. |
| What operational details need attention? | Command timing and handling screenshots as test artifacts. | Authentication, request buckets, queueing, retries, and provider-specific limits. |
Claims in this table summarize the providers’ documentation linked above; they do not compare latency, reliability, geographic coverage, or image quality.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.How to decide and implement a bulk workflow
- Keep capture in the test suite when the page is under test. Call
cy.screenshot()at the point in the Cypress flow where the application state matters, or rely on automatic failure screenshots duringcypress runif that suits your debugging workflow. - Use an explicit bulk API for a batch of unrelated URLs. For ScreenshotOne, submit multiple requests to
POST https://api.screenshotone.com/bulk. Set shared defaults inoptionsand override them per request only where needed. Refer to the provider’s current endpoint documentation for the request schema and authentication details. - For a single-capture endpoint, own the queue. Submit work in controlled batches, respect provider limits, retry failures deliberately, and record each URL’s status and output. ScreenshotOne’s guide specifically recommends queue-based batches and checking its concurrency counters.
- Persist results independently of the request process. Save generated image URLs or image data, associate each result with its input URL, and record failures so a partial batch can be resumed without recapturing successful pages. This is a workflow recommendation, not a provider-specific feature claim.
Common failure and planning checks
- A Cypress screenshot looks different from the exact moment the command ran: Cypress documents that capture is asynchronous and takes around 100 ms. Ensure the test has reached the intended state before invoking the command.
- You expected failure screenshots in interactive mode: Cypress documents automatic failure capture for
cypress run, notcypress open. Use the command manually when debugging interactively. - A screenshot is missing from its expected folder: Check the configured screenshots folder and whether a spec/test-derived filename or an explicit filename is being used.
- A ScreenshotOne batch is throttled or delayed: Check
concurrency.remainingandconcurrency.reset, then reduce or queue the batch, following the provider’s bulk guide. - A Browserless request does not behave like a batch: The reviewed endpoint is a single screenshot REST endpoint. For multiple URLs, implement a client-side queue or select a service that documents a bulk wrapper.
- You need to compare cost or speed before choosing: The cited documentation does not establish comparable pricing, quotas, latency, reliability, or regional coverage. Check current provider terms and test the workload you actually need rather than inferring a winner from endpoint shape.
Or skip the browser setup
Make a one-call capture with ScreenshotNeo (replace the target URL; create an API key in your account). See the ScreenshotNeo API documentation for request options.
Quick Recap
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo removes cookie banners, popups, and chat widgets before capture; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for free ScreenshotNeo access.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
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.




