Cogwork APIs

Free Website Screenshot Tool

Paste any URL, get a screenshot. No signup. Built on the ShotKit Screenshot API.

Want this in your own app?

One call returns a PNG. Free tier: 50/month — then $5/mo for 1,000, up to 60,000 on higher plans.

GET /screenshot?url=example.com&format=png
Get an API key →

ShotKit is a production-grade website screenshot API: one endpoint that renders any URL in real cloud Chrome and returns an image, with the caching, rate limiting, and uptime you'd otherwise have to build and maintain yourself. This free tool is the same engine, so the output you see here is identical to what your code receives.

How it works

Enter any public URL and ShotKit renders it in a real headless Chrome instance in the cloud, waiting for fonts, images, and lazy-loaded content to finish before capturing the page exactly as a visitor sees it. This tool is a thin wrapper around a single GET /screenshot request, so every option here — format, viewport, full-page, banner hiding — is available straight from your own code.

Example full-page website screenshot captured by ShotKit
Example output — a clean capture of any URL, rendered in real cloud Chrome.

Use cases

FAQ

Is the screenshot tool free?
Yes — free to use, no signup. The ShotKit API behind it has a free tier of 50 screenshots/month; paid plans start at $5/mo for 1,000 and scale to 60,000.
Which formats and sizes can I capture?
PNG, JPEG, or WebP at any viewport width and height, plus full-page capture with &full=true for the entire scroll height.
Can it dismiss cookie banners?
Yes. The API auto-hides common cookie/consent banners, and you can pass a CSS selector to hide any other element before capture.
How fast are captures?
Most return in 1–3 seconds, and results are cached on CloudFront so repeat requests for the same URL come back near-instantly.

API reference

Call it through RapidAPI. Base host: shotkit-website-screenshot.p.rapidapi.com. Send your key as X-RapidAPI-Key and the host as X-RapidAPI-Host.

GET/screenshot

Render any URL and return an image. By default it 302-redirects to the cached image; add json=true to get a JSON { url } instead.

ParamTypeDescription
urlrequiredstringAbsolute http(s) URL to capture. Internal/private hosts are blocked.
formatoptstringpng (default), jpeg, or webp.
fulloptbooleantrue captures the entire scrollable page (default false).
width / heightoptnumberViewport size in px (defaults 1280×800, max 2560).
delayoptnumberExtra ms to wait after load for late content (0–10000).
waitForoptstringA load event (load, networkidle0…) or a CSS selector to wait for.
hideCookieoptbooleanAuto-hide common cookie/consent banners before the shot.
hideoptstringComma-separated CSS selectors to hide before capture.
jsonoptbooleantrue{ url }; otherwise a 302 redirect to the image.

Returns a 302 redirect to the PNG/JPEG/WebP on the CDN, or { url, cached } when json=true.

curl -G "https://shotkit-website-screenshot.p.rapidapi.com/screenshot" \
  --data-urlencode "url=https://example.com" \
  -d "format=png" -d "full=true" -d "json=true" \
  -H "X-RapidAPI-Key: YOUR_KEY" \
  -H "X-RapidAPI-Host: shotkit-website-screenshot.p.rapidapi.com"