How to Create a 2 Column Pardot Form

There’s a newer, easier way to create 2 column forms in Pardot. Click here to learn the best way to create a 2 column Pardot form.

After launching my Form Style Generator for Pardot Forms, the number one question I receive is ‘how do I create a 2 column form in Pardot?’ I might update the style generator to include this in the future, but in the meantime, here’s how to create a 2 column Pardot form with minimal coding.

The basics

When you create a new form in Pardot, there is always a layout template attached to it which determines the styling and the HTML structure of the Pardot form. The out-of-the-box structure for a single form field within Pardot looks like this:

As you can see the field is wrapped within a paragraph tag and there’s a DIV below that to display any error messages.

Step 1: Add a DIV

The first step to creating a 2 column pardot form is to add a DIV to your layout template. Navigate to your form by going to Marketing > Forms and click on the layout template link to take you to the template assosicated with the form.


Edit the layout template and navigate to the form tab.


Scroll down in the code until you see %%form-start-loop-fields%% (around line 17) and paste this code directly after %%form-start-loop-fields%%.

Scroll down into the code until you see %%form-end-loop-fields%% (around line 32) and close the DIV on the line before %%form-end-loop-fields%%.

Here’s what my complete code looks like starting at %%form-start-loop-fields%%

The structure for the form HTML now looks like this:

Step 2: Add the CSS

Now, there’s a DIV that hold the form field as well as the error messages for the field, we can add some CSS to create the two columns. The basic CSS looks like this:

Add this to your the bottom layout template to create a two column form. Depending on what your landing page looks like, you might want to add in a width to the columns.


Send them to me via email, send me a tweet @jennamolby, or leave a comment

There’s a newer, easier way to create 2 column forms in Pardot. Click here to learn the best way to create a 2 column Pardot form.

Related Posts

  • 15/10/2020
    How to Use Flex Fields in Pardot

    Flex fields are custom fields that can be used over and over again to limit the number of one-time-only fields within Pardot and Salesforce. They contain data that is required temporarily to execute a specific event or campaign. Once the data is no longer needed, the fields can be reset to blank using an Engagement Program or Automation Rule

  • 04/10/2020
    How To Embed a Pardot Form on Your Website The Right Way

    Pardot offers 2 methods for embedding forms on your website; embedding using an iframe, and form handlers. While the embedded iFrame forms allow marketers to have control over updating and configuring the forms, using an iFrame isn’t always ideal for website usability. In this tutorial, I will show you how to take advantage of the Pardot iFrame forms and make it look great embedded on your website.

  • 23/09/2020
    7 Ways Pardot Users Can Use Chrome Developer Tools For Troubleshooting & Testing

    Chrome Developer Tools is widely used by developers to help edit pages on-the-fly and diagnose issues. Pardot users can use DevTools to troubleshoot and test landing pages and forms. In this post, I’ll show you 7 ways you can use DevTools, including how to identify errors on a landing page, how to customize the CSS of a form and how to view hidden form field values.

27 comment(s)
  • brian kwong

    25/01/2017 at 12:24 pm

    This is great. What would do if you want it to be more responsive? When viewing on a desktop, get 2 columns. But if you're viewing on a smartphone you would only get 1? Is the best choice to create 2 identical forms with 2 different layouts? Then on the website hide Form 1 with 2 columns based on the pixel width and show Form 2?

    • Jenna Molby
      to brian kwong

      25/01/2017 at 2:30 pm

      Hi Brian, You wouldn't need to create 2 forms. You can create 1 form and add some CSS media queries to enable a 1-column form on mobile. Do your landing pages use any sort of web framework (Bootstrap or Foundation)? Using one of these would help a lot since they already have all the CSS already done for you.

  • Katy Hege

    07/12/2016 at 10:46 am

    Actually, if you plug in bootstrap css you can just assign a class to the field. col-sm-6 for 2 column col-sm-4 for 3 column, etc. No extra styles needed.

  • Christian

    05/12/2016 at 2:42 pm

    One question: How do you show the field labels within the form field in Pardot? Do you have any examples / example code for this?

    • Jenna Molby
      to Christian

      05/12/2016 at 3:56 pm

      Hi Christian, You can add some javascript to your form that will take the labels and turn them into placeholders. Here's what the script looks like <script> var labels = document.querySelectorAll("label"); var i = labels.length; while (i--) { var label = labels.item(i); var text = label.textContent; label.parentNode.classList.contains("required") && (text += "*"); label.nextElementSibling.setAttribute("placeholder", text); } </script> and then you will have to hide the labels using CSS like this: <style> label {display:none !important;} </style> Hope that helps!

  • Sarah Thomas

    08/11/2016 at 5:52 am

    Many thanks for this! If I wanted 2 fields to be as a 2 column layout but then the other fields to be displayed underneath (one per row) how could I do that?

    • Jenna Molby
      to Sarah Thomas

      08/11/2016 at 4:18 pm

      Hi Sarah, that's a bit more complicated but totally do-able. Send a link to the Pardot form along with the fields you want as 2-columns to [email protected] and I can help you out.

  • Bertus Schoeman

    06/11/2016 at 7:00 am

    Hi there, thank you for this article, helps a lot. I was wondering if you could tell me what to change for a 3 and/or 4 column form if you don't mind. Thank you!

    • Jenna Molby
      to Bertus Schoeman

      06/11/2016 at 10:46 am

      Hello! For a 3-column form the CSS would look like this .col:nth-child(3n+1){ clear:left; } for a 4-column form the CSS would look like this .col:nth-child(4n+1){ clear:left; }

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 Marketing Operations leader.

Most Commented
Popular Posts