---
name: cro
description: "Use when optimizing landing pages, signup flows, checkout processes, or any user-facing page for higher conversion rates - before A/B testing."
user-invocable: true
argument-hint: "[page path or component]"
allowed-tools: Read, Bash, Glob, Grep
---
# /cro - Conversion Rate Optimization
Audit pages and flows for conversion friction - identifying drop-off points, persuasion gaps, and technical blockers - then produce prioritized recommendations with testable A/B hypotheses.
**Target:** $ARGUMENTS
## When to Use
- Before launching a landing page or signup flow
- When conversion rates are below industry benchmarks
- After redesigning a checkout or onboarding flow
- When bounce rate is high on key pages
- Before running paid traffic to a page
- When `@marketing` Growth mode needs structured CRO analysis
- NOT for: SEO issues (use `/seo-audit`)
- NOT for: general design quality (use `/design-review`)
- NOT for: copy creation (use `/copywriting`)
## Workflow
### Step 1: Page & Flow Analysis
1. **Read the target page/component:**
```bash
# Find the page/component code
find $TARGET -type f \( -name "*.tsx" -o -name "*.vue" -o -name "*.svelte" -o -name "*.astro" \) | head -20
```
2. **Identify the conversion goal:**
- Signup (form submission)
- Purchase (checkout completion)
- Download (file/app download)
- Contact (form/chat initiation)
- Engagement (feature activation)
3. **Map the user flow:**
```markdown
## User Flow
[Entry point] → [Step 1] → [Step 2] → ... → [Conversion]
Example:
Landing page → Pricing section → Signup form → Email verification → Dashboard
```
4. **Identify drop-off points** - Where in the flow might users leave?
### Step 2: Friction Audit
Check for conversion killers:
| Friction Type | What to Look For | Impact |
|---------------|------------------|--------|
| Form friction | Too many fields, required fields, no autofill | HIGH |
| Cognitive load | Too many choices, unclear hierarchy, wall of text | HIGH |
| Trust deficit | No social proof, no security badges, unclear pricing | HIGH |
| Speed friction | Slow loading, heavy JS, unoptimized images | HIGH |
| Navigation friction | Can't find CTA, buried below fold, confusing layout | MEDIUM |
| Mobile friction | Small touch targets, horizontal scroll, unreadable text | MEDIUM |
| Copy friction | Unclear value prop, jargon, no urgency | MEDIUM |
| Technical friction | Broken forms, validation errors, payment failures | CRITICAL |
```bash
# Count form fields (friction indicator)
grep -rn "/dev/null | wc -l
# Check for form validation UX
grep -rn "onBlur\|onChange.*validation\|zod\|yup\|formik\|react-hook-form\|vee-validate" $TARGET --include="*.tsx" --include="*.vue" 2>/dev/null | head -10
# Check for loading/performance issues
grep -rn "useEffect\|onMounted\|onMount" $TARGET --include="*.tsx" --include="*.vue" --include="*.svelte" 2>/dev/null | head -10
# Check image optimization
grep -rn "
/dev/null | grep -v "next/image\|nuxt-img\|loading=" | head -10
```
### Step 3: Persuasion Checklist (Cialdini's Principles)
Evaluate each persuasion principle:
| Principle | Implementation | Status |
|-----------|---------------|--------|
| **Reciprocity** | Free value before asking (free trial, guide, tool) | [Present/Missing] |
| **Scarcity** | Limited time/quantity indicators (genuine, not fake) | [Present/Missing] |
| **Authority** | Expert endorsements, certifications, press logos | [Present/Missing] |
| **Social Proof** | Testimonials, user count, ratings, case studies | [Present/Missing] |
| **Liking** | Relatable brand voice, user stories, team photos | [Present/Missing] |
| **Commitment** | Micro-conversions (email first, then full signup) | [Present/Missing] |
| **Unity** | Shared identity ("Join 10,000 developers like you") | [Present/Missing] |
```bash
# Check for social proof elements
grep -rn "testimonial\|review\|rating\|customer\|users\|trusted" $TARGET --include="*.tsx" --include="*.vue" --include="*.astro" 2>/dev/null | head -10
# Check for trust signals
grep -rn "secure\|ssl\|encrypted\|guarantee\|money-back\|badge" $TARGET --include="*.tsx" --include="*.vue" 2>/dev/null | head -10
```
### Step 4: Copy & CTA Audit
| Check | Best Practice |
|-------|---------------|
| Headline clarity | Value proposition clear in <3 seconds |
| Above-the-fold | CTA visible without scrolling |
| CTA text | Action verb + benefit (not "Submit" or "Click here") |
| CTA contrast | Visually distinct from surrounding content |
| Value before form | User understands benefit before filling fields |
| Objection handling | FAQ, guarantees, or trust signals near CTA |
| Urgency | Genuine deadline or limited availability (if applicable) |
```bash
# Check CTA button text
grep -rn "type=\"submit\"\|