# Turn Notion database items into designed PDFs Notion database to PDF, automatically. Turn each item into a branded invoice, proposal or report PDF with Zapier, Make or n8n, no manual exports. **Quick answer.** When you add or update an item in a Notion database, Zapier, Make or n8n reads its properties. They go into a template, html-pdf.com turns it into a PDF, and the link or file goes back to Notion, your inbox or Google Drive. ## What you'll build Many teams run clients, projects and invoices in Notion. Notion's own export gives you a plain copy of a page. This setup gives you a designed document instead. For example, you set an invoice item's **Status** to "Send". A minute later a branded invoice PDF exists with the client's name, the line items and the total, and its link sits in a **PDF** property on the same Notion item. ## What you need - **A Notion database** with the fields you want on the document (client, amount, date and so on). - **Zapier, Make or n8n**, connected to your Notion workspace. Share the database with the integration in Notion's **Connections** menu. - **A design.** Pick the [invoice](https://html-pdf.com/templates/invoice), [proposal](https://html-pdf.com/templates/proposal) or [report](https://html-pdf.com/templates/report) template. The template is a web page design that we turn into a PDF, so you only swap in your fields. - **An API key** from [html-pdf.com](https://html-pdf.com/login). New accounts get 100 free pages once, with no card. ## Step by step with Zapier 1. **Trigger.** Create a Zap with **Notion** and the event **Updated Properties in Data Source Item**. Notion now calls databases "data sources" in Zapier. Pick your database. 2. **Filter.** Add **Filter by Zapier** so the Zap continues only when Status is "Send". 3. **Make the PDF.** Add **Webhooks by Zapier → Custom Request**. Method `POST`, URL `https://html-pdf.com/v1/pdf`, headers `Authorization` (`Bearer hp_live_...`) and `Content-Type` (`application/json`). 4. **Data.** Paste the JSON below and map Notion properties into it. 5. **Save the result.** Add **Notion → Update Data Source Item** to write the `url` into a URL property, or **Google Drive → Upload File** to keep the PDF. ```json { "html": "

Invoice INV-031

Client: Blue Harbor Inc

Total: 2,400 USD

", "format": "A4", "margin": "15mm", "filename": "INV-031.pdf", "response": "url" } ``` The link lasts 24 hours, so upload the file somewhere permanent if you need it later. See the [Zapier guide](https://html-pdf.com/guides/zapier) for details. ## Step by step with Make 1. Add **Notion → Watch Data Source Items** and choose your database. 2. Add a **Filter** on the route for the status you want. 3. Add **HTTP → Make a request** with URL `https://html-pdf.com/v1/pdf`, method `POST`, an `Authorization` header and a JSON body. Set **Parse response** to Yes when you use `"response": "url"`. 4. Add **Notion → Update a Data Source Item** to write the PDF link back. The [Make guide](https://html-pdf.com/guides/make) shows the HTTP module settings, and the [n8n guide](https://html-pdf.com/guides/n8n) covers the same flow with the **Notion Trigger** and **HTTP Request** nodes. ## Code path for developers You can also read the item with the Notion API and render it yourself. ```js import { Client } from "@notionhq/client"; const notion = new Client({ auth: process.env.NOTION_TOKEN }); const page = await notion.pages.retrieve({ page_id: pageId }); const p = page.properties; const client = p.Client.title[0].plain_text; const total = p.Total.number; const r = await fetch("https://html-pdf.com/v1/pdf", { method: "POST", headers: { Authorization: `Bearer ${process.env.HTML_PDF_KEY}`, "Content-Type": "application/json" }, body: JSON.stringify({ html: `

Invoice

${client}

Total ${total} USD

`, response: "url" }), }); const { url } = await r.json(); ``` Property names like `Client` and `Total` must match your database columns. ## Ask your AI agent With the [html-pdf.com MCP server](https://html-pdf.com/pdf-mcp-server) and a Notion connector in Claude or ChatGPT, an agent can do this on request. > Read the "Q3 Client Report" page in Notion and use html-pdf to turn it into a clean A4 PDF report with a cover page, our brand color #1F4FD8 and page numbers in the footer. This is handy for one off documents. For every item, use the automation above. See the [Claude guide](https://html-pdf.com/guides/claude) and [ChatGPT guide](https://html-pdf.com/guides/chatgpt) for setup. ## Notion export or this? Notion's built in **Export → PDF** is quick for a single page and keeps Notion's look. Use an automation when you want your own design, need it for every item, or want the PDF created without anyone clicking. ## FAQ ### Can I convert a Notion database to PDF for free? Notion's export is free for single pages. For automatic, designed PDFs, html-pdf.com gives 100 free pages once, and Zapier, Make and n8n all have free tiers with limits. ### Can I include the page content, not just properties? Yes. Properties come with the trigger. For the text blocks inside the page, add a step that fetches the page's block children and turn them into HTML. ### Can the PDF link go back into Notion? Yes. Write the `url` into a URL property. Remember it expires after 24 hours, so upload the file to Drive or a Files property for a permanent copy. ### How much does it cost? One credit per PDF page. After the free credits, packs start at $10 for 1,000 pages, and purchased credits never expire.