How to Use Pardot Form Handlers


Pardot form handlers allow you to use your own forms to post your data to Pardot. A Form handler is a great alternative to use instead of Pardot iFrame forms. They allow you to fully customize the look of your form and submit data to more than 1 database. In this tutorial, you will learn how to create a form handler from scratch.

Create a new form handler in Pardot

First you need to create a new form handler in Pardot under Marketing > Forms > Form Handlers.

Add the all the standard Pardot required information.

  • Give the form handler a name
  • Select a folder and add tags
  • Choose your campaign

Choose your other custom settings.

  • Kiosk/Data Entry Mode: Do you want the prospect to be cookied when they fill out the form?
  • Enable data forwarding to the success location: Does you data need to submit to another database other than Pardot?
  • Disable Visitor Activity throttling: Do you want to disable Pardot’s spam protection and generate a distinct visitor activity and auto-responder email for all form handler submissions?
  • Success &amp Error Location: Choose an Error page and a Thank you page URL.
  • Completion Actions: Add the any actions that should happen when a prospect fills out the form.

Here are the settings I have selected for this tutorial:


Add form fields

Add any fields you want to capture through your Pardot form handler.

TIP: Name the external field name the same as your prospect field name, but without the spaces, to avoid confusion in the next steps.


Optionally, you can add custom error message text under the advanced tab


Create the form HTML

Now that the form handler is created, the form HTML needs to be created in order to embed it on your website. In this tutorial, I will be going over basic markup. Feel free to add your own styling/structure that matches your website.

Copy the endpoint URL

Navigate to your Pardot form handler summary page and copy the endpoint URL.


Basic HTML structure

Here’s the basic structure to create a Pardot form using a Pardot form handler.

  • Action: Must be the endpoint url for your Pardot form handler.
  • Method: Must = POST
  • Input: Add all the form fields you mapped while creating you Pardot form handler.
  • Name: Must equal the external field name you specified when you created the Pardot form handler.
  • Type: Specify the type (text, email, etc) to help with field validation.

Add Field Validation (Optional)

Optionally, you can add some front-end validation to your form. If you marked the fields as “required” when creating your form handler, Pardot will create some form validation that will direct a user to another page. If you don’t want the prospect to leave the page, follow these instructions.

Add required=”required” to each of your required form fields. These should match what you specified in Pardot to avoid confusion.


Email me, send me a tweet @jennamolby, or leave a comment

Related Posts

  • 17/06/2019
    How to Integrate Gravity Forms With Pardot

    Gravity Forms is one of the easiest tools to create advanced forms for your Wordpress website and with some customization they can be integrated with Pardot. In this post, I will show you how to integrate Gravity Forms using Pardot Form Handlers.

  • 28/02/2019
    Creative Ways to Spice Up Your Pardot Forms: Part 1

    Looking for some creative ways to spice up your Pardot forms? In this post, I will show you how to implement the popular floating label technique in three easy steps. I will also show you how to turn your long drop down menus into user-friendly, searchable dropdowns.

  • 05/02/2019
    How to Customize your Pardot Email Preference Page

    In this tutorial, I will show you how to turn the default Pardot email preference page into a preference page that matches your brand. You will learn how to customize everything including the header, footer, form, and text.

42 comment(s)
  • Meenal

    17/08/2017 at 4:29 am

    Hi Jenna, Thanks a lot for such an informative article. Please see my query below: I included a form in Landing page and the action of that form is the end-point URL of the form handler. When I submit the form, it does not take me to the "Success Location(a thank you page)" but takes me to the login page of pardot. Also, the prospect's fields are not updating based on the field mappings I have done.

    • Jenna Molby
      to Meenal

      17/08/2017 at 9:21 am

      Hi Mennal, Please send a link to the page with your form to [email protected] and I can help you troubleshoot. Cheers, Jenna

  • Annie

    10/08/2017 at 10:07 am

    Hi Jenna, I'm trying to set different completion actions (downloading an asset) depending on a drop down selection. I have multiple assets and I would like to be able to let visitors select an option in the drop down and depending on their selection, they receive the chosen asset when they hit submit. Can this be done using form handlers?

    • Jenna Molby
      to Annie

      10/08/2017 at 3:02 pm

      Hi Annie, Completion actions don't take a prospect to a different landing page based on a form field. If you're using a form handler you will have to add some Javascript to include this logic. Feel free to email me at [email protected] if you need some guidance with this. Cheers, Jenna

  • Balint

    14/07/2017 at 2:23 am

    This is all nice, but until forms created via form handler cannot be pre-filled by Pardot, or use progressive profiling I think. So it all lacks the major upsides of using Pardot. Any way to make those work with form handlers?

    • Jenna Molby
      to Balint

      14/07/2017 at 9:24 am

      Unfortunately, not without a lot of custom development and the use of the API.

  • Ivan Lucas

    21/06/2017 at 7:29 pm

    hi Jenna, I've been trying to create a select options using Form Handlers but I was not able to make this happen it seems Form Handlers allow me only to add basic fields. Do you have any idea? thanks!!

    • Jenna Molby
      to Ivan Lucas

      22/06/2017 at 10:22 am

      Hi Ivan, do you receive an error message when you try to submit the form, or does the data not go into Pardot?

    • Ivan Lucas
      to Jenna Molby

      22/06/2017 at 5:20 pm

      Actually the Form Handlers has only input text and email. There is no select, checkbox inputs...I could not find them.

    • Jenna Molby
      to Ivan Lucas

      23/06/2017 at 9:30 am

      Hi Ivan, You have to define that in your HTML the text and email type relate to the data coming into Pardot.

    • Kunal Hemrajani
      to Jenna Molby

      30/08/2017 at 11:56 pm

      Hi Jenna, Was trying to do something similar with the checkbox and passing checkbox values to pardot using form handlers. Does your comment mean we would need to setup fields for all the checkbox values on the form handler? As it shows up text only on form handlers, how would I be able to map the checkbox value on the site to the checkbox value on pardot. Thanks

    • Jenna Molby
      to Kunal Hemrajani

      31/08/2017 at 5:18 pm

      Hi Kunal, yes, the form fields would need to be created in Pardot. The mapping can be done in Pardot when you setup the form handler. The name of the field when you setup the form handler is the name of the field in the HTML.

    • Max
      to Jenna Molby

      24/04/2018 at 3:06 am

      Hi Jenna, thanks for all the information. I have an additional question to this topic. If I have mapped a checkbox field on the form with a a corresponding Pardot custom field and a prospects selects the checkbox, which value will be written into the custom field in Pardot (or where do I define that value)? Thanks and kind regards

    • Amy
      to Jenna Molby

      08/08/2018 at 7:44 am

      Hi, I'm currently trying to work with checkboxes through a Form Handler as well. My form is submitting fine and it all looks good, but Pardot only seems to capture one of the mulitple checkboxes that are selected. I set up a basic form with this same Pardot field for testing, and it seems like each checkbox has a unique name - whereas the Form Handler asks for a single name, so in my HTML each option that goes with a question has the same name. Any idea what I'm doing wrong or what else I need to include to get any selected field with a certain name to ALL map into a field?

  • Valon

    21/06/2017 at 1:57 pm

    Hello Jenna, I was thinking to use Form Handlers that I learned how to use it through your tutorial, do you have any way of tracking via some kind of UTM parameters on the link (or similar) visitors, to know which are the more successful channels according to forms that are submitted. Best, -V

    • Jenna Molby
      to Valon

      21/06/2017 at 2:08 pm

      Hi Valon, So happy you found my post helpful. I have another tutorial here which will walk you through the steps of tracking UTM parameters.

1 2 3 5

Leave A Comment

Your email address will not be published. Required fields are marked *

About Me

Welcome to my blog, where I share, tips, tricks, thoughts and solutions that I learn in my daily life as a sales and marketing professional.


Most Commented
Popular Posts