User Flows
Overview
User flows describe how someone moves through a product to accomplish a goal. They expose decision points, alternative paths, and dead ends before pixels are drawn.
When to Use
- Planning new multi-step features
- Simplifying convoluted existing experiences
- Aligning product, design, and engineering on logic
- Identifying where errors and edge cases occur
Core Elements
- Entry points and success end states
- Steps and decision points
- Branches (success, failure, alternative)
- System decisions vs user decisions
- Loops and exits
Principles
- Start from the user’s goal, not the UI hierarchy
- Optimize the primary path; don’t ignore recovery paths
- Reduce unnecessary steps and decision fatigue
- Make flows the shared source of truth before high-fidelity design
- Update flows when product logic changes
Verification
- Primary path is clear and as short as practical
- Major edge cases and errors are represented
- Stakeholders agree on the logic before build