API keys, rate limits and the free tier

How pdfrender access works: anonymous calls at a per-IP limit, API keys that raise it, credit-metered renders, and what each response header means.

Last updated

Anonymous 10 requests/minute per IP — no key needed
Free tier 100 renders/month, no card
Essential €20/month — 10,000 renders
Scale €80/month — 100,000 renders

Three escalating levels, no surprises:

  1. Anonymous — every render endpoint works without a key at a low per-IP rate limit (10/minute). Good for evaluation and one-off scripts.
  2. Free account — sign up, create a key in the dashboard, send it as X-API-Key. You get 100 renders a month and a higher per-minute budget.
  3. Subscription — Essential (€20/mo, 10,000 renders) or Scale (€80/mo, 100,000 renders). Credits reset each cycle; cancel anytime. There are no other SKUs and no top-up packs.

An invalid or missing key never errors — the call just runs anonymously. Every response carries X-RateLimit-* headers with your remaining budget; 429 means slow down, 402 means the month's credits are spent (the response includes an upgrade link).

Billing fairness

Metering is charge-on-success: a render that fails with a server error (including a 504 timeout) automatically refunds its credit. Client errors (4xx — oversized HTML, blocked external URLs) stay charged on keyed calls, so validate locally with the free tool while iterating on a template.

Try it free

Try it free — the free tier needs no card — or start with zero setup in the browser tool.

FAQ

Is there a free HTML-to-PDF API?
Yes. pdfrender renders 100 documents a month free with no card, and unauthenticated calls work at 10 requests per minute per IP with no account at all.
What happens if I send an invalid API key?
Nothing breaks — the call simply runs anonymously at the per-IP rate limit rather than returning an authentication error.
Do unused credits roll over?
No. Credits reset each billing cycle. There are only two paid SKUs, Essential at €20/month for 10,000 renders and Scale at €80/month for 100,000, with no top-up packs.
What is the difference between a 429 and a 402?
429 means the per-minute rate limit is exhausted and you should back off. 402 means the month's credits are spent; the response carries an upgrade link.