How do I create a multi-step form?

Last updated: December 6, 2017

Available For:

Marketing: Basic, Pro, Enterprise
Sales: N/A

HubSpot forms are designed to be one-page, single-step forms. However, there are a few methods that can serve as a workaround.

Use dependent fields

You can use the dependent field function to display new fields based on a response to another field. Visitors will remain on the same page, but will see additional fields as they fill out the form depending on their responses.

Please note: each question can only have one level of dependency; however, you can have multiple dependency rules. In other words, you can only display one new field based on the response to another, but you can set multiple rules to display different fields for each possible response.

To learn more about setting up dependent form fields, please click here.

Create multiple pages that redirect to each other

  • In your HubSpot Marketing Basic, Professional, or Enterprise account, navigate to Contacts > Forms and create two forms. One form will be the first set of questions, and the other form will be the second set of questions.

Please note: because these will be considered separate forms, unless you include the Email field on each form, the additional forms will only be associated with the correct contact if the visitor has cookies enabled. 

  • Once your forms have been created, navigate to Content > Landing Pages.
  • Create a new page that includes a form module. This landing page should contain the second-step form.
  • Click on the form module and select your form (the second step) from the dropdown menu (1).
  • In the What should a visitor see after submitting your form? section, choose whether you'd like your contacts to see a thank you message (2) or if you'd like contacts to be redirected to a thank you page after completing the multi-step form (3).

  • Make any further customization and set up your page settings, then click Publish.
  • Navigate back to Content > Landing Pages.
  • Create a second page that includes a form module. This landing page should contain the first-step form.
  • Locate the form module and add the form.
  • In the What should a visitor see after submitting your form? section, select Redirect to another page and then choose the first page you created in the steps above.
  • Customize your page, then click Publish.

You can create more than two landing pages and more than two forms by repeating the steps above and redirecting each form to the next page. It's easiest to create the last-step page first and work backwards. 

Create a single form with progressive profiling that redirects to itself (Marketing Professional and Enterprise only)

Please note: this is an advanced option that requires a more in-depth understanding of the HubSpot product. This is only recommended when the form is not likely to be the first form that a contact has filled out, as the time needed to process a new contact is greater than the time between the submission and loading the page for the second time.

  • In your HubSpot Marketing account, navigate to Contacts > Forms and create a form.
  • Enable progressive profiling for all your fields, and place fields in the Queued progressive fields section. If three of the fields in the form are smart and you have six fields in the queue, when you submit the form for the first time, you will see three new fields. When you submit the second time, you will see the remaining three fields. 

  • Create a checkbox field and do not give it any options:
    • Add this as the last field in the queue. In the Label section, compose a short thank you message.
    • Given this page will continue to redirect to itself as the fields disappear, it is necessary to have some sort of indicator that the form is complete. You may want to include a hyperlink here so the user can click it to navigate away from the page.
  • Navigate to Content > Landing Pages.
  • Create a page and choose a template with a form module.
  • Name the landing page and choose a page URL.
  • Add the form you just created to the page.
  • Select Redirect to another page then click Redirect to an external url. You'll need to redirect to an external URL because the page you're creating is not yet published and won't be available in the HubSpot pages. dropdown menu. 

  • Paste the URL of the page into the dialog box and click OK.
  • Click Publish

Was this article helpful?