ScreenshotNeo

BlogComparisons

ScreenshotNeo vs Restpack: Features and Pricing Compared

Compare ScreenshotNeo and Restpack on capture features, formats, controls, pricing, limits, reliability, and the best fit for your workload.

By the ScreenshotNeo team30 September 20268 min read

ScreenshotNeo vs Restpack: Features and Pricing Compared

Short answer: ScreenshotNeo is the better first choice for most developers who want clean screenshots, predictable billing, and a low-cost starting plan. It removes consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. Its Free plan includes 1,000 shots per month without a card, and paid plans start at $5 for 3,000 shots. Restpack is a mature REST screenshot service with documented URL or raw HTML input, full-page, viewport, and element capture, multiple output formats, configurable delays, caching, and enterprise delivery options.

The right choice depends on your workload. Choose ScreenshotNeo when clean output, flexible browser controls, MCP access for AI agents, and simple usage accounting matter most. Choose Restpack when its documented v7 API, parallel-conversion limits, enterprise geography, or FTP/S3 delivery match an existing system. Verify current Restpack terms before purchase because the vendor’s prices and quotas can change.

Feature comparison at a glance

Capability ScreenshotNeo Restpack
Input Web URL; HTML/CSS to image is also supported Web URL or raw HTML
Capture modes Full page, viewport, or one element by CSS selector Full page, viewport, or selected element
Image formats PNG, JPEG, WebP PNG, JPG, PDF; thumbnails are documented
PDF controls Paper size, margins, landscape, and page ranges PDF output is documented; confirm detailed layout controls in the current API
Page cleanup Accepts consent banners and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be disabled Ad and cookie-warning blocking; privacy mode
Rendering controls Wait for selector, delay, or network idle; lazy-image loading for full-page shots; custom JavaScript and CSS; click an element Page-load wait plus a default two-second script-settle period; configurable delay from instantaneous to 10 seconds
Network and identity Custom headers, cookies, user agent, Authorization, timezone, geolocation; block ads, trackers, requests, or resource types User agent, custom headers, ad and cookie-warning blocking, privacy mode
Delivery Direct image/PDF response, signed links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call Image response or JSON containing a CDN-hosted image URL; enterprise ZIP, FTP, and S3 delivery
Automation MCP server with take_screenshot, get_page_info, and capture_pdf REST API; no MCP capability is documented in the supplied sources
Billing behavior Only clean shots are billed; verdict and billing status are returned in X-Page-Verdict and X-Billed headers Monthly conversion quotas with published overage rates
A screenshot API turns a URL or HTML document into a rendered image or PDF.
A screenshot API turns a URL or HTML document into a rendered image or PDF.

ScreenshotNeo: what you get

ScreenshotNeo is a website screenshot API and MCP server. A GET request returns a PNG, JPEG, WebP, or PDF. The API exposes 63 options, so the same service can handle a quick thumbnail, a long documentation page, a logged-in dashboard, or a print-ready PDF.

Pre-capture cleanup removes common overlays before the screenshot is billed.
Pre-capture cleanup removes common overlays before the screenshot is billed.

Capture and rendering options

  • Capture the viewport, the complete page, or a single element selected with CSS.
  • Use any viewport or one of 12 device presets, then apply a retina scale.
  • Load lazy images for full-page captures.
  • Set dark mode, a transparent background, image resizing, or custom CSS.
  • Run JavaScript, click an element, hide selectors, or wait for a selector.
  • Wait a fixed delay or network idle when a page renders asynchronously.
  • Set timezone and geolocation for localized pages.

Requests, privacy, and caching

Pass custom headers, cookies, a user agent, or an Authorization header when a page requires identity. You can block advertisements, trackers, individual requests, or whole resource types. Caching accepts a TTL you choose. Signed links are available when a public <img> tag needs a controlled URL. Asynchronous jobs support signed webhooks, and bulk capture accepts 100 URLs per call. A usage API and OpenAPI specification help teams monitor and generate clients.

Verdicts and billing

ScreenshotNeo distinguishes a usable page from a bot check, CAPTCHA, blank page, timeout, failed load, or cache hit. Only clean shots are billed. Inspect X-Page-Verdict and X-Billed on every response so your application can record what happened instead of guessing from HTTP status alone.

Restpack: documented capabilities

Restpack describes its Screenshot API as a RESTful service that captures live webpages and returns screenshot files in several formats. Version 7 accepts either a webpage URL or raw HTML. You can request an image response or JSON containing a resulting image URL. See the Restpack v7 reference for the exact parameter names and authentication requirements.

Capture behavior

Restpack documents full-page, viewport, and selected-element modes. Output includes PNG, JPG, and PDF, with thumbnail support. The full-page render is limited to 16,000 pixels in height. The engine waits for page load and then waits two seconds for initial scripts to settle by default. A configurable delay can range from instantaneous to 10 seconds. The documentation also lists caching, user-agent and custom-header controls, ad and cookie-warning blocking, and privacy mode.

JSON mode can return a CDN-hosted image URL. Privacy mode cannot be combined with JSON mode, so decide whether you need privacy processing or URL-based delivery for each request.

Enterprise options

Restpack’s enterprise page describes capture from more than 70 country IP addresses, batch capture delivered in a ZIP, and automatic FTP/S3 delivery. It also mentions support, SLA, and onboarding options without publishing complete terms. Treat those commitments as items to confirm with sales.

Pricing and quotas

ScreenshotNeo’s published plans are straightforward:

Plan Monthly shots Price
Free 1,000 $0, no card
Starter 3,000 $5
Growth 15,000 $15
Pro 60,000 $39
Scale 250,000 $99
Business 1,000,000 $249

Every feature is on every ScreenshotNeo plan, and yearly billing gives two months free. This matters when comparing plans: you do not need to move up solely to unlock a capture option.

Restpack lists Developer at $9.95 per month for 1,000 conversions, Startup at $39.95 for 10,000, Business at $99.95 for 40,000, and Business Plus at $499.95 for 300,000. Enterprise pricing is contact sales. Published overage rates are $0.01, $0.004, $0.0025, and $0.0017 per conversion for those four paid tiers. The same table lists parallel conversions of 5, 10, 20, and 50, and feature availability varies by plan. Restpack advertises non-profit discounts of 25% for Startup, 40% for Business, and 50% for Enterprise. Confirm all figures on the live pricing page before budgeting.

Runnable ScreenshotNeo examples

These examples use the API documented at ScreenshotNeo’s developer documentation. Replace the key and target URL. The response body is the image or PDF; save it as a binary file.

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,
)
r.raise_for_status()
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}`);
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const body = Buffer.from(await res.arrayBuffer());
require('fs').writeFileSync('shot.webp', body);

For Restpack, use the parameter names and authentication shown in its current v7 documentation. Do not copy ScreenshotNeo’s endpoint or key name into a Restpack request; the two APIs have different request contracts.

Which service fits your workload?

Workload Best fit Reason
Marketing previews with consent banners and chat overlays ScreenshotNeo Cleanup runs before capture and can be configured step by step.
AI agent that needs screenshots and page metadata ScreenshotNeo MCP tools expose screenshots, page information, and PDFs.
Simple URL or HTML to image conversion Either Both document URL-based capture; Restpack also documents raw HTML input.
Very tall pages ScreenshotNeo, subject to your own output limits Restpack documents a 16,000-pixel full-page height limit.
Country-specific enterprise capture and S3/FTP delivery Restpack Those options are described on its enterprise page.
Lowest-cost trial ScreenshotNeo 1,000 shots are free without a card; paid plans start at $5.

Performance, reliability, and cost considerations

  • Rendering time: Dynamic pages need an explicit selector wait, delay, or network-idle condition. Restpack’s documented default includes two seconds after page load; ScreenshotNeo lets you choose the condition that matches the page.
  • Long pages: Full-page captures can consume more memory and take longer than viewport shots. Load lazy images only when the complete document is required.
  • Repeat requests: Choose a cache TTL for stable pages. With ScreenshotNeo, cache hits are identified and are not billed.
  • Concurrency: Restpack publishes parallel-conversion counts by plan. ScreenshotNeo supports asynchronous jobs, signed webhooks, and bulk requests of up to 100 URLs; size workers around your own queue and response-time needs.
  • Billing audits: Record ScreenshotNeo’s verdict and billed headers. For Restpack, track conversions and overage against the plan quota.
  • Security: Keep API keys server-side. Review custom headers, cookies, and authorization values before enabling logs or webhooks.

Troubleshooting checklist

On ScreenshotNeo, verify that the relevant cleanup step is enabled and that your page is not using a custom consent system outside the known platforms. Add a selector wait if the banner appears late. In Restpack, enable its documented cookie-warning or ad-blocking options and add a delay when the banner is injected after load.

The page is blank or shows a bot check

Check the returned verdict before retrying. A bot check, blank page, timeout, or failed load is not a successful clean capture. Reduce aggressive request blocking, provide required headers or cookies, and wait for the page’s main selector. ScreenshotNeo does not bill these failed categories.

Images are missing from a full-page shot

Lazy-loaded assets may require scrolling or a full-page mode that loads them. ScreenshotNeo’s full-page capture includes lazy-image loading. For either service, verify that image requests are not blocked by a resource-type or tracker rule.

The PDF layout is wrong

Set paper size, margins, and landscape mode explicitly in ScreenshotNeo. Use page ranges when only part of a document is needed. In Restpack, confirm the current PDF parameters in v7 documentation and remember that privacy mode cannot be combined with JSON mode.

The request times out

Use a realistic client timeout, then inspect whether the page depends on a slow third-party script. Prefer a selector or network-idle wait over an unnecessarily long fixed delay. Retry transient failures with exponential backoff, but avoid retry storms against the same URL.

FAQ

Is ScreenshotNeo cheaper than Restpack?

At the entry level, ScreenshotNeo has 1,000 free shots and a $5 plan for 3,000. Restpack’s Developer plan is $9.95 for 1,000 conversions. Larger workloads require comparing allowances, overages, concurrency, and the features your implementation actually uses.

Can both services capture one element?

Yes. ScreenshotNeo selects an element by CSS selector, and Restpack documents selected-page-element capture.

Can I send HTML instead of a URL?

Restpack documents URL and raw HTML input. ScreenshotNeo supports HTML/CSS to image as a feature; follow its current API documentation for the request shape.

Which API is better for AI agents?

ScreenshotNeo has a dedicated MCP server with take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients.

Or skip the browser setup

Use ScreenshotNeo’s one-call API when you do not want to maintain browser automation. Cookie banners, newsletter popups, and chat widgets are removed before the shot. Bot checks, blank pages, and failed loads are never billed. The MCP server lets AI agents take screenshots, and 1,000 screenshots per month are free with no card; paid plans start at $5 for 3,000. Start with the free ScreenshotNeo account.