Multi-step forms need a total and a current position
Aliases: stepper · wizard progress · step x of n
What it is
Once a long form is split across screens, people lose direct visual evidence of how much remains. A stepper has to state two facts at once: how many steps there are, and which step this is. “Next” alone, a percentage bar with no denominator, or a named step that later sprouts extra pages, all leave the endpoint unknown. This entry is about making remaining work estimable after paging. It is not about how many fields belong on one screen, and not about how paging blocks later cross-checking.
Why it happens
The goal-gradient effect says motivation rises as the end comes into view—but only if the end is visible. Paging hides form length inside routing. If the UI only says continue, the next view might be the last or the tenth; expectation cannot converge. Position information turns unknown remainder into a computable gap such as 3/5, so time already spent can be mapped onto time still owed. Step names (account, shipping, pay) set content expectations; the numeric denominator sets quantity. Missing either makes the following screen a surprise. Names without a total make a last-minute “review” page feel like a bait-and-switch; a total whose current index skips makes people think they missed a page or the system broke.
Studying it
Run a wizard task and vary how progress is shown: none, current name only, “step x of n”, or a bar that inserts steps mid-way.
Independent variables: whether a denominator is shown, whether the count changes mid-flow, whether step names match the screen’s actual questions. Dependent variables: completion, screen of leaving, error in remaining-time estimates, whether people later say a step was sprung on them.
Lab tasks are short and the step count is known in advance, which compresses the gradient. Live funnels that silently inject “create an account” into checkout contaminate the measurement: that is a trust break, not a test of stepper chrome. When branching truly changes the total, test “at most n steps” separately from “your answers made it n steps”; do not conflate an honest moving denominator with a lying one.
Where it stops holding
A heavy stepper on a two-step flow is overkill; copy that says “one more step” is often enough. Generation, search, and review processes with no fixed end must not pretend to have an n. Compliance pages that appear only after sign-in and were never in the denominator already break the indicator even if people finish. Experts who fill an internal wizard repeatedly may replace the stepper with a jumpable step list; that is navigation, not reassurance.
Applying it
- Show “current / total” on every step of a paged form, with names that match what that screen actually collects.
- Lock the total when the wizard starts. If branching drops steps, update the denominator and say “based on your answers, k left”; never insert an unannounced page at the end.
- Allow review of completed steps, but do not treat back-navigation as the only cue for “which step is this.”
- Verify by stopping someone uninvolved on each screen and asking how many steps there are, which one this is, and what the next screen will ask. Failure to name the denominator, or wild guesses about the next screen, means the indicator has failed.