Snapfleet
from $10/mo · or $99 forever

Self-hosted screenshot API. Unlimited renders. Pay once.

Urlbox charges $19/month for 2,000 renders. ScreenshotOne is $17/mo, ApiFlash $7/mo. But rendering a screenshot is just running headless Chromium — something your $5 VPS can do all day for free. Snapfleet is a self-hosted screenshot API with the same clean ergonomics as the paid ones: one endpoint, API keys, rate limits, caching. $99, once, unlimited renders.

Web app · self-hosted on your server
See it run

Snapfleet in 60 seconds

What you get

Everything in the box

One endpoint turns any URL into PNG, JPG or PDF — on your own server, $0 per render.

One endpoint, every option

GET /api/v1/screenshot?url=... returns PNG, JPG or PDF — viewport, full-page, delay, wait conditions, dark-mode emulation, JPEG quality and retina scale.

Element clipping

Pass a CSS selector and get just that element — perfect for og-images and social cards.

API keys built in

Named keys with per-key token-bucket rate limits and daily quotas, usage counters, revoke/regenerate.

Smart cache

Identical requests hit a SHA-256-keyed disk cache with HIT/MISS headers, default 24h TTL and per-request bypass.

Browser pool

One shared Chromium with configurable concurrency, request queue, 30s job timeouts and automatic relaunch if the browser crashes.

Playground UI

A dark admin panel with live preview of every parameter — copy the exact request URL or curl one-liner.

Internal targets

Screenshot localhost and internal dashboards — something no cloud API can reach (flip ALLOW_PRIVATE off for multi-tenant SSRF hygiene).

100% local

Your URLs and screenshots never leave your machine. Gallery, stats dashboard, no telemetry.

Side by side

Snapfleet vs Urlbox

Urlbox charges $19/mo. Here's what actually differs.

 SnapfleetUrlbox
Price$99 once$19/mo ($228/yr, forever)
Renders Unlimited — it's your CPU2,000/month
Your dataStays on your serverTheir cloud
PNG / JPG / PDF Yes Yes
Element clipping + dark mode Yes Yes
Internal / localhost targets Yes No
API keys + rate limits Yes Yes
Source codeMIT, on GitHub Closed

Just over 5 months of Urlbox pays for Snapfleet outright — $228/yr saved, unlimited renders forever.

Pricing

Pick how you pay

Subscriptions if you want them — but the whole point is the lifetime tier.

Monthly
$10/mo
Start monthly
Pay once, own it forever
Lifetime
$198$99once
50% off launch price — intro pricing, first 1,000 licenses
Never pay again
Own it — $99
Yearly
$100/yr
2 months free
Start yearly
Checkout by Whop · instant delivery · Urlbox costs $19/mo
How it works

Up and running in three steps

  1. Buy once on Whop

    One-time $99 for the packaged 1-click Windows installer with auto-updates — no terminal, no Docker knowledge needed.

  2. Run it anywhere

    Desktop app, npm start on a VPS, or docker compose up (the image ships Chromium preinstalled). Create an API key in the UI.

  3. Curl your first screenshot

    One GET request returns the PNG. Use the playground to dial in parameters and copy the exact curl command.

FAQ

Fair questions

Is it really free on GitHub?

Yes — MIT source at github.com/bensblueprints/snapfleet-mvp, always. $99 buys the 1-click installer and updates. From source it's npm i && npm start (heads-up: Puppeteer downloads ~170MB of Chromium on first install).

Is it as reliable as Urlbox?

Urlbox runs a global render fleet with retries and edge caching — for millions of renders a month at five nines, they earn their fee. Snapfleet is one pooled Chromium on your box with queueing, timeouts and crash recovery — for og-images, link previews, PDFs and internal tooling, that's honestly all you need.

What do people use it for?

Open-graph image generation, link previews, PDF invoices and receipts of web pages, visual monitoring, archiving, and thumbnails for directories — anywhere you'd otherwise pay per render.

Can it screenshot pages behind my firewall?

Yes — that's a headline feature. Because it runs on your infrastructure it can reach localhost and RFC1918 addresses (ALLOW_PRIVATE defaults to on). No cloud screenshot API can do that.

How does the cache work?

Requests are normalized (defaults applied first), hashed with SHA-256, and stored on disk with a TTL — identical requests return instantly with an X-Snapfleet-Cache: HIT header. Pass fresh=true or a per-request ttl to bypass it.

Stop renting. Own Snapfleet.

One endpoint turns any URL into PNG, JPG or PDF — on your own server, $0 per render.

Get Snapfleet — $99 forever

Everything about Snapfleet — every page we have on it

Compare & pricing

Guides

Try & tools

Source