Failure Branches Included
What happens when a step does not succeed.
Screens designed before the sequence is agreed produce a set of pages that do not connect. User flow design settles that first: what happens in what order, where the decisions are, and what occurs on the branches — the failures, the reversals and the interruptions that otherwise get discovered in production.
The happy path is the easy part and it is usually the only part anyone maps.
What happens when a step does not succeed.
Going back, which most flows treat as an exception.
People arrive mid-flow from links and emails.
Leaving and returning, on a different device.
Because reordering a flow after screens exist is expensive.
Four things, and settling them before design saves the most rework.
Discuss Your Flow →What is asked when, which decides completion more than field count.
Where the path splits and on what basis.
What happens when a step cannot complete.
Leaving partway and coming back.
The complete map, including everything that is not the happy path.
Once the flow is settled, wireframe design turns it into screens.
Map the happy path, then spend most of the time on everything else.
What the flow is for, and what completing it means.
The sequence when everything works.
Failures, reversals, interruptions and re-entry.
What is asked when, and whether it could be later.
Walked through with real cases before design begins.
The happy path is a straight line and takes an hour. Everything else takes the rest of the week.
What happens when a payment fails, an email does not arrive, a code expires, a user closes the tab halfway, or the same person starts again on another device.
Each is common enough to occur daily at any real volume, and none is on the flow diagram, so each gets handled improvised at build time by whoever hits it first.
The result is inconsistent behaviour across a single flow — one failure returns to the start, another shows an error, a third silently loses everything.
Because completion depends heavily on when something is asked rather than how much is asked in total.
Requesting personal details before showing whether the thing exists loses people who would happily have provided them afterwards. Same fields, different order, very different completion.
This is why the flow is settled before screens are drawn — reordering a sequence on a diagram costs minutes, and reordering it after eight screens exist costs a redesign.







User flow design maps the sequence, decision points and branches of a task before screens are designed — including failure paths, reversals, mid-flow entry and interruption.
Because screens designed before the sequence is agreed produce pages that do not connect, and reordering after they exist means redesigning them.
The branches — failed payments, expired links, closed tabs, resuming on another device. Each is common at real volume and none appears on a happy-path diagram, so each gets improvised at build time.
More than the number of them. The same fields in a different order can produce very different completion, which is why sequence is settled on a diagram rather than discovered in a build.
A flow settles sequence; wireframes settle what each screen contains and how it is prioritised. The flow comes first.
Still deciding if user flow design is right for you?
Talk to UsFlow diagrams get drawn as a sequence of boxes with arrows between them: start, step, step, step, done. It takes an hour and it describes what happens when nothing goes wrong.
Nothing goes wrong perhaps two-thirds of the time. The rest is a payment declining, a link expiring, a tab closing, someone resuming on their phone — none of which is on the diagram.
So each of those gets decided during implementation, by whoever encounters it, differently each time. The flow ends up with three inconsistent failure behaviours that nobody designed and nobody can explain.
Tell us what the task is. We will map the sequence and the branches, including the ones that usually get discovered in production.
