Real Chromium under the hood, not a template engine

Markup in. PDF out.

Convert HTML and CSS to print-ready PDFs from the browser editor or a single authenticated API call. Plan-based rate limits, revocable credentials, built for pipelines - not wizards.

$ curl -X POST api/convert -d '{"html":"..."}'

invoice.pdf
statusconverted
report.pdf
statusstyled
output.pdf
statusready

Every run set to the same standard

Everything you need to ship PDF generation, nothing you have to configure

Run 01

Real HTML & CSS

Flexbox, Grid, custom fonts - whatever renders in Chromium renders in your PDF.

Run 02

Plan-based rate limits

Each API client is capped per your plan - no surprise throttling, no shared queue.

Run 03

Revocable credentials

Client ID + secret pairs, hashed at rest, revoked in one click from the dashboard.

Run 04

Format & margin control

A4, Letter, Legal, orientation, per-side margins - same options in the editor and the API.

Run 05

One endpoint, any language

POST html, get PDF bytes back. No SDK required - HTTP Basic auth over a single route.

Run 06

No lingering files

Documents render and stream back - nothing sits on disk after the response.

Built for builders

No wizard, no template DSL. Authenticate with a client ID and secret, POST your markup, get PDF bytes back. Automate it in your pipeline exactly like this.

Read the API docs
zsh
$ curl -u $CLIENT_ID:$CLIENT_SECRET \
-X POST https://renderpdf.vercel.app/api/convert \
-d '{"html":"<h1>invoice</h1>","options":{"format":"A4"}}' \
-o output.pdf
> 200 OK · application/pdf
0M+
PDFs Generated
0%
Uptime
< 2s
Avg. Speed
Free
To Start

Your first run is on us

Free editor, no signup. API access takes one client credential pair.

Start the press