User flow / task flow
The ordered screens, decisions, and clicks a user moves through to finish one goal, like 'sign up' or 'refund an order'.
See it
What it is
A user flow is the ordered path someone takes to finish one goal: the screens, the decisions, the branches, and the exits. Drawn as boxes (screens), diamonds (decisions), and arrows, it is the cheapest artifact in product design, because a missing branch costs one arrow on paper and two weeks in code. Task flow is the stricter cousin: one user, one goal, no branching, useful for measuring steps. A journey map is not a synonym: it zooms out to phases, channels, emotions, and touchpoints across the whole relationship, while a flow stays inside one product and one goal.
Draw one before building anything multi-screen: signup, checkout, onboarding, invite a teammate, cancel a subscription. Start at the entry point (which can be an email link or a deep link, not always the home page), end at the state where the user actually got the thing, and mark every decision point where the answer could be no. Flows also give AI tools something to build against: a numbered flow generates far better screens than 'make a signup'.
Gotcha: most flows drawn in a hurry only show the happy path. The value sits in the branches nobody drew, like the email already exists, the invite expired, the payment failed, the user hit back mid-flow. Add the return paths too, because a flow with no way backwards ships as a trap.
Ask AI for it
Map the complete user flow for [goal, e.g. inviting a teammate] in this app. Output it as a numbered list plus a Mermaid flowchart, using boxes for screens, diamonds for decisions, and labelled arrows for outcomes. Start from every realistic entry point (in-app, email link, deep link) and end at the state where the user has achieved the goal. Include every branch, not just the happy path: validation failures, already-exists cases, expired or unauthorized states, empty results, and the back or cancel path from each step. For each screen, list the primary action, the secondary action, and the escape hatch. Keep the number of required steps as low as the data allows and call out any step that could be removed.