How to Set Up a Multi-Step Form in Webflow
Multi steps forms are a bit more technical, but they can help focus audiences.

A multi-step form in Webflow helps improve user experience by breaking long forms into smaller, manageable sections. This reduces form abandonment, increases conversions, and makes the process feel less overwhelming for users.
Webflow doesn’t natively support multi-step forms, but you can easily build one using interactions and custom scripts. Here’s how to do it.
Step 1: Create the Form Structure
- Drag a Form Block onto the Webflow canvas.
- Inside the Form Block, add a Div Block and name it Form Wrapper.
- Inside Form Wrapper, add separate Div Blocks for each step of the form.
- Name them Step 1, Step 2, Step 3, etc.
- Add form fields inside each step as needed (e.g., Name, Email, Preferences).
💡 Tip: Keep only the first step visible. Hide the other steps using Display: None in the Style panel.
Step 2: Add Navigation Buttons
Each step should have navigation buttons:
✔️ Next Button to move forward
✔️ Previous Button to go back (except for Step 1)
✔️ Submit Button on the last step
- Inside each step, add a Next Button (Next Step).
- In all steps except Step 1, add a Previous Button (Go Back).
- On the final step, add a Submit Button (Finish).
Step 3: Add Webflow Interactions for Step Transitions
To make the form steps transition smoothly:
- Select Step 1 and go to Interactions > Page Trigger.
- Click "Add Interaction" > Start an Animation.
- Set Step 1 to Hide (Display: None) and Step 2 to Show (Display: Flex).
- Apply the same interactions for each Next and Previous button.
- Set a smooth Fade or Slide animation for better user experience.
💡 Tip: Use Auto Layout (Flexbox) inside steps for a clean, centered layout.
Step 4: Add Custom JavaScript for Form Validation (Optional)
Webflow’s default form settings submit only the visible step, so use JavaScript to collect all form data before submission.
- Add an Embed Block inside your Webflow page.
- Paste this script:
document.addEventListener("DOMContentLoaded", function() {
let currentStep = 1;
const steps = document.querySelectorAll(".form-step");
const nextButtons = document.querySelectorAll(".next-step");
const prevButtons = document.querySelectorAll(".prev-step");
nextButtons.forEach(button => {
button.addEventListener("click", () => {
steps[currentStep - 1].style.display = "none";
steps[currentStep].style.display = "flex";
currentStep++;
});
});
prevButtons.forEach(button => {
button.addEventListener("click", () => {
steps[currentStep - 1].style.display = "none";
steps[currentStep - 2].style.display = "flex";
currentStep--;
});
});
});
💡 What This Does:
✔️ Tracks the current form step
✔️ Hides the previous step when clicking "Next"
✔️ Brings back the previous step when clicking "Back"
Step 5: Test & Optimize
✔️ Preview the form and ensure all steps transition smoothly.
✔️ Test on mobile to make sure the layout is responsive.
✔️ Adjust animations for better UX (e.g., Slide-in effects).
Final Thoughts
Multi-step forms boost conversions and improve user experience by making forms less intimidating. By combining Webflow interactions and custom JavaScript, you can build a seamless, engaging form that guides users step by step.