Convert anything web-shaped into a PDF
Every converter here runs the same engine the API does — current headless Chromium, with WeasyPrint as a second path for document-shaped HTML. What you see in the browser is what a request returns, so these pages double as a way to test output before writing any code.
All of them are free to use without an account, five documents a day. An API key raises that to fifty a month at no cost and removes the small footer line.
HTML to PDF
Paste HTML, get a PDF rendered by headless Chromium — the same engine your browser uses, so CSS, web fonts …
Open converter →URL to PDF
Give it a URL and get the rendered page as a PDF. The page is loaded in a real browser, …
Open converter →What goes in, what comes out
| Converter | Input | Handles | Typical use |
|---|---|---|---|
| HTML to PDF | Markup you paste or send | Full CSS, web fonts, page breaks, headers and footers | Invoices, reports, anything you generate |
| URL to PDF | A public web address | JavaScript runs; waits for the network to settle | Dashboards, articles, live reports |
| Template to PDF | A template id plus JSON | Forty ready documents, fields filled from data | Invoices, receipts, certificates, contracts |
Which one do I need?
If the content is something your system produces — an invoice, a statement, a report — send HTML. You control the markup, nothing has to be publicly reachable, and rendering is fastest.
If the content already exists as a page — a dashboard, a published article, a report behind a signed link — send the URL. The renderer loads it in a real browser, so client-side charts and framework-rendered sections appear.
If the document is a standard business form, start from a template. Forty of them cover invoices, quotes, receipts, pay stubs, timesheets, NDAs, certificates and tickets; you send JSON and the layout is done.
What decides the quality of the output
The rendering engine. Most complaints about PDF quality are complaints about an old engine. Tools built on archived WebKit forks — wkhtmltopdf being the common one — silently drop CSS that browsers have supported for years.
Timing. A renderer that starts before fonts and scripts finish produces a document that is technically valid and visually wrong. Waiting for the network to settle costs a few hundred milliseconds and eliminates a whole class of bug reports.
Print styles. A page designed for scrolling needs an @media print block to become a document: navigation hidden, backgrounds kept, page breaks controlled. The four properties that matter take ten minutes to add and fix most layout complaints.
From the browser to your code
Anything these converters do, one HTTP request does:
curl -X POST https://pdfgeny.com/api/v1/render \
-H "Authorization: Bearer $PDFGENY_KEY" \
-H "Content-Type: application/json" \
-d '{"html":"<h1>Invoice</h1>","format":"A4"}' \
--output invoice.pdf
Swap html for url to convert a page, or for template plus data to fill one of the forty templates. The free plan covers 50 documents a month.
Formats and options
Page sizes A3 through Tabloid, or exact dimensions with width and height for tickets, labels and social images. Margins per side, landscape, scale between 0.1 and 2, headers and footers with page numbers, and PDF/A-2b output for archives.
Full list in the API reference; the specification is machine-readable at /api/v1/openapi.json.
Questions
Is there a file size limit?
HTML payloads up to 2 MB and rendered documents up to 25 MB. If your HTML is over 2 MB it almost always contains an inlined image — link it instead.
Do the converters store my document?
No. Content submitted through these pages is rendered in memory and returned; nothing is written to disk. Through the API, documents are stored only if you ask, and then for seven days.
Can I convert a page that requires a login?
Only if the URL carries its own authentication, such as a signed token. The renderer has no session of its own and we never ask for your credentials.
Why does my PDF look different from my browser's print preview?
Six differences explain nearly all cases — print media emulation, background graphics, page size, margins, viewport width and timing. They are listed here.
What about converting PDF back to HTML or Word?
We do not do that. PDFGeny generates documents; it does not parse or edit existing ones. For extraction, look at pdfplumber or pdf.js.
Moving off an older tool? The comparison pages cover wkhtmltopdf, WeasyPrint and Puppeteer, including when staying put is the right call.