Guide

How to generate PDFs in n8n

You have the data in your workflow — an order, a form submission, a database row — and you need a finished document: an invoice, a certificate, a report. n8n has no built-in node for that. Here are the three real ways to do it, when each one fits, and the fastest path to a working PDF.

Does n8n have a built-in PDF node?

Short answer: no. As of 2026 the n8n core palette has no node that turns HTML or template data into a PDF. You have three options instead — run your own headless Chrome, call a general document API, or install a focused community node. They trade off differently on setup, cost, and how much they do.

The three ways to generate a PDF in n8n

  • Self-host Chrome / Puppeteer. A Code node or a community Puppeteer node drives a headless browser you run yourself. No per-document cost — but you install, patch, and babysit Chrome, and you absorb the cold starts and memory spikes.
  • A general document API (PDF4me, PDF.co, PDFGeneratorAPI and similar). Broad toolboxes — conversions, merge/split, OCR — reached over a hosted API, usually priced in metered credits or per-call packs. Powerful when you need the extra operations; more to reason about when you just want a document out. See the sourced comparisons for the specifics.
  • A focused PDF node (pdfmill’s Generate PDF). A template or your HTML goes in, a finished PDF or PNG comes back — flat monthly pricing, no Chrome to host, and it does one job rather than fifty.

Which is right depends on the workflow. Already run infrastructure, want zero per-document cost, and don’t mind maintenance? Self-host. Need OCR, conversions, or merge/split as well as generation? A broad API earns its keep. Just need branded documents out of a workflow on predictable pricing? A focused node is the shortest path — and the rest of this guide walks it.

The fastest path: the Generate PDF node

Install the community node — in n8n, Settings → Community Nodes → Install:

community node
n8n-nodes-generate-pdf

Add a pdfmill API credential (your pk_live_… key), then drop a Generate PDF node into a workflow. It has two operations:

  • Generate from Template — pick a built-in starter (invoice, certificate, report, quote, packing slip) and map your workflow data with {{ $json }}.
  • Generate from HTML — pass your own markup for full control of the layout.

Either way the node outputs the document as a binary on the data property (plus a small JSON summary — pages, bytes, requestId). Wire a Gmail or Google Drive node after it to email or store the file. The full step-by-step, with sample invoice data, is the five-minute quickstart.

Common patterns

  • Invoice PDF from an order. Stripe / webhook → Set (shape the data) → Generate PDF (Invoice) → Gmail (attach the data binary).
  • Certificate from a form submission. Form trigger → Generate PDF (Certificate) → Google Drive.
  • Report from a database. Postgres / Google Sheets → aggregate → Generate PDF (Report) → send or archive.
  • A PNG instead of a PDF. Set the format to PNG for social cards, thumbnails, or previews — same node, same data.

What it costs

pdfmill is flat-priced: a permanent Free tier of 75 documents a month (no card), then $9/500, $19/2,000, and $49/10,000 per month. One document is one count regardless of page length, and the plan is a hard cap — at the limit you get a clear upgrade prompt, never a silent overage or a surprise invoice. Current numbers live on the pricing page. (Self-hosting Chrome is “free” but paid in maintenance; document APIs meter per call — the comparisons carry the sourced, dated specifics rather than numbers that go stale here.)

FAQ

Does n8n have a built-in PDF node?

No. As of 2026 the n8n core palette has no node that turns HTML or template data into a PDF. You either run your own headless Chrome (via the Code node or a community Puppeteer node), call a general document API, or install a focused community node such as Generate PDF (pdfmill).

Can I generate a PDF in n8n without hosting Chrome?

Yes. A hosted node or API renders the PDF on its own servers and returns the finished binary to your workflow, so you never run or patch a headless Chrome yourself. pdfmill’s Generate PDF node works this way.

How do I email a generated PDF from n8n?

The Generate PDF node outputs the document as a binary on an output property (for example "data"). Add a Gmail, SMTP, or Outlook node after it and use that binary property as the attachment.

Is there a free way to make PDFs in n8n?

Two: self-host a headless Chrome (free to run, but you maintain it), or use a hosted node with a free tier — pdfmill’s Free plan renders 75 documents a month with no card.

Can I convert HTML to PDF in n8n?

Yes. The Generate PDF node has a Generate from HTML operation — pass your own HTML markup and it returns a PDF or PNG. Use Generate from Template instead when you want a ready-made starter (invoice, certificate, report) and only supply the data.

Options and prices change — checked July 27, 2026. This guide links the comparison pages for competitor specifics rather than repeating numbers that go stale.

See for yourself

Render your first PDF from an n8n workflow in about five minutes — the Free plan is 75 documents a month, no card required.