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.
Step 1: Create your Gravity form
The first step is to create your Gravity form. I won’t be diving into how to set up the Gravity form, but if you’re new to this WordPress plugin take a look at their product documentation to get started.
Step 2: Create your Pardot form handler
In Pardot, navigate to Marketing > Forms > Form Handlers and create a new form handler. Enter a name for the form handler, select your campaign and set your the rest of the settings to the following:
- Kiosk/Data Entry Mode: Do not cookie browser as submitted prospect should be UNCHECKED
- Enable data forwarding to the success location should be CHECKED
- Enable data forwarding to the success location should be CHECKED
- Disable Visitor Activity throttling and send auto-responder emails after every submission. Why disable throttling? should be UNCHECKED
- SUCCESS LOCATION should be the URL of your thank you page.
- ERROR LOCATION should be the referring URL.
Here’s a screenshot of the settings within my form handler.
Step 3: Add your fields
Next step is to add your form fields to your form handler. I recommend only making email address required. The validation for the other required fields will be handled via Gravity Forms.
Here’s what the fields in my form handler look like.
Step 4: Update the settings in your Gravity Form
Navigate to your form within the Gravity Forms plugin and click on Settings > Confirmations > Add New. Give it a name and select the confirmation type as redirect. Copy & paste your form handler URL into the redirect URL box.
Now here comes the tricky part, in order for the data from the Gravity form to sync to Pardot, the fields need to be mapped. Select Pass Field Data Via Query String and a textarea will appear. This is where you will input the field names in your Pardot Form Handler and select the corresponding Gravity form field.
The syntax for this query string looks like this:
pardot-field-name={Gravity Form Field Name}&pardot-field-name={Gravity Form Field Name} etc…
You can find the field names for your Pardot Form Handler, by editing your form handler and scrolling down to Form Fields.
You can find the field names for your Gravity form, by selecting the arrow that appears next to text box within your Gravity form settings.
The last setting you need to update is the conditional logic. I’m not sure why the Gravity form doesn’t give the option to remove the conditional logic completely, but for this part, you can select email is not empty.
Here’s what my settings look like all together.
Step 5: Test, Test, Test
Last but not least, test your Gravity form and make sure the data is going into Pardot.
Questions?
Send me a tweet @jennamolby, leave a comment below, or book a Peer Chat.
Hi Jenna,
Thank you so much for the tutorial. I was totally stumped on how to do this.
I’ve got everything set up per you instructions, but it seems that that when submitted the form, the form handler is being loaded as http and is considered ‘mixed content’ by wordpress/gravity forms, ie insecure content. Any way to fix this that you know of?
If I have no thank you page, what success location shall I add as per Step 2 ??
Thanks
Hi Andrew, You can try leaving it as the “referring URL”. Cheers, Jenna
Have you experienced a slow submit on the form? Not sure if the redirect is taking too long or if the gravity form submit is slow. Would love any insights.
Hi Tiffany, No, I haven’t experienced a slow submit. Is the data going into Pardot?
i am also experiencing slow submit times using form handler vs pardot salesforce plugin. ( trying to migrate to Gravity Forms to get better designed forms and more form process options). We are also finding that we can acheive a successful form submission but we can trigger a completion action for an autoresponder emial ( even with trottle limiting turned off) and then handing the notification of errors on the free isp emial flag ( i guess you have to find a way to do that in gravity too) beginning to wonder if i should just use gravity for my marketing automation and my CRM as well 😉
Yeah – I echo Owen too. I use this method already, and while it’s great and works, I don’t get the cookie tracking. Trying to solve that one.
Did you find any way to solve the issue of form handlers dropping cookie tracking? I’m hitting the same problem.
Form handlers gives a faster load time but does not allow full pardot cookie tracking.