Pricing

Start free. Pay for volume.

Every plan includes the full render API, templates, render logs, webhooks, and MCP access for AI agents. Prices in USD, billed monthly.

Hobby

$0/month

  • 100 PDFs per month
  • 8 AI template drafts included
  • API keys, templates, and render logs
  • No credit card required
Get started

Indie

$19/month

  • 3,000 PDFs per month
  • 30 AI template drafts included
  • Metered overage past the limit
  • Webhooks and signed delivery URLs
Get started

Pro

$79/month

  • 15,000 PDFs per month
  • 120 AI template drafts included
  • Metered PDF and AI overage
  • Everything in Indie
Get started

Business

$299/month

  • 80,000 PDFs per month
  • 500 AI template drafts included
  • Metered PDF and AI overage
  • Everything in Pro
Get started

Enterprise

Custom

  • Custom monthly volume
  • 5,000 AI template drafts included
  • Custom contracts and support
Get started

How credits work. One credit renders a PDF of up to 50 pages; longer documents use one additional credit per 50 pages, up to 200 pages per PDF. Hobby is hard-capped; paid plans can enable metered overage so batch jobs never fail at the end of the month.

AI template drafts. Every plan includes AI drafts for generating and repairing templates. Past the included allotment, drafts are billed per use: $0.40 on Indie, $0.30 on Pro, $0.25 on Business, and $0.20 on Enterprise.

Questions, answered.

Is there a free plan?

Yes. Hobby includes 100 PDFs and 8 AI template drafts per month, with no credit card required. It is hard-capped — past the limit, renders pause until the next period or an upgrade.

How is Leafwright different from running Puppeteer myself?

Puppeteer needs Chromium, and Chromium doesn't fit serverless: ~170 MB of browser against a 250 MB function limit, slow cold starts, memory spikes, and missing fonts. Leafwright runs the browser engine on its own rendering infrastructure — your function makes one API call and stays small.

How does rendering work?

POST HTML, a public URL, or a published template plus JSON data to the render API. You get back a signed download URL, metadata, or raw bytes. Every render is a tracked job with readable logs, retries, and optional webhooks.

Can AI agents and assistants use Leafwright?

Yes. Leafwright runs a remote MCP server with OAuth 2.1 that works as a claude.ai custom connector, plus a local @leafwright/mcp package for Claude Code, Cursor, and Codex. Agents can render PDFs, draft templates, and repair failed layouts from render logs.

What HTML is supported?

Full documents with inline CSS and data-URI images, up to 250 KB of HTML, 120 KB of CSS, and 200 pages per PDF. Scripts, iframes, external assets, and inline SVG are rejected by validation before rendering. To capture a public page with its remote assets, use the URL source type, which fetches behind SSRF protections.

What happens when I hit my monthly limit?

Hobby stops rendering until the next period. Paid plans can enable metered overage, billed per additional PDF through Stripe, so batch jobs never fail at the end of the month.

Where do my documents live?

Rendered PDFs are delivered through time-limited signed URLs. Projects can also bring their own storage — Amazon S3 via an assumed role (no long-lived keys) or Google Cloud Storage — so documents land directly in your bucket.

Do templates support dynamic data?

Yes. Templates use Handlebars placeholders rendered with per-request JSON, and brand kit variables (logo, colors, footer) are injected automatically so every export stays on-brand.