Products/Screenshots

Screenshot API

Capture any webpage as an image. Full browser rendering with ad blocking, dark mode, and device emulation.

$1.00 / 1,000 screenshots

const screenshot = await stack0.screenshots.captureAndWait({
url: 'https://example.com',
format: 'webp',
quality: 90,
width: 1200,
height: 630,
fullPage: true,
blockAds: true,
})
console.log(screenshot.imageUrl)
PNGJPEGWebPPDFDesktopMobile

Features

What's included

Multiple Output Formats

Export as PNG, JPEG, WebP, or PDF. Control quality and compression for your use case.

Full Page Capture

Capture the visible viewport, entire scrollable page, specific element, or custom region.

Device Emulation

Desktop, tablet, or mobile viewports with Retina support. Custom dimensions up to 4K.

Content Blocking

Remove ads, cookie banners, and chat widgets automatically for clean captures.

Dark Mode

Force dark mode rendering using prefers-color-scheme emulation.

Custom CSS & JS

Inject custom styles or JavaScript before capturing. Hide elements by selector.

Capabilities

Built for production

Wait Conditions

Wait for elements to appear, network idle, or a timeout before capturing.

waitForSelector: '.chart-loaded'

Click Before Capture

Click buttons to reveal content, expand sections, or trigger interactions.

clickSelector: '.expand-all'

Block Advertisements

Built-in ad blocking removes banner ads, popups, and ad network content.

blockAds: true

Block Cookie Banners

Auto-dismiss GDPR consent dialogs and cookie notices.

blockCookieBanners: true

Block Chat Widgets

Hide Intercom, Drift, Zendesk and other live chat popups.

blockChatWidgets: true

Batch Processing

Capture hundreds of URLs in parallel with shared configuration.

stack0.screenshots.batchAndWait({ urls, config })

Use cases

Built for real applications

og:image Generation

Generate social preview images for blog posts, product pages, and dynamic content.

Visual Regression Testing

Capture UI states before and after deployments. Integrate with CI/CD.

Link Preview Thumbnails

Show website previews for bookmarks, link aggregators, and content feeds.

Documentation Screenshots

Keep documentation in sync with live products. Auto-update on UI changes.

Website Archiving

Point-in-time snapshots for compliance, legal records, or research.

PDF Reports

Convert dashboards, reports, and data visualizations to print-ready PDFs.

Pricing

Simple, usage-based

Screenshots
$1.00/ 1,000 screenshots
All output formats included
Full browser rendering
Content blocking included
Device emulation
Batch processing & webhooks
Response caching
CDN delivery included
Get Started

Plans start at $5/month. No long-term contracts.

FAQ

Frequently asked questions

We use Chromium-based browsers with full JavaScript execution. This ensures accurate rendering of modern web apps, SPAs, and dynamic content.

Most screenshots complete in 1-3 seconds. Complex pages with heavy JavaScript may take longer. You can set custom timeouts and wait conditions.

Yes. You can pass cookies, headers, or use our session management to capture authenticated pages. Contact support for enterprise SSO integration.

We support viewports up to 3840x2160 (4K) with device scale factors up to 3x for high-DPI captures.

Specify a cache key and TTL to avoid redundant captures. Cached screenshots are served from our CDN for instant delivery.

Yes. Start a capture async and receive a webhook when complete. Perfect for background processing and CI/CD pipelines.

Ready to build?

Plans start at $5/month.

Start Capturing