Creating PDFs is a core feature of many Bubble apps, but building out this functionality can be oh so painful. There are a large number of plugins available on the Bubble plugin marketplace that allow you to generate PDFs, but figuring out which plugin (or 3rd party service) is best suited to your needs is not a straightforward task.

In this article, we'll provide an overview of the various Bubble PDF solutions available and hopefully help you figure out what's the best option for your app.

Note: We are not completely unbiased on this subject. At Cranford Tech (the company behind PDF Potion) we've developed two Bubble PDF solutions, PDF Potion and PDF Creator, so we definitely have strong opinions on what makes a good/bad PDF tool. That said, we'll aim to be as impartial as possible and give a fair assessment of the other options available. 

Overview of the Bubble PDF plugin market

Bubble has a specific section on their plugin marketplace for PDF-related plugins. As of the time of writing, there were 95 plugins in the PDF category. Not all of these plugins are designed to generate PDFs. Some are for viewing / merging PDFs and others are miscategorised and are completely unrelated to PDFs (which is a wider problem with the Bubble plugin marketplace). We will focus on the subset of plugins that aim to allow users to generate PDFs in a Bubble app. We will also consider external PDF generation services for that do not have a Bubble plugin, but can be accessed via the API Connector. 

We believe Bubble PDF plugins / solutions can be split into 4 categories:

  1. Element(s) to PDF plugins
  2. Bubble page to PDF plugins
  3. Template to PDF plugins
  4. Other PDF plugins

Element(s) to PDF plugins

This category of plugin takes the ID attribute of an element(s) and adds them to a PDF that the user can then download or save to their Bubble database. For example, in the below image the user has assigned the 'invoice' ID attribute to a group that contains a custom invoice:

Invoice ID attribute - PDF Creator

They then add this ID attribute to the plugin action to tell the plugin what element to generate a PDF of:

Generat PDF action - PDF Creator

Examples

Examples of these types of plugins include: 

This is probably the most popular type of PDF plugin. For the customer, they're usually pretty straightforward to install and use. Element(s) to PDF plugins typically use a client-side action to generate the PDF and then pass the resulting URL of the PDF through to an exposed state on the plugin element.

The quality of plugins in this category can vary dramatically. Many plugins will be able to generate a PDF of a basic text element and maybe a small repeating group, but once you start creating PDFs with any degree of complexity things can start to break. It is crucial that any plugin that falls into this category is actively supported by a high quality plugin developer.

There are also more fundamental drawbacks to using an Element(s) to PDF plugin. A major one is that because the plugin is accessing elements directly from the DOM, all elements the end-user is adding to the PDF must be visible on the page the user is active on. You typically can't add elements to the PDF that the user can't see.

That said, Element(s) to PDF plugins can be perfect if you're looking to create a relatively straightforward PDF and the plugin is supported by a high quality developer .

Advantages

  • Easy to install and use
  • Typically pay a flat monthly subscription or lifetime licence - no usage based pricing

Disadvantages

  • All the elements you are adding to the PDF must be visible on the page the user is active on (which limits how much you can design)
  • Usually can not generate PDFs in a backend workflow

Page to PDF plugins

As the name would suggest, Page to PDF plugins convert an entire page of your Bubble app (or an external webpage) to a PDF. The key benefit of these types of plugins is that they can generate a PDF of a page the user isn't active on. This means you can effectively design a 'PDF' page in your Bubble app and use it as a template for all your PDF generation. 

Note: There are a number of plugins (such as the Bubble Page to PDF converter by Zeroqode) that can convert the entire Bubble page that the user is active on to a PDF, but not any other page. We would consider these plugins to fall in the 'Element(s) to PDF' category.

Examples

Examples of Page to PDF plugins include:

We've called these tools 'plugins', but in reality they're fully-fledged API providers that use a Bubble plugin to deliver their service. The big benefit of these solutions is that they give you total over the design of your PDF. You're not limited by what elements are visible to the user so you can create customised PDFs with as much detail as you want. 

This effectively turns your PDF generation process into a valuable feature that differentiates your app from your competitors. We've seen customers use PDF Potion to generate:

  • Detailed quotation reports (>40 pages long) with cover pages, high resolution images and multiple lengthy repeating groups
  • Checklists that can be printed off by the user and submitted when complete
  • Course summaries including lessons completed by the user and key learnings
  • Valuation reports that include charts, maps and a detailed analysis of the asset in question

Another benefit of Page to PDF plugins is that they usually use a server side action or an API Connector action which means they can run in backend workflows.

Of course, there are tradeoffs to using this category of plugins. Many of the Page to PDF solutions are general tools that are not purposely built for Bubble. This means a lot of them won't have Bubble-specific tooling to give you full flexibility over the design of your PDF. 

PDF Potion is an exception to this as it was built specifically for Bubble apps. It contains tools to handle page breaks and repeating groups, it's compatible with the privacy rules you set and allows users on agency plans to create PDFs in test mode.

Of course, there's no such thing as a free lunch and there are drawbacks to using Page to PDF plugins. They typically take a little more time to setup than Element(s) to PDF plugins, given they come with more features. They can also be more expensive as they're typically using their own server, which means they charge based on usage.

Advantages

  • Gives you complete control over design; you're not limited by what elements are visible to the user
  • Can run in backend workflows

Disadvantages

  • Typically charge based on usage, which can be more expensive than other options
  • Can be more complex to set up initially

External Template to PDF plugins

This category of plugins allows you to create a PDF based on a template defined by a 3rd party service. You send data from your Bubble app to the provider and they send back a PDF based on the template/data. Some of these tools may also let you design a template using some form of editor.

Examples

Examples of External Template to PDF plugins include:

These tools are similar to to the 'Page to PDF' solutions as they are built by fully-fledged API providers but can be accessed via a Bubble plugin (or the API Connector). They are useful if they have a template that matches your specific use case and you don't need any customisation. 

However, relying on the templates created by the provider (or their template editor) means you will always be somewhat limited in what you can design.

Advantages

  • You don't have to design your PDF; you can use the templates provided by the service
  • Can usually generate the PDFs in backend workflows

Disadvantages

  • The design of your PDF will be limited by the templates provided by the service or by what's possible to design with their editor
  • Not all of these services are compatible with the privacy rules you set on your app

Other PDF plugins

There are other Bubble PDF plugins available that don't fall neatly into any of the previously discussed categories. The most well-known example of this is probably the popular PDF Conjurer plugin

Originally developed by Vini Brito, this plugin was acquired by Zeroqode in 2024 (as were many other Bubble plugins). It's quite a unique plugin that lets you create a PDF based on a 'model'. You can build a PDF by using different workflow actions to add different components. For example, there are different actions to add images, tables and footers. PDF Conjurer also provides the option to customise the style of the PDF and it can create PDFs in backend workflows.

One of the main drawbacks to using PDF Conjurer is the sheer complexity involved. You can very quickly end up with a workflow that has > 10 separate actions being used to design and create the PDF. 

Other considerations when evaluating Bubble plugins

Plugin support

If you're considering using a plugin in your Bubble app, it's always a good idea to double check that the plugin is actively being maintained and supported by the plugin developer. Unfortunately, there are quite a few plugins listed on the Bubble marketplace that have been abandoned by the developer and have significant bugs or simply don't work. Two ways to check the level of activity around a plugin are:

  1.  Check when was the last time a plugin developer responded to a review left on the plugin page
  2. Check the Bubble forum to see if the plugin developer is actively responding to queries and pushing updates

The forum thread in the below image is for the popular Tiptap.dev Rich Text Editor plugin by Rico Trevisan. It's a very active forum thread, with Rico constantly responding to questions from plugin users  - a very healthy sign for a plugin!

Tiptap rich text editor - Bubble.io

Developer Reputation

Some plugin devs are known for delivering high quality plugins with good support, detailed documentation and useful demo apps. But unfortunately this is not the case for all plugin devs. 

It's always worth checking the reviews associated with a developer's plugins before entrusting a key part of your app to them. It's advised to check the reviews for the plugin you are installing, but also the reviews of any other plugins they own.