Tutorials

How to Create PDF Reports from a Notion CRM

Learn how to create pdf reports from a Notion CRM.

By Sanat Biswal · 2026-07-13 · 15 min read

How to Create PDF Reports from a Notion CRM

Using Notion for a while makes you see how powerful the tool is, it quickly becomes one single source of information storehouse which houses the deals, contracts, notes etc all living under one connected system.

But managing the data in Notion is just one part of the equation, what truly becomes a challenge afterwards is sharing the data in the form of a PDF to external stakeholders such as Clients, Suppliers etc.

Notion's native export functionality is not well equipped to handle the reporting efficiently.

It doesn't help with the formatting and creates issues for the following:

  • Tables don't work well as expected.
  • Database views are not exported as expected.
  • What usually happens here is using a manual process which involves creating the exact report in a Google Document or a Word File and then exporting the PDF after that.

    This is a manual process and doesn't scale with time when there are dozens of reports to export at once.

    Today's guide will walk you through the exact steps necessary to convert your Notion CRM into a professional, on-brand looking PDF reports, with an automation tool called PDFOutput.

    !PDFOutput - Document automation for Notion, built for scale


    The Hidden Cost of Manual Export

    There's always an instinct to just export for one document and keep repeating the process again and again opening a blank document and adding all the fields required manually one by one.

    This approach just works well for one time but when there's more documents to generate at a time it always fails as there is no automation in place to generate PDFs that repeat everytime.

    Overtime, when the CRM starts to grow and becomes difficult to manage when its scaling, manual export becomes a huge bottleneck with speed, accuracy and efficiency with time involved.


    Why Notion's Native Export Doesn't Help

    If you have ever tried to use the notion's native export present in the ••• menu on any page, you will face problem when there's more documents to export at once.

    The problems always start to happen when there are a lot of things involved such as:

  • A Database view being used
  • A table pulled from a related record being used
  • A rollup field being used
  • While using boards and timelines they completely lose their formatting and shape
  • Amidst all of the above, there's no way to add logo, brand colors or even a proper layout which can match the exact layout requirements for export.

    This truly means that the default notion native export solution is not meant to export the PDFs. What we need here is a solution which can replace these default issues and generate a PDF with the right formatting!


    What Are Key Traits of a Real Report Compared to a Screenshot

    A proper report always shows the following traits while generating the PDFs:

  • A layout which can repeat always: Every report of the same type used looks always looks structurally identical in use, regardless of how the deal is setup or what account is being used.
  • Proper branding integrated into the document: A real report always emphasizes on the right form of branding integrated into the output, with proper logo, fonts, and colors that match everything else the client wants to see in the output.
  • No empty databases are left out in the document: A real report doesn't leave any raw timestamps, any empty relation fields in the database or with any placeholder text left behind in the document.
  • Correct Report Generated at a glance: A reviewer looking at the document must be able to tell if its correct or not without checking it against any CRM in itself.
  • Looking at the report it must become obvious with its use case rather than against the database to verify the values.


    How to Fix the Export Issue of Notion Database

    What is required in here is not looking for a better exporting option for the Notion Database to PDFs, its rather choosing a right template design which can export the Notion Page as it renders on the Notion Page.

    The template is created independently using Google Document or Word File or PDF File and the Notion's CRM data replaces the placeholders used to generate the PDF as expected.

    This is the approach we will take with a tool like PDFOutput.

    Templates in PDFOutput can be built with:

  • A Notion page or
  • A Google Document or
  • A Microsoft Word file or
  • A PDF file
  • Inside the template, we will mark the fields with placeholders such as — {{Proposal Title}}, {{Proposal ID}}, {{Company Name}} etc which are written to match the database property values exactly.

    When the automation is setup and it runs, it walks through each row in the CRM, matches every placeholder to its property name, and outputs a finished PDF every row, styled exactly as designed in the template, with none of Notion's editor left in the output.

    As the template doesn't lives inside of Notion, none of Notion's formatting limitations apply to the template as such, which means:

  • fonts stay the same,
  • logos match the styling,
  • tables expand automatically when the deal has more activities
  • Thus the output visually matches the template the exact same way as its created originally and the placeholder gets replaced being mapped with the database values.


    Step by step guide on how to create PDF Reports from Notion CRM

    Step : 1 Connecting the Notion Database for the automation

    Before we even start building any template for the automation, the CRM structure needs to actually support one setup.

    In this guide, we are going to go through a Sales Reports Database and discuss how it can be automated with the use of 2 connected databases together:

    1. DB_Sales Proposal (Primary Database)

    !DB_Sales Proposal - Primary Database showing Proposal IDs, Company Names, Client Emails, Industry, and Description fields

    This database is the primary database and will contain the following properties in the DB_SalesProposal:

    PropertyUsed For
    Proposal ID (Title Property)Specifying the Proposal ID
    Company Name (Text Property)Displays the Company Name
    Client Email (Email Property)Displays the Client Email
    Industry (Text Property)Displays the Industry Name
    Description (Text Property)Displays the Description of the Project
    Due Date (Date Property)Displays the Due Date of the Proposal
    Proposal Title (Text Property)Displays the proposal text
    Payment Terms (Text Property)Displays the payment terms of the proposal
    Status (Status Property)Displays the status of the proposal
    Sales rep Name (Text Property)Displays the sales rep name
    Created Date (Date Property)Displays the date of creation
    Expiry Date (Date Property)Displays the expiry date of the proposal
    Services (Relation Property linked to DB_Services Proposal)Displays the services proposals from the DB_Services Proposals Database
    Proposal Value (Rollup of Services Amount from DB_Services Proposal)Displays the services amount rolled up from the DB_Services Proposals Database

    2. DB_Service Proposal (Connected Database)

    !DB_Service Proposal - Connected Database showing Services, Sales Proposal Database relation, Hours, Rate, and Total Amount fields

    This database is the connected database connected to DB_Sales Proposal and holds the services offered for the Sales Proposals database.

    Eg : A sales proposal may have 3 different services rendered as part of the proposal, such as PROP-2025-001 may have the services named Service 1, Service 2 and Service 3 rendered against the proposal.

    The DB_Service Proposal would show the Services rendered along with their Qty, Rate and Amount values.

    Here's how the database is structured for our reference:

    DescriptionUsed For
    Services (Title Property)Defines the Services Rendered
    Sales Proposals Database (Relation Property)Connected to DB_Sales Proposal showing the sales proposals values
    Hours (Number Type)Defines the Hours of Services Rendered
    Rate (Number Type)Defines the Rate of Charge for Services Rendered
    Total Amount (Formula Type)Defines the Total Amount of Service Rendered = Hours * Rate
    > Note: All the databases used here are for the demonstration purpose only. You can connect your own databases which has relevant properties and connect all the databases together to setup the Sales Reports workflow.

    Two things are really important more than people expect to be:

  • First, property names used need to be the exact and consistent names used, eg "Proposal Value" and "proposal value " with a trailing space in the end aren't the same. Thus the 2 names will be mapped to 2 different placeholders and would fail to replace the values as expected.
  • Second, for any relation and rollup type properties being used, make sure the relational databases used are also connected with PDFOutput. The automation can pull data across connected databases, only when the databases being used are connected with PDFOutput connection being used.

  • Step : 2 Preparing the Template File

    !PDFOutput template upload options - Add Notion Pages, Select Google Document, Upload Word File, or Upload PDF File

    Once the database is setup and connected, its time to build the template in whichever format that would actually fit the style of the report:

  • A Notion page is always the fastest option available if the team already knows how to work with the Notion Pages.
  • A Google Doc or Word file always gives more traditional formatting control over the document being used, its always a better fit for anything that is text-heavy but needs a proper branding to be placed, such as an account summary or a even a quarterly business review.
  • A PDF file works well when there's already a fixed layout to be used in the background, just like a letterhead, that needs to be reused multiple times.
  • Choose your medium of template accordingly.

    Make sure that every field used in the document gets wrapped inside double curly braces, eg {{Proposal Value}}, {{Proposal ID}}, {{Company Name}}, {{Client Email}} etc. Along with this the remaining document gets designed the way its meant to be and created with how the finished report is expected to look like: including the headings used, tables used, logo (if applicable) etc.

    For this demonstration, we will use a template file already added onto PDFOutput, i.e. Sales Reports.

    !Sales Proposal template available in PDFOutput Templates page with professional layout and branding


    Step : 3 Setup PDFOutput Automation

    This is the final step where we connect both the Notion Database (Step - 1) and the Template File (Step - 2) used earlier.

    We have a detailed guide written on how to use PDFOutput and automate pdf generation in Notion.

    Make sure to first go through the above guide and setup the PDFOutput automation referring to the guide with the steps mentioned therein.

    Before setting up the automation, make sure to use the Preview Document feature and create the document preview using all the placeholders available and then use the Setup Automation to setup the PDFOutput automation.

    !Preview Document showing the Sales Proposal PDF with placeholders replaced and Setup Automation button highlighted

    As the PDFOutput automation is setup correctly, an active automation shows in the PDFOutput dashboard, which means its time to start generating the PDFs!

    !PDFOutput Automation Dashboard showing the Sales Proposal automation with Active status


    Additional Settings For PDF Automation

    With the automation setup and running live, its time to configure few additional settings for the automation tool.

    A few settings worth looking into before running this at any scale:

  • Google Drive Folder - PDFs saved onto a Google Drive folder can be defined here.
  • PDF Files Name - Choose a column name which should be used to name the PDFs.
  • Overwrite Existing Files - If this is toggled on, the PDF files are overwritten when its generated.
  • Google Drive File Link - Choose the column where the Google Drive File Links are saved.
  • PDF Attachment Field - Choose the column where the PDF files will be attached.
  • E-Signature - Toggle on to allow adding e-signatures to the pdf files generated.
  • Also additionally we can define the Timezone, Decimal Places and Number Style of the number formatting used in the document.

    !PDFOutput Settings modal showing Timezone, Decimal Places, and Number Style configuration options


    Create PDF Reports Inside Notion Database

    While setting up the automation, once a preview document is generated, its time to start generating the PDFs right inside the Notion Database.

    Click on the GeneratePDF property and mark your record as Ready to Generate, this will trigger the generation of the PDF and create the PDF directly inside the Notion Database.

    !Sales Proposals Database showing GeneratePDF property with Ready to Generate and Completed statuses

    In order to generate the PDF, make sure to click on the GeneratePDF property and set your record as Ready to Generate, this will initiate the process of generating the PDF and once the processing is complete, the PDF will be generated in the database under the PDFFiles column.

    !Sales Proposals Database showing all records with Completed status and PDF files generated in the PDFFiles column

    So just keep adding records into the Sales Proposal Database and mark your record as Ready to Generate, it will automatically start generating the PDFs in the PDFFiles column.

    Besides this, following are the additional properties which are important to understand:

  • PDFFiles - This is where the final generated PDF is stored.
  • google_drive_file - This is where the google drive folder link is updated once its enabled
  • Choose Document - This is where a document is selected as the template source which is used to generate the PDF.
  • Thus from hereon, generating a report is just changing the property "GeneratePDF" to "Ready to Generate".

    The automation automatically matches every placeholder used in the template to the value in the database and creates the finished PDF straight into the database record. It then automatically changes the property status to Completed once the PDF is generated.

    If you are looking to create 2 different reports, one for internal purpose and another for client side use case, just create 2 different automations for the purpose and choose the document as required to generate the PDF.


    How to Produce Batches of PDFs at once

    For anything beyond a single PDF report, PDFOutput also supports producing PDFs in batches, i.e. it can generate upto 100 PDFs at once in one single click of a button.

    !PDFOutput Automation Dashboard showing the Batch PDFs option in the automation menu

    This is the powerful feature of PDFOutput wherein clicking on Batch PDFs starts producing PDFs in batches of 100 records at once.

    So if you have a lot of reports to be generated in one go, this is highly useful feature to help you achieve the same.


    Who Actually Needs the PDFOutput Automation to Generate PDFs

    PDF automation is crucial for many use cases, such as:

  • Sales teams who are looking to produce pipeline or deal-level reports for leadership without opening a single document by hand.
  • Account managers who are looking to send clients a quarterly business review pulled directly from live deal and activity records in Notion.
  • Founders who are assembling investor updates off a Notion CRM that's already tracking their revenue and pipeline.
  • Agencies sending a monthly status report that typically reflects exactly what's logged in for that client that particular month.
  • Customer success teams who are issuing renewal or account-health reports that are tied straight to CRM records etc.

  • Key Considerations for Using Templates Correctly

    A few recurring mistakes that generally accounts for most failed automations includes:

  • Placeholder names that almost match the property name but not exactly as expected ( includes capitalization). Eg: {{Proposal Value}} and {{proposal_value}} are not the same fields being used.
  • One template forced to serve two purposes - When one template is used for a pipeline summary and also a client report, they rarely share the same layout, and thus break when they are used together. So, its always advisable to use separate templates that are easier to maintain and stay consistent with the output expected.
  • Templates only tested on the simplest record - Make sure to test your template used on multiple records to understand how a deal that has 10 different activities, not just 1 or 2 in a proposal renders the output.
  • Ignoring the Preview Document use - Running the automation without looking at the Preview Document, can be problematic considering that all active automations running will not catch the issues beforehand if the preview document feature is not tested thoroughly beforehand.

Frequently Asked Questions

1. Is there a free way to try this before committing to it?

Yes, PDFOutput has an availability of 10 PDFS for free to test automation. It doesn't require any credit card, this is enough to test the setup against a real database first before committing to any paid plans.

2. Can Notion itself export a CRM database as a PDF report?

Yes, notion supports export but only in a limited way. The built-in export feature under the ••• menu handles a single simple page, but the database views like boards and timelines often tend to lose their structure, without any control over the branding.

3. Does the template have to be a Google Doc?

No, not really. PDFOutput supports Word files, Google Docs, PDFs, and even Notion pages are all supported as template formats.

4. Will it pull data through relations and rollups from other databases?

Yes, provided those relations and rollups are set up correctly on the PDFOutput. The automation reads across connected databases, not just the one it's pointed at directly.

5. Is any coding involved?

No, not at all. PDFOutput is a no-code automation platform that is placeholder based. Simply wrap a field inside double curly braces, match it to a property name and let the automation do the rest of the work for you.


Wrapping Up

A Notion CRM is a strong place to start to track your deals, log activity, and manage relationships as well.

It was never meant to become a document generator in first place, and forcing it to be one is where most of the problem comes in from. Separating the report's design from the database layer, and letting the automation handle the matching, turns every deal or account used into a finished, on-brand PDF without a single requirement of copy and paste mechanism involved.

If reports have been going out by hand up to now, automating even one recurring type — a pipeline summary, an account update, whatever eats the most time — tends to be worth the setup the first time it runs across a full list instead of a single record.


Need to automate your Notion CRM reports? Get started for free and set up your first PDF automation in minutes.