ScreenshotNeo

BlogComparisons

GrabzIt Review: Screenshot API Features and Limitations

A practical review of GrabzIt’s screenshot API: capture controls, documented limits, troubleshooting, and how to choose an alternative.

By the ScreenshotNeo team4 October 20267 min read

GrabzIt is a web capture and conversion API that can turn URLs or supplied HTML into screenshots. Its screenshot controls include output format, viewport dimensions, full-page capture, delays, selector targeting, and limited page interactions. Whether a capture matches the page as a visitor sees it depends on loading time, viewport width, page behavior, and package limits, so those controls need to be checked against the target site.

This review focuses on screenshot capture through GrabzIt’s API and JavaScript library. The service also covers other conversion workflows, including document, video, and table-data use cases; those are outside this screenshot-focused review. [GrabzIt]

1. How GrabzIt screenshot capture works

GrabzIt provides REST access and native libraries. Its JavaScript API guide shows URL capture, supplied HTML capture, and capture of the current page. The browser-side JavaScript workflow uses an application key, and the site’s domain must be authorized so others cannot copy the script and consume the account’s resources. [GrabzIt JavaScript API guide]

At a high level, an application submits a page or HTML input plus capture options, GrabzIt renders it, and the resulting capture can be delivered through the integration or an export destination. The browser-side library can insert a capture into a selected page element or provide a base64 data URL to a callback. GrabzIt’s support index also documents export destinations including Amazon S3, Dropbox, FTP, and WebDAV. [GrabzIt support]

2. Screenshot features and controls

Need Documented control Practical note
Capture a website or markup URL, supplied HTML, or current page through the JavaScript guide For browser-side use, authorize the domain and protect account credentials appropriately.
Choose an image format The parameter reference lists JPG, PNG, WebP, BMP variants, TIFF, and SVG among formats used across capture types The reference spans multiple conversion types; confirm format applicability for the specific screenshot workflow.
Set the viewport Browser width and height parameters Viewport changes responsive breakpoints and therefore page layout.
Capture a full page Set browser height to -1 Package eligibility and practical dimension limits apply.
Wait for content Delay or wait for a visible CSS selector Delay has a documented maximum of 30,000 ms; selector wait has a maximum of 25 seconds.
Capture one region or interact first CSS selector targeting, hide selectors, and click, hover, or scroll interactions The interaction parameter group permits only one click, hover, or scroll action.

See the GrabzIt parameter reference for exact parameter names and currently documented values. Do not infer that every format or option applies identically to every capture type.

3. Viewport sizing and full-page limits

Browser width and height set the render viewport. GrabzIt documents a maximum browser dimension of 10,000 pixels in its parameter reference. Its support article says Professional and higher packages can create images up to 10,000 pixels wide. Treat the package qualification as material and confirm current eligibility before building a workflow around the maximum. [Maximum screenshot size]

For full-page capture, height -1 requests the whole page. GrabzIt describes height as potentially infinite, but its support documentation gives 65,500 pixels as the practical operating-system ceiling. Extremely long pages may therefore be clipped or exceed package limits. [Parameter reference, Maximum screenshot size]

For repeatable captures, set width and height explicitly. The same URL at a mobile width can have a different navigation, line wrapping, image layout, or content visibility than at desktop width. If visual output differs from the browser, first compare using the same Chromium-based browser and viewport, then adjust width and wait time as GrabzIt’s support guidance recommends. [Why captures can differ from a browser]

4. Timing, selectors, and dynamic pages

A zero delay is the documented default. Increase delay when the site needs time to render client-side content, or wait for a selector that appears when the specific content is ready. Delay is capped at 30 seconds; waiting for a visible element is capped at 25 seconds. These are separate controls and should not be treated as interchangeable. [Parameter reference]

  • Use a selector wait when a stable, visible element signals readiness.
  • Use a delay when readiness cannot be represented by one selector, but keep it only as long as necessary.
  • Use a target selector when the output should contain a particular element; use hide selectors to remove page regions from the rendered result.
  • If a page needs a click, hover, or scroll to reveal content, account for the one-action limit documented for that interaction parameter group.

Waiting does not guarantee that a page will render as expected. A selector may never appear, content may be loaded after the configured wait, or the target site may behave differently in an automated Chromium capture.

5. Runnable API examples

The supplied research dossier documents GrabzIt’s parameter names and JavaScript guide, but does not provide a verified REST endpoint URL, authentication parameter, or complete REST request schema. To avoid inventing a runnable request, use the official API documentation and your account’s current credentials and endpoint when translating these options into REST, cURL, Python, or Node.js. The JavaScript guide is the source for its browser-side flow. [JavaScript API guide]

For a REST integration, the implementation pattern is: submit the URL or HTML and documented capture parameters; handle the API’s completion or retrieval flow as specified in current documentation; then save or deliver the returned image. Confirm authentication, response format, polling behavior, and error codes from the current official API reference rather than copying an assumed endpoint.

6. Fidelity, reliability, and performance considerations

GrabzIt’s support material says captures may not look the same as a user’s browser view. It identifies Chromium as the basis of its capture software and points to insufficient load time and browser width as causes. Compare against Chrome at the same viewport, then adjust width and allow more load time. These are troubleshooting suggestions, not a guarantee of pixel-identical rendering. [GrabzIt capture appearance guidance]

  • Performance: Extra delay increases the time before capture. Prefer a meaningful selector wait when possible, and avoid requesting a full-page image when a target element is sufficient.
  • Reliability: Test representative pages with different responsive layouts and loading behavior. A successful API request does not establish that all late-loading content appeared in the capture.
  • Size: Large viewport dimensions and full-page images can produce large outputs and encounter package or operating-system limits.
  • Cost: This research did not establish current GrabzIt package prices, quotas, retention, or feature eligibility. Check its live plan comparison before estimating per-capture cost or selecting a package. [GrabzIt plans]

7. Common problems and fixes

Symptom Likely cause What to try
Capture differs from the browser Viewport width or load time differs; rendering engine differs Compare in Chrome at the configured viewport, then adjust width and allow more loading time.
Content is missing Capture happened before content appeared, or the page requires interaction Use a longer delay within the 30-second limit or wait for a visible selector within the 25-second limit; check whether one supported interaction is needed.
Full page is clipped or unavailable Package eligibility or maximum image dimensions Confirm package access; reduce capture dimensions or split the workflow into smaller page regions where suitable.
Expected element is absent Selector is incorrect, hidden, or never becomes visible Verify the selector against the rendered page and ensure the wait target is visible before capture.
Browser-side integration is rejected The calling domain is not authorized or the application key setup is wrong Authorize the domain and follow the current JavaScript API setup instructions.
Output format behaves unexpectedly A listed format may apply to another capture type in the broader parameter reference Check format support for the exact screenshot endpoint and output workflow.

8. When GrabzIt is a fit

GrabzIt is worth evaluating when an application needs a web capture API with viewport, full-page, timing, selector, and interaction controls, or when screenshot output sits alongside the service’s broader conversion workflows. Before committing, validate the target pages, confirm package-specific size limits, and check live plan details. The reviewed documentation does not establish independent performance benchmarks or a universal fidelity guarantee.

9. ScreenshotNeo as an alternative

ScreenshotNeo is a website screenshot API and MCP server for developers, made by Yorker Media. It is the first alternative to try when you want clean captures, billing limited to clean shots, and a paid plan starting at $5 for 3,000 screenshots.

Or skip the browser setup

Make one GET request to capture a URL. See the ScreenshotNeo API documentation for the request and options.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
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)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
  • Cookie and consent banners, newsletter popups, and chat widgets are removed before the shot; each cleanup step can be turned off.
  • Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed; response headers say the page verdict and billing status.
  • An MCP server gives AI agents tools to take screenshots, get page information, and capture PDFs.
  • The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000.

Sign up free for 1,000 screenshots a month, with no card required.

10. FAQ

Can GrabzIt capture HTML instead of a public URL?

Yes. Its JavaScript API guide documents supplied HTML capture as well as URL and current-page capture. Check that guide for the applicable integration details. [JavaScript API guide]

Does a full-page request have unlimited height?

No. Height -1 requests a full-page capture, but GrabzIt documents package limits and a practical height ceiling of 65,500 pixels. [Maximum screenshot size]

What should I compare when evaluating a screenshot API?

Compare supported inputs and outputs, viewport and full-page limits, timing and interaction controls, plan quotas and prices, delivery options, and behavior on pages that block or delay automated capture. Confirm each detail from current product documentation.

Does the documented delay replace selector waiting?

No. Delay waits a fixed duration; selector waiting waits for a visible element, subject to its own documented maximum.