WPThumbs
Themes Plugins By purpose By industry Best-of lists Fix it guides
Free Plugin by webheadcoder v4.7

Webheadcoder Multi-Step Forms for Contact Form 7

Adds multi-page, multi-step forms to Contact Form 7.

Webheadcoder Multi-Step Forms for Contact Form 7

The facts

Rating
4.2★ from 49
Active installs
50k+
Price
Free
Last updated
17 Aug 2026
Added
Apr 2013
Requires WP
4.7
Tested up to
WP 7.1
Downloads
890,011

Our analysis

AI-assisted

Webheadcoder Multi-Step Forms for Contact Form 7 is a WordPress plugin that enables the creation of multi-step forms using Contact Form 7. Each step of the form is placed on a separate page, allowing for data preservation between steps and sending a completed email only from the designated final step.

To use this plugin, you need to create multiple pages for each step of your form, configure the form settings in Contact Form 7, and insert the necessary tags to manage the flow between steps. It requires Contact Form 7 version 5.2 or above and is suitable for users looking to enhance their forms with multi-step functionality.

Best for: This plugin is best for users who want to create complex forms that require multiple steps.

What it does well

  • Adds multi-step functionality to Contact Form 7 forms
  • Preserves submitted data between steps
  • Sends email only from the last step
  • Free to use from the WordPress.org directory
  • Active installation count of 50,000

Where it falls short

  • Does not support file uploads on every form
  • Only works with separate pages for each form step
  • No additional features beyond multi-step functionality

Verdict

Webheadcoder Multi-Step Forms for Contact Form 7 provides a straightforward solution for creating multi-step forms, but it has limitations regarding file uploads and form structure.

From the developer

webheadcoder's own description of Webheadcoder Multi-Step Forms for Contact Form 7, lightly tidied.

First released in 2013, Webheadcoder Multi-Step Forms for Contact Form 7 adds multi-step flows to forms by placing each step on a separate page, preserving submitted data between steps, and sending the completed email only from the designated step configured to send it.

See it in action at https://webheadcoder.com/contact-form-7-multi-step-forms/

Requires Contact Form 7 (5.2 or above) by Rock Lobster Inc. (Takayuki Miyoshi).

Usage

  1. Create one page or post for each step in your multi-step form process. If you have three steps, create three pages or posts. You will need their URLs when creating your forms.

  2. Create a Contact Form 7 form.

  3. Place your cursor at the end of the form.

  4. On the “Form” tab of the Contact Form 7 form, click on the button named “multistep”.

  5. In the window that opens, select “First Step” if this is the first step of your multi-step form. If this is the last step, select “Last Step.” All other checkboxes are optional.

  6. The Next Page URL is the URL that contains your next form. If this form is the last step, you can leave the URL field blank.

  7. Click “Insert Tag.”

  8. Save your completed form and place the form’s shortcode into the appropriate page or post you created in step 1.

  9. Repeat for each form in your multi-step form process.

  10. On the last step, you may want to send an email. Select “Send Email” in step 5. On the Mail tab, enter mail-tags as you normally would. For example, if your first form has the field your-email, you can include [your-email] in the Mail tab on your last form. Contact Form 7 may flag this because your-email is not displayed on the current form; you can safely ignore that warning.

Multistep Tag Options

  • Name – The name of this multistep form-tag. This is required, but is currently not being used.

  • First Step – Besides marking the first step of your multistep form, this allows any form to act as the first step and display when no previous data has been submitted. This is useful when you want some users to skip the first step.

  • Last Step – Besides marking the last step of your multistep form, this clears the data from users’ browsers. Once they submit this form, they will no longer see their data populate the forms.

  • Send Email – If this is checked the form will send an email like a normal Contact Form 7 submission.

  • Skip Save – If you use Flamingo or CFDB7 to save submissions to the database this prevents saving this form submission.

  • Next Page URL – This is the URL your users will go to after the form is submitted.

    [multistep multistep-123 last_step send_email skip_save “/thank-you”]

Additional Tags

[multiform "your-name"]

The multiform form-tag can be used to display a field from a previous step. Replace your-name with the name of your field. This is only for use on the Form tab, this tag will not work in the Mail tab.

[previous "Go Back"]

The previous form-tag can be used to display a button to go to a previous step. Replace Go Back with text you want to show in the button.

Messages Tab
When a visitor visits the fourth step in your multi-step form without completing the first step, the message “Please fill out the form on the previous page.” is displayed. You can change this for each form in the Messages tab.

What this plugin DOES NOT do:

  • This plugin does not support file uploads on every form. If you need to use file uploads make sure to place it on the last step.

  • This plugin does not load another form on the same page. It only works when the forms are on separate pages. Many have asked to make it load via ajax so all forms can reside on one page. This plugin does not support that.

PRO Version
If you expect to have a lot of data submitted through your multi-step forms, the Pro version may be able to help you better. The PRO version uses Session Storage so it is able to handle roughly 1,000 times more data for your multiple forms. In total it can handle about 5MB vs 4KB in the free version. Currently the Pro version REQUIRES the WordPress REST API and Contact Form 7 AJAX Submission to be enabled.

Read the full description on the official page →

Tagged as

Alternatives

Other plugins for building forms.

WPForms

WPForms

98

The best WordPress contact form plugin. Drag & Drop form builder to create beautiful contact forms, paymen...

Free 5M+ installs 4.8★ (14,369)
Akismet Anti-spam: Spam Protection

The best anti-spam protection to block spam comments and spam in a contact form. The most trusted antispam sol...

Free 5M+ installs 4.7★ (1,186)
Fluent Forms

Get a fast contact form plugin. Create advanced forms using drag and drop form builder with all smart features...

Free 700k+ installs 4.8★ (790)
Forminator Forms

Best WordPress form builder plugin. Create contact forms, payment forms & order forms with 1000+ integrati...

Free 600k+ installs 4.8★ (2,117)
Database Addon for Contact Form 7

Save and manage Contact Form 7 messages. Never lose important data. It is a lightweight contact form 7 databas...

Free 600k+ installs 5★ (1,874)
MetForm

MetForm

93

Elementor forms builder to create WordPress forms like contact form, booking form, feedback form, survey form,...

Free 600k+ installs 4.7★ (504)