Screenshot API pricing One credit per screenshot.
A cache hit costs nothing, and a request rejected before the browser starts costs nothing.
Free
Enough to build against and decide.
Free
100 screenshots a month
- 1 concurrent render
- Up to 15 s per render
- Cache up to 1 hour
- PNG, JPEG and WebP
- Custom CSS
- Signed URLs for embedding
Startup
For a side project or a product finding its feet.
$9 / month excl. tax
$90 / year excl. tax
1,000 screenshots a month
$0.009 each
$7.50 a month, billed yearly
- 5 concurrent renders
- Up to 30 s per render
- Cache up to 24 hours
- PNG, JPEG and WebP
- Custom CSS and JavaScript
- Signed URLs for embedding
GrowthRecommended
For steady volume and bursts of captures at once.
$29 / month excl. tax
$290 / year excl. tax
10,000 screenshots a month
$0.0029 each
$24.17 a month, billed yearly
- 20 concurrent renders
- Up to 30 s per render
- Cache up to 24 hours
- PNG, JPEG and WebP
- Custom CSS and JavaScript
- Signed URLs for embedding
Scale
For high volume and pages that load many captures together.
$149 / month excl. tax
$1,490 / year excl. tax
100,000 screenshots a month
$0.0015 each
$124.17 a month, billed yearly
- 50 concurrent renders
- Up to 30 s per render
- Cache up to 24 hours
- PNG, JPEG and WebP
- Custom CSS and JavaScript
- Signed URLs for embedding
Prices exclude VAT and sales tax, which are added at checkout where your country requires them.
More than 100,000 a month?
Or requirements the published plans do not cover — throughput, retention, or terms.
Start free, upgrade when ready
No card needed for the free plan. When you need more, upgrade from the Billing page of your dashboard. Cancel at any time; any payment is refundable within 14 days under the refund policy.
What counts as a screenshot.
- A render costs one credit
- Including a render that reaches the browser and then fails, because the work was done either way.
- A cache hit costs nothing
- Caching is opt in, per request, with
cache_ttl. - A rejected request costs nothing
- A bad parameter, an invalid key or a limit reached is refused before any browser starts.
- Credits reset each billing period
- Unused credits do not carry over. Every response reports what it cost in
X-Urlshot-Credits-Used.
The API reference lists every option and the exact bounds each plan applies.