Screenshot API for Developers

The Screenshot API Built for Developers

Capture pixel-perfect webpage screenshots with a single API call. Full-page rendering, JavaScript execution, multiple formats — integrate in minutes with your existing stack.

No credit card required 100 free screenshots/month < 3s response time
capture.js
const params = new URLSearchParams({
  url: 'https://stripe.com',
  api_key: API_KEY,
  format: 'png',
  full_page: 'true',
  viewport_width: '1280'
});

const response = await fetch(
  `https://api.screenshotly.dev/v1/capture?${params}`
);

const screenshot = await response.blob();
stripe.com
Screenshot of stripe.com rendered by Screenshotly

What is Screenshotly?

Screenshotly is a cloud-based screenshot API that enables developers to capture high-quality webpage screenshots programmatically. The service supports multiple output formats including PNG, JPEG, and WebP, with configurable viewports, full-page capture, JavaScript rendering, and custom HTTP headers. Screenshotly provides a REST API and SDKs for JavaScript, Python, and PHP, making it straightforward to integrate automated screenshot capture into any application or workflow.

0 %

Uptime SLA

< 0 s

Avg Response

0

Output Formats

0 +

API Parameters

Features

Everything you need to capture the web

A complete screenshot API with the tools developers actually need — no bloat, no complexity, just reliable captures at scale.

High-Speed Rendering

Screenshotly delivers fully rendered screenshots in under 3 seconds using a distributed Chromium-based rendering engine with automatic load balancing.

Multiple Output Formats

Screenshotly supports PNG, JPEG, and WebP output formats with configurable quality and compression settings for each format type.

Full-Page Capture

Screenshotly captures entire webpages including below-the-fold content by scrolling and stitching the full document into a single screenshot.

JavaScript Rendering

Screenshotly executes JavaScript and waits for dynamic content, SPAs, and lazy-loaded elements to fully render before capturing the screenshot.

Custom Viewports

Screenshotly allows developers to specify custom viewport widths and heights, enabling screenshots at any screen resolution from mobile to ultrawide.

Cookie & Header Injection

Screenshotly supports custom HTTP headers and cookie injection, enabling screenshot capture of authenticated pages and content behind login walls.

Webhook Notifications

Screenshotly sends webhook callbacks when screenshots are ready, enabling asynchronous workflows and integration with event-driven architectures.

Screenshot Storage

Screenshotly stores captured screenshots with configurable retention periods, providing direct download URLs without additional storage infrastructure.

See it in action

From URL to screenshot in seconds

Send a URL, get back a pixel-perfect screenshot. Screenshotly handles JavaScript rendering, lazy-loaded content, and cookie banners automatically.

Standard Capture

GET /capture?url=https://www.forbes.com&format=png&viewport_width=1280
forbes.com
Screenshot of forbes.com captured via Screenshotly API

Rendered in 2.1s · 1280×800 · PNG · 342KB

Clean Capture

GET /capture?url=https://www.forbes.com&block_ads=true&block_cookie_banners=true
Before
Screenshot of forbes.com with cookie banner visible before clean capture
Cookie banner & ads detected
Clean capture
Clean screenshot of forbes.com with ads and cookie banners removed

Ads & cookie banners removed automatically

SDK & Integration

Integrate in any language

Screenshotly provides a REST API that works with every programming language. Use our official SDKs or make direct HTTP requests.

capture.js
const params = new URLSearchParams({
  url: 'https://example.com',
  api_key: process.env.SCREENSHOTLY_API_KEY,
  format: 'png',
  full_page: 'true',
  viewport_width: '1280'
});

const response = await fetch(
  `https://api.screenshotly.dev/v1/capture?${params}`
);

const screenshot = await response.blob();

Use Cases

Built for every screenshot workflow

From monitoring to compliance, developers use Screenshotly to automate visual capture across their entire stack.

Website Monitoring

Screenshotly enables automated visual monitoring of websites, detecting layout changes, downtime indicators, and unauthorized modifications through scheduled screenshot captures.

Social Media Previews

Generate dynamic Open Graph images and social media preview cards programmatically using Screenshotly to improve click-through rates on shared links.

PDF Generation

Convert web pages and HTML templates into high-quality visual documents by capturing full-page screenshots with configurable rendering settings.

Automated Testing

Integrate Screenshotly into CI/CD pipelines for visual regression testing, comparing screenshots across deployments to catch unintended UI changes.

Competitive Intelligence

Track competitor website changes, pricing updates, and feature launches by scheduling periodic screenshot captures with webhook notifications.

Compliance Archiving

Maintain timestamped visual records of web pages for regulatory compliance, legal documentation, and audit trails using automated capture and storage.

No-code integrations

Z

Zapier

Automate workflows

Soon
M

Make

Visual automation

Soon
n

n8n

Self-hosted workflows

Soon

Pricing

Start free, scale when ready

Transparent pricing with no hidden fees. Every plan includes full API access and all core features.

Monthly Yearly

Free

Explore the API with 100 free screenshots every month.

$0
Start Free
  • 100 screenshots/month
  • PNG format
  • Basic captures
  • 1-day retention
  • REST API access

Starter

For side projects and growing applications.

$29 /mo
Get Started
  • 5,000 screenshots/month
  • PNG, JPEG, WebP formats
  • Full-page captures
  • JavaScript rendering
  • 3-day retention
  • Email support
Most Popular

Pro

For teams and production workloads at scale.

$79 /mo
Get Started
  • 25,000 screenshots/month
  • Priority rendering
  • Custom resolution & quality
  • 30-day retention
  • Webhook notifications
  • Custom headers & cookies
  • Priority support

By subscribing, you agree to our Terms, Privacy Policy, and Refund Policy.

FAQ

Frequently asked questions

Everything you need to know about the Screenshotly screenshot API.

Screenshotly is a cloud-based screenshot API service that enables developers to capture high-quality webpage screenshots programmatically through a simple REST API. The service handles all browser infrastructure, rendering complexity, and image processing, so developers can focus on building their applications.

The Screenshotly API accepts an HTTP request with a target URL and configuration parameters such as viewport size, output format, and rendering options, then returns a fully rendered screenshot. Developers send a POST request to the capture endpoint with their API key and receive the screenshot as a direct download URL or binary response within 2-3 seconds.

Screenshotly supports three output formats: PNG for lossless quality, JPEG for smaller file sizes with configurable compression, and WebP for modern browsers with superior compression ratios. Each format supports configurable quality and resolution settings to optimize for specific use cases.

Screenshotly's rendering engine typically delivers screenshots within 2-3 seconds, including full JavaScript execution and dynamic content loading. The service uses a distributed infrastructure with automatic load balancing to maintain consistent performance regardless of capture volume.

Screenshotly supports full-page screenshot capture by scrolling through the entire document and stitching the result into a single image. This includes lazy-loaded content, infinite scroll elements, and below-the-fold sections that would not appear in a standard viewport capture.

Screenshotly uses a full Chromium-based rendering engine that executes JavaScript, processes AJAX requests, and waits for dynamic content to fully render before capturing. Developers can configure custom wait times and wait-for selectors to ensure single-page applications and complex web apps are captured correctly.

Screenshotly provides a REST API that works with any programming language capable of making HTTP requests, including JavaScript, Python, PHP, Ruby, Go, Java, and C#. Official SDKs are available for JavaScript and Python, with code examples provided for cURL, PHP, and additional languages in the documentation.

Screenshotly offers a free plan that includes 100 screenshots per month with core capture features and PNG output format. The free plan requires no credit card to sign up and provides full REST API access, making it suitable for testing, prototyping, and low-volume personal projects.

Screenshotly allows developers to inject custom cookies and HTTP headers into screenshot requests, enabling captures of authenticated pages, content behind login walls, and session-specific views. This feature is available on Starter and Pro plans and supports both single cookies and full cookie jar configurations.

Screenshotly maintains a 99.9% uptime service level agreement backed by globally distributed infrastructure with automatic failover, health monitoring, and load balancing across multiple availability zones. Current uptime status and historical performance data are available on the status page.

Still have questions? Contact support

Ready to start capturing?

Get started with 100 free screenshots every month. No credit card required, no time limit — start building today.

Questions? Reach us at support@screenshotly.dev