Webheadcoder Multi-Step Forms for Contact Form 7
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 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. Create a Contact Form 7 form. Place your cursor at the end of the form. On the “Form” tab of the Contact Form 7 form, click on the button named “multistep”. 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. 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. Click “Insert Tag.” Save your completed form and place the form’s shortcode into the appropriate page or post you created in step 1. Repeat for each form in your multi-step form process. 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. Another feature the Pro version offers is the ability to skip steps with the “Contact Form 7 – Conditional Fields plugin”. Learn more here. Source Code The human-readable source for this plugin’s minified JavaScript and compiled CSS is published at https://github.com/coreyt808/webheadcoder-multi-step-forms-for-contact-form-7, with the unminified files in assets-src/. To rebuild the generated files in resources/, use Node.js 24 and run composer install, npm ci, and npm run deploy. External services This plugin uses Freemius, an external service, for optional usage tracking and opt-in, licensing, account management, pricing, and purchase or upgrade functions. Freemius receives and processes information used for these functions. The free plugin remains usable if an administrator chooses “Skip” on the Freemius opt-in screen. If an administrator opts in, the plugin can send the opted-in administrator’s first name, last name, and email address; the plugin’s version and state; the WordPress and PHP versions; the site language and website URL; and, when the administrator separately allows it, the list of installed plugins and themes. Activating and maintaining a paid license sends the license and site or product information needed for license activation, account management, and update checks. A pricing or checkout connection is initiated only after an administrator explicitly selects a plugin-provided Upgrade or Purchase link and proceeds through the Freemius SDK-managed flow. Learn more about Freemius, its opt-in behavior, and its data practices. Use of the service is subject to the Freemius Terms of Service and Privacy Policy.
Top keywords
- form36×3.72%
- step23×2.37%
- last10×1.03%
- contact8×0.83%
- contact form8×0.83%
- forms8×0.83%
- last step8×0.83%
- page8×0.83%
- data7×0.72%
- email7×0.72%
- multi-step7×0.72%
- send7×0.72%
Anti-Spam Protection – No API Key, GDPR Friendly
Is Contact Form 7 spam destroying your mornings? No API key. No data leaving your server. No charges for commercial use. Just effective spam protection that works the moment you activate it. What Gets Protected (FREE) ✅ Contact Form 7 – Block bot spam automatically ✅ WPForms Lite & Pro – Stop automated submissions ✅ Jetpack Contact Forms – Filter bot spam instantly ✅ Fluent Forms – Eliminate bot attacks ✅ SureForms – Block bot spam submissions ✅ WordPress Comments – Clean comment spam from badbots ✅ Business sites included – No commercial fees ever Works immediately after activation. No configuration. No learning curve. No monthly costs. How It Works 3 Steps to Spam-Free Contact Forms: Install – Search “Contact Form 7 spam” in your WordPress dashboard Activate – One click to turn on protection Relax – Your Contact Form 7 and WPForms and others are now protected from bots The moment you activate, spam bots are automatically blocked on all your forms and comments. No settings to configure. No technical knowledge required. No ongoing maintenance. Most users report 95-100% spam reduction within the first 24 hours. Tomorrow morning, check your inbox. Instead of dozens of spam submissions, you’ll see only real customer inquiries. That’s the peace of mind this plugin delivers. Why Contact Form 7 Needs This Contact Form 7 is WordPress’s most popular form plugin with over 5 million active installations. It’s lightweight, flexible, and completely free. But it doesn’t include spam protection. Without protection, Contact Form 7 sites get hammered. Bot networks discover unprotected forms and flood them with submissions. Your inbox fills with junk. You waste time sorting real inquiries from spam. Worse, you risk missing legitimate customers buried in the noise. This plugin fixes that problem. For free. Forever. Free vs Pro: What You Get FREE Version (Most Sites Need Only This): ✅ Contact Form 7 bot spam blocked ✅ WPForms automated spam stopped ✅ Jetpack forms protected ✅ Fluent Forms secured ✅ SureForms protected ✅ WordPress comment spam eliminated ✅ Works on business/commercial sites ✅ Spam statistics dashboard Automated bots cause 95%+ of spam. The free version handles this completely. PRO Version (For Advanced Needs): ⚡ Private Machine Learning human spam detection (runs on your own server, learns from your spam) ⚡ Gravity Forms integration ⚡ WooCommerce registration protection ⚡ Email quarantine for review ⚡ Custom IP blocklists ⚡ Allow/deny pattern rules ⚡ Priority support Most Contact Form 7 users never need Pro. But if you’re getting manually-typed spam or need enterprise features, Pro has you covered. Why This Works Better Than CAPTCHA CAPTCHA makes your visitors prove they’re human by solving puzzles. It’s annoying, hurts conversions, and still lets some spam through. This plugin takes a smarter approach: Invisible honeypot fields – Bots can’t resist filling hidden fields that humans never see Timing analysis – Bots submit forms instantly; real people don’t Behavioral fingerprinting – Bot patterns are detectable and consistent No user friction – Your visitors never know the protection exists Lightning fast – All processing happens locally on your server Your Contact Form 7 stays fast. Your conversion rates stay high. Spam disappears. It just works. Quietly. Effectively. Completely free. Common Questions Answered “Will this work with my existing Contact Form 7 setup?” Yes. It integrates automatically with all CF7 configurations, custom fields, and extensions. Nothing breaks. Spam just stops. “I’m not technical. Can I install this?” If you can install a WordPress plugin, you can use this. There’s literally nothing to configure. Install, activate, done. “What about sites that aren’t in English?” Works perfectly on all languages. The spam detection doesn’t depend on language – it detects bot behavior patterns. “My site sells products. Do I have to pay?” No. Unlike some popular anti-spam solutions that charge business sites, this is free for commercial use. No exceptions. No hidden fees. Ready to Stop Contact Form 7 Spam? Installation takes 30 seconds: In your WordPress dashboard, go to Plugins → Add New Search for “Contact Form 7 spam” Click Install, then Activate Done – your forms are now protected Check your email tomorrow. Enjoy the silence. For detailed statistics and settings, visit Settings → Anti Spam after activation. Go Pro Most Contact Form 7 users never need Pro – the free version eliminates their spam problem completely. What makes Pro unique – private Machine Learning: Unlike cloud filters that ship your visitors’ messages off to an external service, the Pro classifier runs entirely on your own server. It learns from the spam you classify, gets smarter the more you use it, and never sends data to a third party outside your control – no external cloud service, no data sharing, no privacy trade-off. Pro delivers: ✅ Private Machine Learning Human Spam Detection – Stops manually-typed spam that gets past basic filters, using Machine Learning that runs entirely on your own server and learns from your spam classifications – your visitors’ data never leaves your site or goes to a third party outside your control ✅ Gravity Forms Integration – Complete protection for premium form users ✅ WooCommerce Registration Blocking – Stop fake account spam ✅ Email Quarantine – Review and rescue any legitimate messages caught by mistake ✅ Quarantine / Audit Log – Full spam traceability: see every submission the plugin checks, allowed or blocked, and exactly why it was decided (bot trap, Machine Learning human-spam score, single-word, deny rule, real-time IP blocklist or allow list) – with the analysed content, masked IP and country, plus one-click allow/deny actions to fix any mistake ✅ Custom Allow/Deny Rules – Block specific IPs, patterns, or keywords ✅ IP Blocklist Checking – Automatic blocking of known spam networks ✅ Priority Support – Get help directly from the developers Perfect for: – High-traffic sites getting manually-entered spam – Agencies managing multiple client installations – Enterprise sites requiring advanced controls – Gravity Forms and WooCommerce users Start Your Free 30-Day Pro Trial Try Pro features risk-free for 30 days. A card is required to start, but you won’t be charged if you cancel before the trial ends. No pressure, no hassle.