Gravity PDF


Gravity PDF is the ultimate self-hosted solution for dynamically creating digital PDF documents using Gravity Forms and WordPress.

Highly Customisable PDFs

Out of the box you receive four highly-customisable PDF designs. Within minutes, you can personalise the look and feel by adding your company logo, header, footer, paper size / orientation, font, color and size. If these designs don’t suit, select a new one from the Template Shop, go Bespoke, or build your own using HTML/CSS/PHP.

Send as Email Attachment

Gravity PDF can automatically email the PDF to both the admin and the user as soon as the form is completed. Try combining this feature with one of Gravity Forms payment add-ons (like Stripe, Square, or PayPal) to delay the email until the payment is complete.

Privacy, Security, and GDPR

Gravity PDF generates PDFs on your web server, so no third-party service receives your data. Robust security protects your documents, and the plugin is GDPR-compliant for our European friends.

Digital document management with WordPress and Gravity Forms just became simple with Gravity PDF!

Free Feature

  • Unlimited Use, No Restrictions – There are zero hard limits to the number of PDFs you can configure across all your forms or generate on your entries. Gravity PDF does NOT stamp documents with our logo, limit the number of PDFs you can create per month, or purposefully restrict essential functionality to force you to upgrade to a paid plan.
  • Privacy and Security – your form data is never sent to a third party to generate the PDFs and the documents are generated directly on your web server. Strong access control policies are put in place to prevent unauthenticated access to your PDFs.
  • Multilingual – a multitude of languages from across the globe can be displayed in PDFs, include complex scripts like Hebrew, Arabic, Thai, Japanese, Chinese, and Korean.
  • Additional Fonts – match your branding and enhance the overall look and feel of PDFs by install your own fonts.
  • Columns – use Drag and Drop columns in Gravity Forms and PDFs will automatically mimic that layout.
  • Shortcode and Merge Tags – You can generate a link or URL to PDFs using both shortcodes and merge tags so your users can download the PDF right after form submission.
  • Export Entries – include the direct link to any PDF(s) when exporting your form entries
  • Webhooks Add-onsend the direct PDF link with Webhook requests when using Gravity Forms Webhooks add-on.
  • Gravity Flow – create complex workflows using Gravity Flow and automatically email Gravity PDF-generated documents at any step in the workflow.
  • GravityView – add links to PDFs when building a members area using GravityView + Advanced Filtering add-on.
  • Background Processing – generating PDFs on form submission can be time consuming. Offload it to a background process will ensure form submissions are processed faster.
  • Design PDFs – developers can build their own PDF templates using HTML, CSS, and PHP with the help of our developer documentation.
  • Documentation and Support – there is extensive documentation covering every feature of Gravity PDF that you can comb through, plus we provide free general support to all users.

Unlock More Functionality

Pay for additional PDF designs and functionality from our online store.

  • New Designs – get access to 9 additional universal designs, 6 certificates, 4 invoices, and 3 letter styles
  • Additional customizations – watermark PDFs with your own logo or text, control fields that should be displayed per PDF, add field descriptions, display all checkbox or radio field options, add notes, show field values instead of labels, and hide the product table
  • On-screen Preview – allow users to preview the PDF before form submission (and optionally payment) so they can see what the end result will be. This is a great feature for capturing e-signatures, selling PDF reports / certificates / gift cards, or providing an on-screen proof before the PDF is sent to the printers (perfect for business cards).
  • Bulk Download – search, filter, and select entries and then zip up all your PDFs and download all together in a convenient zip file
  • GFChart – create PDF reports that display pie, bar, or column charts with aggregate Gravity Forms data using GFChart.
  • 30-Day Refund Guarantee – Purchase with confidence knowing when you buy a product from our store that you can get a refund within 30 days, for any reason.

Hire the Experts

Need a tailor-made solution for Gravity PDF that solves complex business problems? Our team of experienced developers have helped thousands of businesses like yours to accomplish these goals. We can even automatically fill out existing PDFs like government forms! Find out more.

Documentation & Support

We have extensive documentation on using Gravity PDF, and our friendly support team provides FREE basic support via (we do respond to questions in forums, but give priority to our support portal).


All development for Gravity PDF is handled via GitHub. Opening new issues or submitting a pull request is welcome.

Keep up to date with Gravity PDF by subscribing to the newsletter, following us on Twitter and liking us on Facebook.

If you enjoy using the software we’d love it if you could give us a review!

Snímky obrazovky

  • Select various PDF templates (designs), attach to Notification emails, give a unique filename using merge tags, and apply conditional logic to the PDF
  • Control the paper size, orientation, font, size, and color, and whether to layout the document in RTL mode
  • Each template (design) has unique settings that allow you to change the appearance. Common settings include: Header, Footer, Background Color and Image, display HTML Fields, the Form Title, and enable Conditional Logic for the fields.
  • Password protect PDFs, format the PDF for long-term archiving (PDF/A-1b) or printing (PDFX-1a), and adjust the access control policies.
  • Zadani is a minimalist business-style PDF design that will generate a well-spaced document great for printing.
  • Rubix uses stylish containers to create an aesthetically pleasing PDF design.
  • Focus Gravity providing a classic layout which epitomises Gravity Forms Print Preview. It’s the familiar layout you’ve come to love in PDF format.
  • Blank Slate provides a print-friendly PDF design focused solely on the user-submitted data.
  • View individual PDFs on Gravity Forms Entry List page.
  • A flyout menu is shown when multiple PDFs are configured on a form when viewing on the Entry List page.
  • View or Download PDFs on the Gravity Forms Entry Details page from the PDFs metabox.
  • The Font Manager allows you to add, update, search, select, and delete custom fonts for use with Gravity PDF.
  • Design your own PDF templates and install via the PDF Template Manager. Or purchase a design from our online store.
  • Get detailed info about the state of Gravity PDF on your site from Gravity Forms System Status page
  • Easily uninstall and delete all Gravity PDF data from your website
  • A bunch of paid PDF designs are available, as well as additional functionality.


Gravity PDF can be run on most modern shared web hosting without any issues. It requires PHP 7.3+ and at least 128MB of WP Memory. You’ll also need to be running WordPress 5.3+ and have Gravity Forms 2.5+ (affiliate link).

You’ll find detailed installation instructions at

If you aren’t able to meet the v6 minimum requirements you can download v5 which we still provide support for.



15. 8. 2023 1 odpověď
I did not know much about making PDFs before using Gravity PDF ... and ... I still don't! But I do know that Jake's videos, documentation and Gravity PDF plugin allowed me to get done what I needed done with the absolute minimum amount of time working through new concepts and application specific approaches. Thanks Jake
24. 4. 2023
I just created a pre large form in a short period of time w/ their intuitive software. I ran into an issue with the formatting in my PDF & sent the support team a question. A few hours later he sent me a fix for my issue & gave me a few ways to apply the fix. Great software & support.
28. 1. 2023 1 odpověď
28. 1. 2023 1 odpověď
I manage so many sites where I use Gravity PDF, it's such a relief to be able to put almost anything in a nice PDF. I've managed to built complex documents just by adding some PHP in a template. Love this plugin!
14. 10. 2022
Great plugin and top notch team. Support was highly efficient - can't recommend enough. Thank you!!
Přečtěte si všech 305 recenzí


Gravity PDF je otevřený software. Následující lidé přispěli k vývoji tohoto pluginu.


Plugin „Gravity PDF“ byl přeložen do 2 jazyků. Děkujeme všem překladatelům za jejich pomoc.

Přeložte “Gravity PDF” do svého jazyka.

Zajímá vás vývoj?

Prohledejte kód, podívejte se do SVN repozitáře, nebo se přihlaste k odběru protokolu vývoje pomocí RSS.

Přehled změn


  • Bug: Improve dependency conflicts with third party plugins who bundle PSR Log v2 or v3
  • Housekeeping: Use 4xx HTTP Status Codes for non-server related errors when generating PDFs


  • Feature: Add support for multiple PDFs with the same Filename on a single form
  • Feature: Use secure links for File Upload and Post Image fields in Core and Universal PDFs
  • Dev Feature: Include secure links in $form_data array for File Upload and Post Image fields
  • Bug: Fix backwards compatibility error when running a version of Gravity Forms less that 2.6
  • Bug: Allow sanitized HTML in the labels of Radio and Checkbox admin settings
  • Bug: Remain editing current PDF if a hard refresh occurs after adding a new PDF to the form


  • Bug: Prevent PDF settings being override if multiple browser windows are open, and both are updating different settings of the same form concurrently
  • Bug: Gracefully handle license key deactivation if an error occurs
  • Housekeeping: Bump WordPress Tested Up To v6.3


  • Feature: Improve display of ungrouped product fields in Core and Universal templates
  • Dev Feature: Add gfpdf_hide_consent_field_if_empty filter, to remove the Consent field from Core and Universal templates if a user hasn’t consented.
  • Bug: Remove Section Break description container is there is not a description included
  • Bug: Fix potential PHP error when using GravityView and PDF for GravityView
  • Housekeeping: Update PHP and JS dependencies


  • Bug: Ensure PDF conditional logic is run through the correct sanitization function upon save
  • Bug: Ensure Gravity Wiz Populate Anything live merge tags are correctly processed in the $form_data array
  • Bug: Fix Monolog error when running PHP8.1


  • Bug: Fix duplicate notifications when using PDF Background Processing while looping over GFAPI::submit_form()


  • Bug: Fix HTTP(S) image/stylesheet loading problem in PDFs for SiteGround customers


  • Bug: Fix PHP error when a non-string is passed to the Kses sanitizing class
  • Bug: Resolve memory problem generating Core PDFs if an HTML element contains more than 10+ classes (field CSS Classes are now truncated to 8 user-defined classes)
  • Bug: Fix Slim Image Cropper display problems in Core PDFs
  • Housekeeping: Update mPDF to the latest version
  • Housekeeping: Update QueryPath to the latest version


  • Housekeeping: Update mPDF to the latest version
  • Bug: Resolve custom font installation issue for some .ttf files


  • Housekeeping: Update Global Extension Settings UI to be Gravity Forms 2.5 compatible
  • Housekeeping: Adjust how admin Notices are handled on Gravity PDF pages
  • Housekeeping: Update JavaScript package bundle
  • Dev: Validate template filename when uploading via the PDF Template Manager (A-Za-z0-9_-)
  • Dev: Add filterable CSS class names to the PDF links in the admin area
  • Dev: Pass context to the gfpdf_core_template hook
  • Dev: Add gfpdf_core_template_{form_id} hook to target specific forms
  • Bug: Fix undefined rtl notice in Core PDF templates
  • Bug: Fix PHP8.1 notice when saving PDF settings


  • Bug: Resolve blank PDF problem when a large HTML block is processed by mPDF
  • Bug: Resolve QueryPath deprecation notice about passing null to trim()
  • Housekeeping: Update mPDF and URL Signer library to latest version


  • Bug: Adjust Nested Forms and Repeater field PDF markup to ensure a unique ID attribute for any HTML tags
  • Bug: Prevent duplicate grid css classes being added to Nested Forms HTML tags
  • Bug: Process merge tags in Background Image PDF setting before late escaping in the PDF HTML markup
  • Housekeeping: Remove initialized message from Gravity PDF logs


  • Bug: Fix image display problem if filename had a space in it
  • Bug: Fix Background Image display problem on Windows OS
  • Developer: Added HTML field content to Repeater Field $form_data array


  • Bug: Resolve HTML encoding issue in PDF when displaying Coupon field in Gravity Wiz eCommerce Perk’s Product Table
  • Bug: Remove coupon line item in PDF when Gravity Wiz eCommerce Perk’s Product Table in use
  • Bug: Resolve duplicate product table displayed in a legacy v3 template
  • Bug: Resolve PHP notice when displaying product table in legacy v3 template
  • Bug: Resolve PHP notice when displaying Section Break field in legacy v3 template


  • Bug: Open PDF „view“ link in a new browser tab on Entry List page
  • Bug: Only hide Select field in Core/Universal templates if the saved value is an empty string, not a falsey value
  • Bug: Prevent PHP notice when displaying Repeater field in PDFs with a Number sub-field
  • Bug: Prevent HTML attribute content from having their entities decoded if they were previously encoded
  • Bug: Fix Core/Universal template image display issues on servers running Windows


  • Bug: Allow data protocol so Base 64-encoded images can be correctly displayed in Core/Universal templates
  • Bug: Fix Core Font Installer problem when running older versions of WordPress (5.3 to 5.8)
  • Bug: Fix fatal return type mismatch error if safe_style_css filter has been implemented incorrectly


  • Bug: Fix PDF display issues with the Survey, Poll, Post Category, and Post Custom Fields


  • Security (Hardening): Move from early escaping to late escaping variables on output
  • Security (Hardening): Add additional validation checks to the Core Font installer
  • Security (Hardening): Escape text returned from WordPress l10n functions
  • Security (Hardening): Escape any and all strings from the Gravity Forms form object, in any context (including PDFs)
  • Security (Hardening): Move to earlier sanitizing of user input
  • Security (Hardening): Custom PDF template filenames are now limited to the following characters: A-Za-z0-9_-
  • Security (Hardening): The ?html=1 and ?data=1 developer helper parameters now only work in non-production environments (WP_ENVIRONMENT_TYPE !== 'production'), or when Gravity PDF Debug Mode is explicitly enabled
  • Security (Hardening): Prevent directory traversal when loading the various Gravity PDF UI components
  • Security (Hardening): Change PDF Form Settings capability check from gravityforms_edit_settings to gravityforms_edit_forms
  • Security (Hardening): Change Font Manager CRUD capability check from gravityforms_view_entries to gravityforms_edit_forms
  • Security (Hardening): Switch to sodium_crypto_secretbox_keygen() function with modified fallback to wp_generate_password() when generating new PDF URL signing secret key
  • Security (Hardening): Switch from a Text to Password field for the Gravity PDF License Keys
  • Security (Hardening): Update PHP and JavaScript dependencies
  • Developer: Added \GFPDF\Statics\Kses::output($html) and \GFPDF\Statics\Kses::parse($html) methods for use with escaping/sanitizing HTML in PDFs (as an alternative to wp_kses_post()).
  • Performance: Register JavaScript in the footer on Gravity PDF admin pages
  • Privacy: Added „Get more info“ link in the Core Font Installer instructions, and disclaimer to plugin’s README.txt installation section
  • Bug: Fix issue passing PDF URL to Gravity Forms Mailchimp add-on
  • Bug: Allow hyphen in custom font key when updating or deleting to remain backwards compatible
  • Bug: Fix PHP8.1 type conversion warning in the template cache when transient’s are flushed
  • Bug: Remove empty repeater sections from Core PDFs when not filled in by the user


  • Security: Prevent potential XSS attack by escaping URL returned from add_query_args() on the PDF List or PDF Form Settings pages
  • Developer: Apply gfpdf_current_form_object filter added in 6.3.0 to the form object in Helper_Abstract_Fields.php using the $type helper_abstract_fields.
  • Bug: Correctly display the file path in the logs when cleaning up PDFs from disk or flushing the mPDF cache
  • Performance: reduce I/O operations when flushing the mPDF cache by excluding the top-level directory


  • Feature: Support for mapping PDF URLs to your favorite services using Gravity Forms feeds. This includes (but is not limited to): PayPal, MailChimp, HubSpot, Stripe, Square, ActiveCampaign, Agile CRM, Capsule, CleverReach, Constant Contact, EmailOctopus, Zoho CRM
  • Feature: Support for the Zapier add-on: PDF URLs can now be passed to your zaps
  • Feature: Add [gravitypdf] shortcode rendering support to Gravity Wiz’s Entry Block perk
  • Housekeeping: Change „document“ icon used for settings menus to the „Gravity PDF“ icon
  • Housekeeping: duplicating PDFs on a form will now have the correct alternating background color in the table
  • Housekeeping: Process the [gravitypdf] shortcode when merge tags get processed so that it can be used where ever merge tags are supported
  • Developer: Add new gfpdf_current_form_object filter to manipulate the $form array when processing PDFs
  • Bug: Fix a race condition when using Background Processing that could see the PDF deleted before being attached to notifications
  • Bug: Do not strip the backslash character when used in PDF settings


  • Bug: Always generate a new PDF when using the GPDFAPI::create_pdf() method
  • Bug: Fix fatal error during PDF generation when using the gform_address_display_format filter


  • Feature: Add support for Gravity Forms 2.6 (see Housekeeping below)
  • Housekeeping: Add alternate background color on PDF List page
  • Housekeeping: Add styles/support for new merge tag selector
  • Housekeeping: Add styles for Copy to Clipboard shortcode button on PDF List page
  • Housekeeping: Update help search API to query v6 documentation
  • Bug: Fix error message display issue on Form PDF add/edit page
  • Bug: Fix missing styles on multi-PDF view/download menu on Entry List page


  • Bug: Allow number field to show a thousand separator by using the ‚gform_include_thousands_sep_pre_format_number‘ filter.
  • Bug: Fix PHP Notice when displaying Repeater field caused by processing field’s not present in $form_data['field'] array key
  • Housekeeping: Add logging to file/directory cleanup method
  • Housekeeping: Add additional checks and logging when processing background tasks


  • Feature: Add Copy to Clipboard feature for PDF Shortcode on the PDF List page
  • Bug: Fix empty check on the Radio field so a zero (0) value is not considered empty


  • Bug: Reduce the Focus Gravity template column widths by a fraction to prevent edge-case display issues (props Hiwire Creative)
  • Bug: Fix Help page results text encoding problems
  • Bug: Prevent multiple font files being uploaded to a single dropzone
  • Bug: When checking if a Radio/Select field is empty in the PDF context, only look at the value property.


  • Bug: Fix up 404 link for Outdated Templates in System Status
  • Bug: Revert vendor aliasing for mPDF and querypath (back to the original namespace) as it caused more problems than is solved. Developers: see


  • Bug: When displaying the minimum Gravity Forms version not met error, remove beta-1 as the minimum to prevent confusion.


This major release is designed specifically for Gravity Forms 2.5+ and includes breaking pages that may affect you. You are strongly encouraged to review the upgrade guide before attempting to update to v6.


  • New minimum requirements PHP7.3+, WordPress 5.3+, Gravity Forms 2.5+
  • Removed Gravity PDF v3 template stylesheet (swap legacy PDF template to Focus Gravity template)
  • Removed Gravity PDF v3 to v4 migration code (upgrade to v4/v5 before attempting v6 upgrade)
  • (Dev) Moved all vendor (Packagist) packages to new GFPDF_Vendor/ namespace (BC aliasing for common classes included). Prevents all vendor conflicts with other plugins.
  • (Dev) Removed „Setup Custom Templates“ tool (manually copy over template files to PDF Working Directory)
  • (Dev) Removed shortname property from custom_fonts global PDF options, and removed the requirement for the font_name to be unique (use id instead of shortname).
  • (Dev) Changed the first parameter $font_name in GPDFAPI::delete_pdf_font() to $font_id instead. You can no longer delete the font by
    its name, as it is no longer a unique identifier.
  • (Dev) Majority of admin user interface markup (UI) changed to suit new GF2.5 UI ()
  • (Dev) Renamed \GFPDF\Helper\Fields\Field_CreditCard class to Field_Creditcard
  • (Dev) Change \GFPDF\Model\Model_Install __construct signature by removing Helper_Abstract_Forms dependancy from the start and adding Model_Uninstall at the end
  • (Dev) Change \GFPDF\Model\Model_System_Report __construct signature by adding new Helper_Templates dependancy at the end
  • (Dev) Removed \GFPDF\View\View_Settings::system_status method. Replaced by Controller_|Model_|View_System_Report classes for direct integration with Gravity Forms System Status page
  • (Dev) Removed undocumented gfpdf_entry_detail_pre_container_markup and gfpdf_entry_detail_post_container_markup actions
  • (Dev) Adjusted ID from #tab_pdf to #tab_PDF for container on Global PDF settings page. This ensures both the Global and Form PDF settings use a consistent ID.
  • (Dev) Change \GFPDF\Model\Model_Install __construct signature by removing Helper_Abstract_Forms dependancy from the start and adding Model_Uninstall at the end
  • (Dev) Change \GFPDF\Model\Model_System_Report __construct signature by adding new Helper_Templates dependancy at the end
  • (Dev) Removed \GFPDF\View\View_Settings::system_status method. Replaced by Controller_|Model_|View_System_Report classes for direct integration with Gravity Forms System Status page
  • (Dev) Removed undocumented gfpdf_entry_detail_pre_container_markup and gfpdf_entry_detail_post_container_markup actions
  • (Dev) Adjusted ID from #tab_pdf to #tab_PDF for container on Global PDF settings page. This ensures both the Global and Form PDF settings use a consistent ID.
  • (Dev) Deprecate Helper_Abstract_Options::get_font_short_name(). No direct replacement as the font ‚shortname‘ has been phased out (using unique ID now).
  • (Dev) Updated field description markup to use DIVs instead of SPANs. Matches Gravity Forms RC1
  • (Dev) Deprecate these methods from \GFPDF\Model\Model_Install: uninstall_plugin, remove_plugin_options, remove_plugin_form_settings, remove_folder_structure, deactivate_plugin. All moved to Model_Uninstall.


  • Brand new admin user interface (UI) to seamlessly match the Gravity Forms (GF) 2.5 UI.
  • Added support for new GF columns feature in Core PDFs
  • Add PDF column support for Gravity Perks Nested Forms
  • Added RTL support for new GF columns feature in Core PDFs
  • Refreshed Font Manager with better validation, error handling, and automatic support for fonts that include Open Type Layout features.
  • Added new PDF metabox on Entry Details page. Includes a better user experience for forms with a lot of PDFs configured.
  • Added new merge tag modifiers :download, :print, :signed, :signed:expiry to enhance existing PDF mergetag (modifiers can all be used in conjunction)
  • Add PDF URL to Webhook add-on „All Fields“ request body
  • Add ability to include PDF URLs in Entry exports
  • Add Gravity PDF info to Gravity Forms System Status page
  • Show plugin downgrade prompt when minimum WordPress, Gravity Forms, or PHP requirements aren’t met so users can easily roll back to the latest supported v5.x version.
  • Add support for WordPress‘ native Background Updates
  • Add accessibility improvements for keyboard users and screen readers on all Gravity PDF UIs
  • Display warning on System Status page when Core template overrides are out of date
  • Include Add/Update PDF button below each section on PDF creation page to make it easy to save
  • Improve RTL support on admin pages


  • Remove the Always Save PDF setting from the UI.
  • Switch all Radio PDF settings to new Toggle setting
  • Switch all Multiselect PDF settings to Checkbox field (better accessibility)
  • Rename PDF setting „Name“ to „Label“
  • Replace asterisk * to text (required) to signify required fields (better accessibility)
  • Rename PDF setting „Orientation“ to „Paper Orientation“
  • Refine PDF settings descriptions.
  • Removed Welcome Page
  • Move Paper Size global settings below the Template / Font settings
  • Removed rich Select functionality (using Chosen) in UI for greater accessibility
  • Remove WP Dialog prompts in UI for greater accessibility
  • Move Gravity PDF uninstaller from Tools tab to Gravity Forms Uninstall settings page


  • Ignore content-type header API response when running the Core Font installer
  • Make all GFPDFAPI API class error responses translatable
  • Fix PHP8 notice
  • Prevent background queue from continuing if retry limit reached on unrecoverable task (like generating the PDF)
  • Adjust custom paper size sanitize logic to fix PHP error
  • Check for invalid relative date when using Signed PDF URLs and fallback to default timeout
  • Fix border display issue in Core Product table
  • Show error message in Template Manager when maximum file size limit is reached


  • Rewritten all CSS in SASS
  • Add GPDFAPI::get_entry_pdfs( $entry_id ) method to API. Acts like GPDFAPI::get_form_pdfs( $form_id ) but filters out any PDFs that don’t pass conditional logic checks for the current entry.
  • Added Helper_Abstract_Config_Settings class which template config files can extend to automatically have the current PDF settings injected into the class.
  • Adjusted some logged items to use less severe alerts (when template config file doesn’t exist, and when native PDF support for a field doesn’t exist)
  • Upgrade vendor packages to latest versions
  • Remove all backbone.js and underscore.js Font Manager code from Gravity PDF admin pages
  • Remove gulp as dependency (build is done using only webpack now)
  • Add better error log messages for PDF Merge tag processing
  • Pass additional information to the gfpdf_field_container_class filter

See CHANGELOG.txt for version 5/4/3 changelog history.