Conversion Flow CRO
Purpose
Audit and optimize any multi-step conversion flow — signup, onboarding, trial-to-paid, checkout, upgrade. Map every step, find where people drop off, and fix each screen with specific copy and UX changes.
Reads
brand/audience.md — Personas, pain points, motivation levels at each stage
brand/positioning.md — Value props for reinforcement copy at each step
brand/voice-profile.md — Brand voice for all copy suggestions
Brand Integration
- audience.md — Persona determines friction tolerance. A developer persona accepts more setup steps; a non-technical buyer needs fewer. Pain points inform which value reminders to show at each step.
- positioning.md — Value proposition reinforcement copy at each step should echo the positioning angle. If the brand positions on "saves time," every motivation booster references time savings.
- voice-profile.md — All redesigned copy (headlines, CTAs, supporting text) must match brand voice. A casual brand writes "Almost there!" while a professional brand writes "One final step."
Workflow
Step 1: Map the Current Flow
Get the flow information. Try these in order:
- User provides screenshots or screen recordings — Best source, map directly
- Read the codebase — If accessible, find route files, page components, and form definitions
- User walks through the flow verbally — Accept but flag that recommendations will be more accurate with actual screens
- Use browser tool on live URL — Walk through the flow step by step
If the flow is partially provided (only some screens), audit what's available and note which steps need investigation.
Document every screen/step in the flow:
Flow: [Signup / Onboarding / Upgrade / Checkout]
Step 1: [Page/Screen name]
- URL/Route: [path]
- Fields/Actions: [what user must do]
- Copy: [headline, body, CTA]
- Friction points: [identified issues]
Step 2: [Next screen]
...
Total steps: [N]
Total required fields: [N]
Total decisions: [N]
Estimated completion time: [X minutes]
Step 2: Identify Drop-Off Points
For each step, assess drop-off risk:
| Risk Factor |
Score 1-5 |
Notes |
| Too many fields |
|
More than 3 per step = high risk |
| Unclear value |
|
User doesn't know why this step matters |
| Unexpected ask |
|
Requesting info that feels premature |
| No progress signal |
|
User doesn't know how far along they are |
| Decision fatigue |
|
Too many choices without guidance |
| Trust gap |
|
Asking for sensitive info without context |
| Technical friction |
|
Slow load, validation errors, mobile issues |
Step 3: Apply Friction Reduction
For each step, apply these principles:
Progressive Disclosure
- Ask for minimum info at each step
- Defer optional fields to later (post-signup settings)
- Start with the easiest, most natural question
- Example: Email only -> Name -> Company -> Role (not all at once)
Single-Field Starts
- First interaction should be ONE field or ONE click
- "Enter your email to get started" > 5-field signup form
- Google/GitHub OAuth as primary option, email form as secondary
Smart Defaults
- Pre-select the most common option
- Use detection (timezone, language, company size from email domain)
- Show recommended plan with visual emphasis
Motivation Maintenance
- Show progress (Step 2 of 4)
- Remind of value at each step ("You're 1 step away from [outcome]")
- Use micro-commitments (each step delivers a small win)
- Show social proof inline ("12,000 teams completed this step today")
Social Proof Injection Points
- Before payment: "Join [X] companies already using [Product]"
- During onboarding: "[Role] at [Company] set this up in 3 minutes"
- At upgrade prompt: "[X]% of free users upgrade within [Y] days"
Urgency Without Sleaze
- Real deadlines: "Trial ends in 7 days" (if true)
- Opportunity cost: "Teams using [feature] save [X] hours/week"
- Progress anchoring: "You've already set up [X] — unlock [Y] to get full value"
- Never: fake countdown timers, "only 2 left", manufactured scarcity
Step 4: Redesign Each Step
For every step in the flow, output:
### Step [N]: [Name]
**Current State:**
- Headline: "[current]"
- Fields: [list]
- CTA: "[current]"
- Issues: [specific problems]
**Redesigned:**
- Headline: "[new — ties to value]"
- Fields: [reduced/reordered list]
- CTA: "[new — action + outcome]"
- Supporting copy: "[anxiety reducer or motivation booster]"
- Social proof: "[inline proof element]"
**Changes Made:**
1. [Specific change + reasoning]
2. [Specific change + reasoning]
**Expected Impact:** [Drop-off reduction estimate]
Step 5: A/B Test Suggestions
For each high-impact change, define a test:
## A/B Test: [Test Name]
**Hypothesis:** Changing [element] from [A] to [B] will increase [metric] by [X]% because [reasoning].
**Control:** [Current version]
**Variant:** [New version]
**Primary metric:** [Conversion rate at this step]
**Secondary metric:** [Overall flow completion rate]
**Sample size needed:** [Estimate based on current traffic]
**Duration:** [Minimum 2 weeks or X conversions]
Flow-Specific Patterns
Signup Flow
- Goal: Minimize time-to-value
- Ideal: 1-2 steps max before product access
- Pattern: Email -> Magic link -> Product (skip password creation)
- Anti-pattern: Email -> Password -> Verify email -> Profile -> Team -> Product
Onboarding Flow
- Goal: Reach "aha moment" fast
- Ideal: 3-5 steps, each delivering visible value
- Pattern: Welcome -> Import data OR use template -> See first result -> Invite team
- Anti-pattern: Long feature tour -> Settings configuration -> Empty state
Trial-to-Paid Flow
- Goal: Demonstrate value before asking for money
- Ideal: Usage triggers upgrade prompt, not calendar
- Pattern: Hit feature limit -> See what you'd unlock -> One-click upgrade
- Anti-pattern: Day 13 email -> Pricing page -> Checkout -> Success
Checkout Flow
- Goal: Reduce payment anxiety
- Ideal: 1-2 steps with full transparency
- Pattern: Plan summary -> Payment (with guarantees visible) -> Confirmation
- Anti-pattern: Plan -> Billing info -> Review -> Confirm -> Upsell -> Success
Worked Example
Before: 8-step signup requiring name, email, password, company, role, team size, use case, phone
After: 3-step progressive flow:
- Email only → instant access to limited features
- After first value moment → ask name + role (contextualized: 'Help us personalize your experience')
- After 3 sessions → ask company + team size (gated behind upgrade)
Expected impact: 40-60% improvement in signup completion rate. Progressive disclosure works because each ask feels justified by the value already delivered.
Copy Templates Per Step
First Touch (Signup)
- "Get started free — no credit card required"
- "Create your [product] in 60 seconds"
- "Join [X] [role]s already using [Product]"
Mid-Flow (Onboarding Step)
- "Nice — you're [X]% set up"
- "Most [role]s complete this in under 2 minutes"
- "This step unlocks [specific feature/outcome]"
Commitment Point (Payment/Upgrade)
- "You've already [achievement] — unlock [next level]"
- "Plans start at $[X]/mo. Cancel anytime."
- "[X]-day money-back guarantee. No questions asked."
Completion
- "You're all set. Here's what to do first:"
- "[Product] is ready. Your first [outcome] is [X] away."
See references/flow-benchmarks.md for completion rate benchmarks by flow type, step-by-step drop-off patterns, mobile-specific data, and A/B test priorities. Use these to ground recommendations in real numbers.
Output
Each flow audit produces:
- Visual flow map (current state with step count, fields, decisions)
- Drop-off risk assessment per step
- Redesigned copy and UX for each step
- Prioritized A/B test suggestions
- Before/after comparison of total flow friction score
- Implementation checklist ordered by impact
Anti-Patterns
- Don't remove security steps (2FA, email verification) — flag them as necessary friction and suggest making them smoother, not removing them
- Don't skip legally required fields (KYC, age verification, GDPR consent) — these stay; optimize their placement and copy instead
- Don't simplify past compliance requirements — if a step exists for legal reasons, note it and move on
- Don't suggest removing steps without understanding the business logic behind them — ask first
- Don't use fake urgency (countdown timers, "only 2 left") — the "Urgency Without Sleaze" principles apply
- Don't optimize for signup completion at the expense of user quality — vanity signups that never activate are worse than fewer, engaged signups
Edge Cases
- Partial flow information: Audit available steps, clearly flag gaps, and ask the user for the missing screens before finalizing recommendations.
- Mobile vs. desktop divergence: If the flow differs by platform, audit both. Mobile-specific issues: tap targets, keyboard types for input fields, thumb-zone CTA placement.
- Legally required steps: Mark as "required — optimize, don't remove." Focus copy and UX improvements within the constraint.
- Enterprise/B2B flows: Longer flows are acceptable when the buyer expects a consultative process. Don't force a consumer-style 2-step signup on an enterprise product.
Quality Checks
1---2name: conversion-flow-cro3description: Optimizes multi-step conversion flows including signup, onboarding, upgrade, and checkout. Maps each step, identifies friction and drop-off risks, then recommends specific copy/UX changes with A/B test plans. Use when someone says 'signup flow', 'onboarding optimization', 'checkout conversion', 'paywall optimization', 'activation rate', 'funnel analysis', 'why are users dropping off', 'registration flow', 'trial conversion', 'free to paid', 'upgrade flow', 'user journey', or wants to improve any multi-step user journey. If they mention steps, screens, or a sequence that leads to signup, payment, or activation, this is the skill. Even casual mentions like 'users aren't finishing signup' or 'our onboarding sucks' should trigger this. Use this instead of page-cro when the problem spans multiple screens rather than a single page.4---56# Conversion Flow CRO78## Purpose910Audit and optimize any multi-step conversion flow — signup, onboarding, trial-to-paid, checkout, upgrade. Map every step, find where people drop off, and fix each screen with specific copy and UX changes.1112## Reads1314- `brand/audience.md` — Personas, pain points, motivation levels at each stage15- `brand/positioning.md` — Value props for reinforcement copy at each step16- `brand/voice-profile.md` — Brand voice for all copy suggestions1718## Brand Integration1920- **audience.md** — Persona determines friction tolerance. A developer persona accepts more setup steps; a non-technical buyer needs fewer. Pain points inform which value reminders to show at each step.21- **positioning.md** — Value proposition reinforcement copy at each step should echo the positioning angle. If the brand positions on "saves time," every motivation booster references time savings.22- **voice-profile.md** — All redesigned copy (headlines, CTAs, supporting text) must match brand voice. A casual brand writes "Almost there!" while a professional brand writes "One final step."2324## Workflow2526### Step 1: Map the Current Flow2728Get the flow information. Try these in order:291. **User provides screenshots or screen recordings** — Best source, map directly302. **Read the codebase** — If accessible, find route files, page components, and form definitions313. **User walks through the flow verbally** — Accept but flag that recommendations will be more accurate with actual screens324. **Use browser tool on live URL** — Walk through the flow step by step3334If the flow is partially provided (only some screens), audit what's available and note which steps need investigation.3536Document every screen/step in the flow:3738```39Flow: [Signup / Onboarding / Upgrade / Checkout]4041Step 1: [Page/Screen name]42- URL/Route: [path]43- Fields/Actions: [what user must do]44- Copy: [headline, body, CTA]45- Friction points: [identified issues]4647Step 2: [Next screen]48...4950Total steps: [N]51Total required fields: [N]52Total decisions: [N]53Estimated completion time: [X minutes]54```5556### Step 2: Identify Drop-Off Points5758For each step, assess drop-off risk:5960| Risk Factor | Score 1-5 | Notes |61|------------|-----------|-------|62| Too many fields | | More than 3 per step = high risk |63| Unclear value | | User doesn't know why this step matters |64| Unexpected ask | | Requesting info that feels premature |65| No progress signal | | User doesn't know how far along they are |66| Decision fatigue | | Too many choices without guidance |67| Trust gap | | Asking for sensitive info without context |68| Technical friction | | Slow load, validation errors, mobile issues |6970### Step 3: Apply Friction Reduction7172For each step, apply these principles:7374#### Progressive Disclosure75- Ask for minimum info at each step76- Defer optional fields to later (post-signup settings)77- Start with the easiest, most natural question78- Example: Email only -> Name -> Company -> Role (not all at once)7980#### Single-Field Starts81- First interaction should be ONE field or ONE click82- "Enter your email to get started" > 5-field signup form83- Google/GitHub OAuth as primary option, email form as secondary8485#### Smart Defaults86- Pre-select the most common option87- Use detection (timezone, language, company size from email domain)88- Show recommended plan with visual emphasis8990#### Motivation Maintenance91- Show progress (Step 2 of 4)92- Remind of value at each step ("You're 1 step away from [outcome]")93- Use micro-commitments (each step delivers a small win)94- Show social proof inline ("12,000 teams completed this step today")9596#### Social Proof Injection Points97- Before payment: "Join [X] companies already using [Product]"98- During onboarding: "[Role] at [Company] set this up in 3 minutes"99- At upgrade prompt: "[X]% of free users upgrade within [Y] days"100101#### Urgency Without Sleaze102- Real deadlines: "Trial ends in 7 days" (if true)103- Opportunity cost: "Teams using [feature] save [X] hours/week"104- Progress anchoring: "You've already set up [X] — unlock [Y] to get full value"105- Never: fake countdown timers, "only 2 left", manufactured scarcity106107### Step 4: Redesign Each Step108109For every step in the flow, output:110111```markdown112### Step [N]: [Name]113114**Current State:**115- Headline: "[current]"116- Fields: [list]117- CTA: "[current]"118- Issues: [specific problems]119120**Redesigned:**121- Headline: "[new — ties to value]"122- Fields: [reduced/reordered list]123- CTA: "[new — action + outcome]"124- Supporting copy: "[anxiety reducer or motivation booster]"125- Social proof: "[inline proof element]"126127**Changes Made:**1281. [Specific change + reasoning]1292. [Specific change + reasoning]130131**Expected Impact:** [Drop-off reduction estimate]132```133134### Step 5: A/B Test Suggestions135136For each high-impact change, define a test:137138```markdown139## A/B Test: [Test Name]140141**Hypothesis:** Changing [element] from [A] to [B] will increase [metric] by [X]% because [reasoning].142143**Control:** [Current version]144**Variant:** [New version]145**Primary metric:** [Conversion rate at this step]146**Secondary metric:** [Overall flow completion rate]147**Sample size needed:** [Estimate based on current traffic]148**Duration:** [Minimum 2 weeks or X conversions]149```150151## Flow-Specific Patterns152153### Signup Flow154- Goal: Minimize time-to-value155- Ideal: 1-2 steps max before product access156- Pattern: Email -> Magic link -> Product (skip password creation)157- Anti-pattern: Email -> Password -> Verify email -> Profile -> Team -> Product158159### Onboarding Flow160- Goal: Reach "aha moment" fast161- Ideal: 3-5 steps, each delivering visible value162- Pattern: Welcome -> Import data OR use template -> See first result -> Invite team163- Anti-pattern: Long feature tour -> Settings configuration -> Empty state164165### Trial-to-Paid Flow166- Goal: Demonstrate value before asking for money167- Ideal: Usage triggers upgrade prompt, not calendar168- Pattern: Hit feature limit -> See what you'd unlock -> One-click upgrade169- Anti-pattern: Day 13 email -> Pricing page -> Checkout -> Success170171### Checkout Flow172- Goal: Reduce payment anxiety173- Ideal: 1-2 steps with full transparency174- Pattern: Plan summary -> Payment (with guarantees visible) -> Confirmation175- Anti-pattern: Plan -> Billing info -> Review -> Confirm -> Upsell -> Success176177## Worked Example178179**Before:** 8-step signup requiring name, email, password, company, role, team size, use case, phone180**After:** 3-step progressive flow:1811. Email only → instant access to limited features1822. After first value moment → ask name + role (contextualized: 'Help us personalize your experience')1833. After 3 sessions → ask company + team size (gated behind upgrade)184185**Expected impact:** 40-60% improvement in signup completion rate. Progressive disclosure works because each ask feels justified by the value already delivered.186187## Copy Templates Per Step188189### First Touch (Signup)190- "Get started free — no credit card required"191- "Create your [product] in 60 seconds"192- "Join [X] [role]s already using [Product]"193194### Mid-Flow (Onboarding Step)195- "Nice — you're [X]% set up"196- "Most [role]s complete this in under 2 minutes"197- "This step unlocks [specific feature/outcome]"198199### Commitment Point (Payment/Upgrade)200- "You've already [achievement] — unlock [next level]"201- "Plans start at $[X]/mo. Cancel anytime."202- "[X]-day money-back guarantee. No questions asked."203204### Completion205- "You're all set. Here's what to do first:"206- "[Product] is ready. Your first [outcome] is [X] away."207208See `references/flow-benchmarks.md` for completion rate benchmarks by flow type, step-by-step drop-off patterns, mobile-specific data, and A/B test priorities. Use these to ground recommendations in real numbers.209210## Output211212Each flow audit produces:213- Visual flow map (current state with step count, fields, decisions)214- Drop-off risk assessment per step215- Redesigned copy and UX for each step216- Prioritized A/B test suggestions217- Before/after comparison of total flow friction score218- Implementation checklist ordered by impact219220## Anti-Patterns221222- Don't remove security steps (2FA, email verification) — flag them as necessary friction and suggest making them smoother, not removing them223- Don't skip legally required fields (KYC, age verification, GDPR consent) — these stay; optimize their placement and copy instead224- Don't simplify past compliance requirements — if a step exists for legal reasons, note it and move on225- Don't suggest removing steps without understanding the business logic behind them — ask first226- Don't use fake urgency (countdown timers, "only 2 left") — the "Urgency Without Sleaze" principles apply227- Don't optimize for signup completion at the expense of user quality — vanity signups that never activate are worse than fewer, engaged signups228229## Edge Cases230231- **Partial flow information:** Audit available steps, clearly flag gaps, and ask the user for the missing screens before finalizing recommendations.232- **Mobile vs. desktop divergence:** If the flow differs by platform, audit both. Mobile-specific issues: tap targets, keyboard types for input fields, thumb-zone CTA placement.233- **Legally required steps:** Mark as "required — optimize, don't remove." Focus copy and UX improvements within the constraint.234- **Enterprise/B2B flows:** Longer flows are acceptable when the buyer expects a consultative process. Don't force a consumer-style 2-step signup on an enterprise product.235236## Quality Checks237238- [ ] Total steps reduced or justified239- [ ] Every field has a clear reason to exist at that step240- [ ] Progress indicator present throughout241- [ ] Value reminder at each step242- [ ] Social proof placed at high-anxiety moments243- [ ] CTA copy is action + outcome, not generic244- [ ] Mobile experience considered for every step245- [ ] Error states are helpful, not punishing246- [ ] Security and compliance steps preserved (not removed)247- [ ] Copy rewrites match brand voice (if voice-profile.md exists)