After over 17 years of community requests, I'm hoping the Zoho team can finally address the lack of native multi-page form support in Zoho Creator. This has been one of the longest-standing feature requests in the community, with threads spanning nearly two decades:
The Issue
Zoho Creator currently has no native support for multi-page forms (also known as wizard forms, step forms, or tabbed forms). When building applications with complex data entry requirements—employee onboarding, loan applications, patient intake, vendor registration—developers have no built-in way to break a single form into logical, digestible steps.
Meanwhile, Zoho Forms has had robust multi-page form support for years, including page breaks, progress indicators, conditional page navigation, and page rules. This creates an inconsistency within Zoho's own product ecosystem.
The Product Asymmetry
The disparity between Zoho Forms and Zoho Creator is striking:
| Capability |
Zoho Forms |
Zoho Creator |
| Page Break field type |
✓ Native support Drag-and-drop page breaks |
✗ Not available |
| Progress indicator / Step bar |
✓ Built-in Shows respondent progress |
✗ Not available |
| Page navigation (Next/Previous) |
✓ Automatic Customizable button labels |
✗ Not available |
| Conditional page skipping |
✓ Page Rules Skip pages based on answers |
✗ Not available |
| Page-level validation |
✓ Validates before advancing |
✗ Not available |
| Single form, single record |
✓ Yes |
✗ Requires multiple forms |
The irony: Zoho Forms—a standalone form builder—has more sophisticated form UX capabilities than Zoho Creator—a full application development platform. Developers building enterprise applications in Creator are stuck with inferior form experiences compared to a simple survey tool.
Example Use Case
Consider an Employee Onboarding Form with 40+ fields across these logical sections:
- Step 1: Personal Information (name, contact, emergency contacts)
- Step 2: Employment Details (position, department, start date, manager)
- Step 3: Payroll & Banking (bank account, tax forms, direct deposit)
- Step 4: Benefits Selection (health insurance, retirement plans)
- Step 5: IT & Equipment (laptop preference, software access, badge photo)
- Step 6: Policies & Acknowledgments (handbook, NDA, consent forms)
Desired behavior: User completes each step, sees their progress, and can navigate back to review previous sections—all within a single form that creates a single record.
Current reality: User is presented with a massive scrolling form with 40+ fields, or developers must implement complex workarounds using multiple forms, lookups, and Deluge scripts.
The Current Workarounds (All Suboptimal)
To achieve multi-page form behavior, developers are forced into one of these suboptimal approaches:
Workaround 1: Multiple Related Forms ("Form Chain")
Create separate forms for each "step" and link them via lookups. Use Deluge scripts to pass record IDs between forms and auto-populate fields.
// Step 1 form On Success:
step2_url = "#Form:Step_2_Employment?Employee_Lookup=" + input.ID;
openUrl(step2_url, "same window");
// Step 2 form On Load:
if(input.Employee_Lookup != null)
{
emp = Employee[ID == input.Employee_Lookup];
input.Name = emp.Name;
input.Email = emp.Email;
// ... populate all fields from Step 1
}
- Problem: Data is scattered across multiple tables
- Problem: Complex lookup relationships and Deluge scripting required
- Problem: No "go back" functionality—user must start over if they need to edit Step 1
- Problem: Reporting requires joining multiple forms
- Problem: Breaks the single-record-per-entity principle
Workaround 2: Stateless Form Daisy Chain
To avoid creating "junk" records when users abandon the form mid-process, advanced developers use Stateless Forms for intermediate steps, passing all field values via URL parameters, and only writing to the database on final submit.
// Step 1 Stateless Form - "Next" button:
step2_url = "#Form:Step_2_Stateless?"
+ "Name=" + encodeUrl(input.Name)
+ "&Email=" + encodeUrl(input.Email)
+ "&Phone=" + encodeUrl(input.Phone)
+ "&Address=" + encodeUrl(input.Address)
+ "&City=" + encodeUrl(input.City)
+ "&State=" + encodeUrl(input.State)
+ "&Zip=" + encodeUrl(input.Zip);
// ... repeat for EVERY field
openUrl(step2_url, "same window");
// Step 2 Stateless Form - "Next" button:
step3_url = "#Form:Step_3_Stateless?"
// Pass ALL fields from Step 1 again...
+ "Name=" + encodeUrl(input.Name)
+ "&Email=" + encodeUrl(input.Email)
// ... plus all Step 2 fields
+ "&Department=" + encodeUrl(input.Department)
+ "&Manager=" + encodeUrl(input.Manager);
openUrl(step3_url, "same window");
// Final Form - actually saves the record
- Problem: Stateless forms cannot use advanced field types including Subforms, File Upload, Signature, Image, and Audio—severely limiting data collection capabilities
- Problem: Every single field must be manually mapped in URL strings
- Problem: Adding one field to the schema requires updating scripts on every "Next" button
- Problem: URL length limits restrict how many fields can be passed
- Problem: No "go back" functionality—previous values are lost unless passed forward
- Problem: Extremely brittle—maintenance nightmare for forms with 30+ fields
Workaround 3: CSS Hacks ("Fake Tabs")
Use Notes fields with custom HTML/CSS to create tab-like visual navigation, combined with hide/show field rules triggered by a radio button "step selector." This can work with individual fields or Section fields (to hide/show groups at once).
// Radio field "Current_Step" with options: Step 1, Step 2, Step 3...
// On User Input of Current_Step:
if(input.Current_Step == "Step 1")
{
show Section_Personal_Info;
hide Section_Employment;
hide Section_Banking;
}
else if(input.Current_Step == "Step 2")
{
hide Section_Personal_Info;
show Section_Employment;
hide Section_Banking;
}
// ... repeat for each step
- Problem: Requires hiding/showing every field or section individually—maintenance overhead
- Problem: CSS styling is fragile and may break with Creator UI updates
- Problem: No native progress indicator—must build custom UI in Notes fields
- Problem: Validation doesn't prevent "next step" navigation if current step has errors
- Problem: All fields still load in DOM regardless of visibility, impacting performance
- Problem: Collapsible sections are all visible simultaneously—not a true wizard experience with enforced linear progression
Workaround 4: Zoho Forms Integration
Build the multi-step form in Zoho Forms (which has native support), then push data to Creator via webhooks or integrations.
- Problem: Requires additional Zoho Forms subscription
- Problem: For in-app forms, users must leave the Creator application entirely, complete the form in Zoho Forms, then return to Creator—a jarring, disconnected experience
- Problem: Data synchronization is not instantaneous—there can be delays before records appear in Creator
- Problem: Loses Creator-specific field types (lookups to existing data, formulas, subforms)
- Problem: Integration complexity and potential sync failures
- Problem: Cannot use Creator's built-in workflows on form submit—must rely on integrations
Workaround 5: Custom JavaScript Widget
Build a completely custom multi-step form interface using a JavaScript Widget that handles the UI, then submits data to Creator via API.
- Problem: Requires JavaScript development expertise—completely inaccessible to citizen developers and new users who chose Creator specifically for its low-code promise
- Problem: Must build and maintain custom form validation, navigation, progress indicators from scratch
- Problem: Loses all native Creator field types and behaviors—must recreate lookups, dropdowns, validations in JavaScript
- Problem: API authentication and connection management adds complexity
- Problem: Widget UI doesn't automatically match Creator's styling or theme changes
- Problem: Significant development time for what should be a basic platform feature
What Should Happen Instead
Proposed Solution 1: Page Break Field Type
Add a "Page Break" field type to the Form Builder (matching Zoho Forms functionality):
Form Builder → Field Types → Page Elements → Page Break
Drag the Page Break field between sections to create multi-page forms.
Each page displays with Next/Previous navigation buttons automatically.
Proposed Solution 2: Progress Indicator Configuration
Allow developers to configure a progress bar or step indicator:
Form Properties → Multi-Page Settings:
☑ Enable progress indicator
○ Progress bar style
○ Numbered steps style
○ Named steps style
Step Labels:
Page 1: "Personal Info"
Page 2: "Employment"
Page 3: "Payroll"
...
Proposed Solution 3: Page-Level Validation
Validate required fields on the current page before allowing navigation to the next page:
// Deluge: On Page Change (new event)
if(input.Current_Page == 1 && input.Email == null)
{
alert "Please enter your email address before continuing.";
cancel page change;
}
Proposed Solution 4: Conditional Page Navigation (Page Rules)
Allow pages to be skipped based on field values (matching Zoho Forms' Page Rules):
Page Rules:
IF Employment_Type == "Contractor" THEN skip "Benefits Selection" page
IF Country != "USA" THEN skip "US Tax Forms" page
Real-World Impact
This limitation affects any application requiring:
- Employee onboarding — HR systems with 30-50+ fields across multiple categories
- Customer applications — Loan applications, insurance quotes, account opening
- Patient intake — Medical history, insurance, consent forms, symptoms
- Vendor registration — Company info, compliance documents, banking details
- Event registration — Attendee info, session selection, dietary requirements, payment
- Grant applications — Project details, budget, team info, supporting documents
- Any complex data collection — Where form abandonment due to length is a concern
User Experience Impact: Research consistently shows that multi-step forms have significantly higher completion rates than single long forms. This is due to the "Goal Gradient Effect"—users are psychologically more motivated to complete a task as they see progress toward the finish line. A progress bar creates momentum; an endless scroll creates cognitive overload and abandonment.
Database Architecture Impact:
The workarounds described above force developers to fragment a single logical entity (e.g., "Employee") into multiple physical tables (Personal_Info, Employment_Details, Banking_Info, IT_Equipment) just to achieve visual pagination.
- Reporting nightmare: Every report requires complex joins across multiple forms
- Integration complexity: External systems expect a single record, not fragments across tables
- Data integrity risk: Orphaned records when users abandon mid-process
- API overhead: Multiple API calls required to fetch what should be one record
The desired state is simple: one logical entity = one database table, with the UI handling pagination visually—not structurally.
The Business Case for Zoho
Why this benefits Zoho:
- Product consistency: Aligns Creator with Forms and other Zoho products that already support multi-step data entry
- Competitive positioning: Platforms like Salesforce, Microsoft Power Apps, and OutSystems offer native wizard/multi-step form capabilities
- Reduced support burden: Eliminates community posts and support requests for workarounds for this basic functionality
- Enterprise readiness: Complex enterprise applications require sophisticated form UX—this is table stakes for enterprise adoption
- Developer productivity: Native wizard capabilities remove the overhead of building UI workarounds from scratch, cutting development cycles by hours. Instead of troubleshooting custom flow-control scripts, developers can focus on optimizing user experience and accelerating time-to-market for core business features.
Request to Zoho Team
Can this finally be addressed?
After over 17 years of community requests, the need is clear and well-documented. The current implementation forces developers to choose between:
1. Poor User Experience
Present users with overwhelming, scroll-heavy single-page forms that increase abandonment rates
|
2. Excessive Complexity
Spend days implementing fragile workarounds using multiple forms, CSS hacks, or external integrations
|
We shouldn't have to make this choice—especially when Zoho Forms already has this capability built-in.
Community Input Requested: What workaround have you used in the absence of native support? Please add your voice to this long-standing request.
📚 Documentation References:
🔗 Related Community Discussions (17+ years of requests):
Recent Topics
Cannot change Blog Title
There is nowhere to change the blog title. You can change the blog URL but that is making no difference to the text "Enter Your Post Title" am I missing something?
Kaizen #203 - Answering Your Questions | Handling API Limits and Error Responses
Hi Everyone, Welcome back to yet another post in the Kaizen Series! We appreciate your keen participation in the 200th milestone celebration of the Kaizen series. We will continue to answer the queries we received through the feedback. When working with
How to verify website ownership with google search console
Hi, I am having a free .in domain provided by Zoho I have created a website on it now I want to verify my ownership to google webmaster. Can you please help me how to do that.
"SPF record exceed the allowed limit of 10"
Hi, I was wondering if there were a "universal Zoho SPF record" that would allow all my configured Zoho services that email things to meet this limitation ? or do I have to have an entry for mail, com, billing, etc?
Animated GIF Images in Chat
I know this seems to be a small feature request but in a recent Cliq update Zoho disabled autoplay for animated GIFs posted in Cliq conversations. We think this was not a good change. In our organization, animated GIFs in a chat play a role in expressing
I can't seem to login in to Mail Apps of MacOS /IOS
Hi, i'm having trouble in signing in to mail apps from IOS. It's always come back to wrong passwords. But i already changed my password like 3 times. But still it says wrong credentials
Profile Image Showing Incorrectly in Zoho Mail
Hi everyone, I’m facing a serious issue with Zoho Mail. The profile image showing for my email address is incorrect — it’s not my image. When I send an email to my Gmail account, it displays someone else’s image. This looks very suspicious and can make
I need access to my old email
I need access to my old email bromzeman@zoho.com to verify it for forwarding. I can’t access the inbox to get the confirmation code. Please assist with recovery or forwarding. as you might already know, they made alot of the email addresses to have that
Set Defaults for Email Groups
Is there a way to set defaults for all of the groups that I establish as a moderator? For example, I want every group I establish to have the following settings: 1. Moderator is <user> 2. User is <user>, <user> 3. Notifications for new group turned
LOGS FOR RECEIVED MAIL ( READ DATE & TIME)
In Zoho mail we can extract the read logs of received mails so that we can see when we have read the mail and at what time & we have read it.
Domain verification probem
Hello, i use a domain from Namecheap with hosting from Cinfu when i try to verify my domain on zoho i get "TXT Verification failure" i even tried the HTML verification and the code appears but also giving me the verification failure error.
Switching to Cloudflare email routing from Zoho Mail
Hello, I'm currently working on migrating from Zoho Mail to Cloudflare's email routing solution. This requires changing MX and TXT records for our custom domain - when we do this, will our users still be able to log into their accounts and access an archived
Un Subscription Button
How can i Add the Un Subscription Button in Zoho mail
Documents unable view and need to downlad
I can't view .doc files in Zoho mail unless I download them, but I can view PDF files without downloading.
we encountered a problem while sending your email. please try again later.
Adding and removing people from groups
We're having problems adding people to a group. Apparently Zoho has one email address and will not recognize a different email address.
MAIL SEARCH IS NOT WORKING
THIS ISSUE HAS BEEN BUGGING ME SINCE MORNING, PLEASE RESOLVE THIS AT THE EARLIEST
URL Parameter on Help Center SIgn in link
Is it possible to add a url parameter to the sign in link on the Help Center?
migrating from HelpScout
I am attempting to import a conversation file from helpscout into desk and am receiving size errors. What is the current file size restriction. Does anyone have any tips for a successful migration?
Layout Rules Don't Apply To Blueprints
Hi Zoho the conditional layout rules for fields and making fields required don't work well with with Blueprints if those same fields are called DURING a Blueprint. Example. I have field A that is used in layout rule. If value of field A is "1" it is supposed to show and make required field B. If the value to field A is "2" it is supposed to show and make required field C. Now I have a Blueprint that says when last stage moves to "Closed," during the transition, the agent must fill out field A. Now
Article Name Sorting in Zoho Desk Knowledge Base (agent / admin side)
Dear Zoho Desk Support, We are writing to request an enhancement to the Knowledge Base management feature within Zoho Desk. Currently, there is no option to sort articles by their name, which significantly hinders efficient article management, especially
How to parse JSON data with SQL in Zoho Analytics?
Hi all, I have a column with JSON data. I want to show this column in a chart, but it is very messy, and no JSON parsing function is supported on Zoho Analytics. data example: {"id": 5, "status": "false", "date": "15/10/22"} what I want to do in SQL is
Add an Equation Field (Or update the Formula Field)
Hi, I would like to be able to have one field as a Text Field with QR Code, and then have multiple Equation/Formula Fields that then take parts of that fields data with LEFT, MID, RIGHT, REGEX, etc. Thanks Dan
How to parse column having JSON data using SQL?
We have a daily sync from a PostgreSQL database that brings data into Zoho Analytics. Some of the columns store raw JSON data. We need to build SQL queries on top to parse data from JSON and store them in discrete columns. There is no option for "Data
Enable report button based on the current user role
Greetings i have a report that contains action buttons, i want these buttons to appear as enabled only when the current logged in user has a certain role, for example only CEO role users will be able to use this button. but when setting the conditions
500 Internal Error In Mail API
I'm getting 500 Internal Error when using mail API. I'm getting this error for this one account, it works fine for other Account IDs which I have in my system.
Zoho Sign Document upload to the Attachment section of the Zoho CRM Deals record
Hi, Is there a script I can use to attach a document once signed in the Deals record attachment section? I know that the fiels are uploaded in the Zoho Sign Document module but our client wants it in the attachment section. They are using the "Send with
Zoho live chat widget in React Js
I am trying to test Zoho live chat widget code in react js, below is the sample code void(0)} onClick={()=>window.$zoho.salesiq.floatwindow.visible("show")}>LIVE CHAT
window.$zoho = window.$zoho || {};window.$zoho.salesiq = window.$zoho.salesiq
Are there any plans to add Triggers for Subform edits?
By The Grace of G-D. Hi, How are you? Can you tell me if you have any plans to support subform edit as a workflow trigger? And what about have them trigger an "onChange" client script?
Zoho commerce
i am facing issue with order summary emails.i am getting 1 continuous email for order received yesterday and today.ideally 1 email should be received for a particular date ie for 02/08 i should received 1 email from 12.01am till 11.59pm but it is being
Feature Request: Improve Category Page Sorting for "Out of Stock" Products
Hi there, I'm writing to request a new feature that I believe would significantly improve the user experience in my online store. Currently, on category pages, products are sorted by popularity. However, when a popular product goes "Out of Stock," it
POSTMAN - There was an error in evaluating the Pre-request Script:Error: Cannot read properties of undefined (reading 'json')
I am beginning the journey to learn how to use the API for Zoho Sign. I am getting the following error when I try to use postman. To walk you through how I am getting this error... I wanted to start with a simple GET and expand my learning from there.
How do i integrate shipstation with zoho inventory
Wanting to set up my own delivery driver in ship station so we can get real time tracking of where the package is but then i want it to automatically update zoho inventory packages/shipments how can i do this
Invalid value passed for salesorder_id
Hi, I am using sales return API, details are given below: API: https://inventory.zoho.com/api/v1/salesreturns?organization_id=700571811 Post Json Data: { "salesreturn_number": "", "date": "2020-11-12", "reason": "Testing from API", "line_items": [ { "item_id":
Create Invoice and Invoice Items from Sales Order via API
Currently, when creating an Invoice associated with a Sales Order via the API, it appears that I must manually include all of the items (line_items) even though they are already part of the Sales Order. My question is this: is it possible to raise an Invoice via the API based on all of the information associated with a Sales Order--such as the items? In other words, do I always have to manually include the items (line_items) when raising an Invoice via the API when the Invoice is associated with
Outlook 2013 Calendar Syncs but "Related To" Field in Zoho is blank
Outlook 2013 Calendar Syncs but Related To Field in Zoho is blank I expect the "Realted To" field to be populated with the calendar participants
Export a Course
Is it possible to export a course from Zoho Learn to a SCORM file?
Add and Remove Agents from Departments and Groups in Zoho One
Hi Zoho Flow Team, We hope you're doing well. Currently, Zoho Flow provides an action to add an agent to a group in zoho one, but there is no action to remove an agent from a group or a department. Another action that we find missing is the option to
Consumer Financing
Does Zoho currently have a payment gateway (such as Stripe, Square, etc) which offers financing for customers? So, let's say the estimate we give the customer is greater than what they can afford at the time, but we can sell the service now, letting them
Intégration de la gestion des Passkeys dans Zoho Vault
Zoho Vault est depuis plus d’une décennie une solution fiable pour les entreprises : pour la gestion, le partage et le stockage des mots de passe. En 2018, nous avons fait un pas en avant en proposant la connexion unique (SSO). Nous sommes fiers de franchir
Next Page