{"slug":"wizard","meta":{"title":"Wizard","slug":"wizard","kind":"pattern","summary":"A long, genuinely required task broken into ordered steps with visible progress — so the person faces a few decisions at a time instead of forty at once.","problem":"Some tasks really do need a lot of information, and presenting it as one long form produces a wall that people scroll, lose their place in, and abandon. Worse, they cannot tell how much is left, so they cannot decide whether to start.","family":["capture","workflow"],"data_shape":["record"],"principles":["progressive-disclosure","orientation","friction"],"interaction":["navigation","editing"],"density":"low","complexity":"medium","status":"stable","visibility":"public","use_when":["The information genuinely is all required before the thing can exist.","Later questions depend on earlier answers, so order matters.","The task is done rarely, by people who do not know the domain well.","Getting it wrong is expensive enough to justify a guided path."],"avoid_when":["The fields could simply be deferred. Shorten the form instead of sequencing it.","People do this every day. Experts want one dense screen, not seven pages.","The steps are independent, so forcing an order adds nothing but clicks."],"alternatives":[{"slug":"minimal-form","when":"The information is not actually all required now — the usual case."},{"slug":"checklist-workflow","when":"The steps happen over days by different people, not in one sitting."}],"ask_leo":"Turn this long form into a wizard.\n\n- Group the fields into three to six steps, each with a name that says what it\n  is about. One step should be answerable in under a minute.\n- Show every step and the current position at all times — \"Step 2 of 5\", with\n  the step names visible, so the size of the task is never a surprise.\n- Let people go back freely, and let them jump back to any completed step.\n  Only forward movement is gated.\n- Validate each step when leaving it, and show errors on that step. Never\n  reveal an error from step two while the person is on step five.\n- Save progress as they go, so closing the browser does not lose the work.\n  Say that progress is saved.\n- The final step is a summary of everything entered, with a way to jump back\n  and change any of it, before the single confirming action.\n- Name the last button after the outcome — \"Create the account\", not \"Finish\".\n- If a step can be skipped, say so on the step itself and make skipping an\n  explicit choice rather than an empty submit.\n","related":[{"title":"Minimal Form","url":"/patterns/minimal-form","summary":"Check this first — most wizards are long forms that were never questioned."},{"title":"Linear Workflow","url":"/patterns/linear-workflow","summary":"The same shape across days and people rather than within one sitting."}]},"body":"## Anatomy\n\n```\n  ①──────②──────③──────④──────⑤\n  Company Contacts Billing Users  Review\n   done    done    ● here   ·      ·\n                   Step 3 of 5 · progress saved\n\n  [ ← Back ]                        [ Continue → ]\n```\n\n- **The whole path is visible.** A wizard that reveals steps one at a time is a\n  maze; people need to see the size of what they agreed to.\n- **Back is free, forward is gated.** Going back to check something must never\n  cost anything, or people will not check.\n- **Per-step validation.** Errors belong on the step that owns them, at the\n  moment of leaving it.\n- **Progress persists**, and says so, or a wizard becomes a thing you must\n  finish in one sitting.\n- **A review step**, because by step five nobody remembers step one.\n\n## Why it works\n\nIt bounds working memory. Five decisions is a task; forty is a project, and\npeople treat it like one — they postpone it. Chunking does not reduce the work,\nit makes the work *startable*.\n\nThe progress indicator does something the chunking alone cannot: it converts an\nunknown quantity into a known one. \"Step 2 of 5\" is the difference between \"I\nwill do this later\" and \"I can finish this now\", and it is the single most\nvaluable element on the screen.\n\n## Check first that you need one\n\nMost wizards are long forms that nobody questioned. Before sequencing forty\nfields, apply the [minimal form](/patterns/minimal-form) test to each one: can it\nbe defaulted, derived, deferred, or dropped? A wizard built over fields that did\nnot need asking is a well-organised waste of everyone's time.\n\nThe legitimate cases are narrow: the information really is required now,\nlater questions depend on earlier answers, and the person does not do this often\nenough to want density.\n\n## Getting it wrong\n\n- **Hidden length.** No step count, so the person cannot decide whether to\n  start.\n- **No going back**, which turns a mistake at step two into a restart.\n- **All errors at the end.** A wizard that validates only on submit has the\n  weakness of a long form plus the length of a wizard.\n- **No saved progress**, so an interruption is a total loss.\n- **Steps of wildly uneven size** — three fields, then twenty — which makes the\n  progress indicator lie.\n- **A wizard for experts**, who will resent every click and want the dense form.\n\n## Exemplars\n\n**Stripe's onboarding** is the case where a wizard is genuinely warranted:\nregulatory information really is all required, it really does depend on earlier\nanswers, and it saves progress across sessions because it can take days.\n\n**TurboTax** is the pattern at its largest scale, and the lesson is the review\nstep — after a hundred questions, the summary is where trust is either\nestablished or lost.\n\n**Most SaaS \"setup wizards\"** are the counter-example: five steps of\nconfiguration before the person has seen the product do anything. That is the\n*configuration before value* anti-pattern wearing a progress bar.\n\nThe extractable rule: **a wizard organises necessary work; it cannot make\nunnecessary work acceptable.** Justify the fields before you sequence them.\n"}