DESIGNING THE PATHS
USERS ACTUALLY TAKE
FROM INTENT TO
OUTCOME

Across roles I've designed the paths users take from intent to outcome: onboarding, configuration, creation, error recovery, edit and undo, multi-step setup. This page collects four recent flow projects in enterprise B2B SaaS, each a complex creation or migration experience rebuilt around how people actually work and grounded in research I ran myself.

Role
Lead Product Designer
Discipline
Flow design, UX research, prototyping, spec
Context
Enterprise B2B SaaS platform
Flows in this study
04
FLOW 01 / 04
Bulk link creation
CSV WIZARD MULTI-STEP SETUP ERROR RECOVERY RESEARCH-LED
+ ONE FORM MANY LINKS
Fig. — One action, many links
The problem

Enterprise customers needed to create links at scale, but the only path was a single-item form repeated by hand or a homegrown spreadsheet workaround. Demand ranged widely: some teams needed thousands of links at once, others worked in tightly-named batches of a handful. The team had a CSV-based bulk creation wizard in prototype, with no evidence it worked for the people who'd use it daily.

What I did

I ran my own usability research across three groups: internal team members moderated, current customers unmoderated, and external growth marketers unmoderated. I synthesized the findings into a phased design: a download-template, fill, upload, validate, create flow scaled for tens of thousands of records in a single file. Validation moved up front, so the system returns valid, invalid, and blank counts before anything is created. A two-tab preview splits clean records from errors and lets someone download just the failed rows, fix them, and re-upload. I sequenced it into three milestones so the highest-value path shipped first.

Error states are universally the biggest blocker. Users hit errors they couldn't resolve. The flow works, but it doesn't teach. Research synthesis, cross-group findings
3
Milestones sequenced so the core upload-and-validate path shipped first
14
Participants total across media, entertainment, and financial services
5/7
Named error recovery as the top blocker, which set the design priority
FLOW 02 / 04
Bulk link editing
STEPPED WIZARD EDIT & UNDO PARTIAL SUCCESS SAFETY
EDIT SELECTED ROWS
Fig. — Edit across a selection
The problem

Links go stale. App paths change, tags get set wrong at creation, onboarding mistakes compound. Customers had no way to edit links in bulk, so they pinged an admin to fix each one by hand. The challenge: a flow that edits across three tiers of fields, analytics tags, routing and behavior, and social metadata, without letting someone accidentally change the wrong set of links.

What I did

I mapped the flow from the PRD, then ran a design critique that surfaced the gaps: no back navigation, undefined cancel behavior, no enforcement of the selection limit, an unresolved partial-success state. I moved the design to a stepped wizard with a persistent left rail showing exactly which links were selected, so the affected set is always visible before any change is applied. Customer interviews reinforced the safety requirement directly.

Before the last screen, make it perfectly clear which links you're editing. Show me the list. Enterprise customer, media & entertainment
3
Tiers of editable fields unified into one coherent flow
5
Flow gaps surfaced and resolved through structured critique
0
Silent edits: the affected link set is always shown before apply
FLOW 03 / 04
A/B test variants
CREATION FLOW EDGE CASES TRAFFIC LOGIC ENG-READY SPEC
A 50% B 30% C 20% TRAFFIC = 100%
Fig. — Traffic that sums to 100
The problem

The campaign builder needed an A/B testing section so marketers could test creative variants against each other. Experimentation flows are deceptively complex: traffic has to sum correctly, the control case has to be unambiguous, and the interface has to behave whether someone has one variant or twenty.

What I did

I pinpointed every flow and edge case before handoff: entry states for one versus multiple variants, traffic that doesn't sum to 100 percent, the can't-delete-the-last-variant rule, maximum variant count, holdout group behavior, and what control actually means. I mapped them into a single diagram and wrote the flow up so engineering could build it without coming back with questions.

Scope

Variant management from one to twenty variants, per-variant traffic control, and adjustable holdout groups, validated live with enterprise customers before refinement.

1–20
Variants the flow supports, with the interface adapting at each count
6+
Edge cases resolved in spec before engineering handoff
3
Enterprise customers validated the flow live before refinement
FLOW 04 / 04
Configuration migration
PLATFORM MIGRATION CONFIG + RUNTIME ZERO BREAKING CHANGES SYSTEMS
LEGACY NEW CONFIG MIGRATION
Fig. — Moved without disruption
The problem

A legacy feature set was being migrated into a redesigned platform experience. Two configuration surfaces had to move without disrupting the customers depending on them. The job: make the new location feel like an upgrade while preserving existing behavior exactly.

What I did

I mapped both features as paired configuration and runtime flows: the configuration path for where settings live in the new navigation, the runtime path for what the end user experiences when a link fires. I designed the create, edit, and apply paths to converge at a shared runtime, and built the migration in so existing configurations carried over automatically, with no customer action required and behavior preserved.

Carry the old behavior over untouched, and let the new home earn the move on its own. Design principle, migration work
2
Features migrated as paired configuration and runtime flows
3
Entry paths, create, edit, and apply, converging at a shared runtime
0
Breaking changes: configurations auto-migrate, behavior preserved