Friction Detection
Rise automatically identifies where users get stuck, confused, or frustrated.
What is Friction?
Friction is any resistance users encounter when trying to accomplish their goals:
- Dead clicks - Clicking on non-interactive elements
- Rage clicks - Rapidly clicking the same element repeatedly
- Confusion loops - Repeating the same sequence (A→B→A→B)
- Backtracking - Going back and forth, undoing progress
- Idle time - Long pauses (uncertainty, reading error messages)
- Dead-ends - Paths that don't lead to goal completion
Friction Index (FI)
Rise calculates a friction score for each workflow, page, or user segment:
FI = weighted_score(
dead_clicks × 1.0 +
rage_clicks × 2.0 +
loops × 1.5 +
backtracking × 1.2 +
idle_time × 0.8 +
dead_ends × 2.5
)
Interpretation:
- FI < 2.0: Low friction (smooth experience)
- FI 2.0-5.0: Moderate friction (some rough edges)
- FI 5.0-8.0: High friction (significant issues)
- FI > 8.0: Severe friction (major UX problems)
Friction Signals
Dead Clicks
Clicking on elements that aren't actually clickable:
Example:
Element: Text label "Export" (looks like link, but isn't)
Dead clicks: 124 in past week
Users affected: 89
Insight: Users think it's clickable. Make it a button or change styling.
Rage Clicks
Rapidly clicking the same element (frustration):
Example:
Element: "Submit" button (disabled during processing)
Rage click sessions: 67
Avg clicks in rapid succession: 8.2
Insight: No loading indicator. Users think it's broken.
Solution: Add spinner/disable state with "Processing..." message
Confusion Loops
Repeating the same navigation sequence:
Example:
Pattern: Settings → Profile → Settings → Profile → Settings
Frequency: 156 users (12%)
Avg repetitions: 3.4
Insight: Users looking for something, can't find it.
Investigation: Looking for "Change Password" which is in Account, not Profile or Settings.
Solution: Consolidate account management or add breadcrumbs.
Backtracking
Going backwards, undoing progress:
Example:
Workflow: Create Report → Select Template → [Back] → Create Report → Select Template
Frequency: 23% of report creation attempts
Insight: Users unsure about template choice. Preview not clear enough.
Solution: Add template preview/comparison before selection.
Idle Time
Long pauses indicating uncertainty:
Example:
Page: Export Format Selection
Avg time on page: 2m 45s
Expected time: 15s
Idle time analysis:
- 78% of users pause 30s+ before selecting
- 34% read help text
- 12% return to this page multiple times
Insight: Format options unclear. Users unsure which to choose.
Solution: Add format descriptions, common use cases, or smart default.
Dead-Ends
Users reach a point where they can't proceed:
Example:
Path: Dashboard → Reports → Filter by Date → [Empty Result] → Exit
Frequency: 234 sessions
Exit rate: 87% (they give up)
Insight: Date filters returning no data. Users don't know how to fix.
Solution: Show helpful message "No data for this period. Try [Last 30 Days]"
Friction Heatmaps
Visual overlay showing friction hotspots:
Page-Level Heatmap
Reports Page:
🟢 Dashboard link - FI: 0.2 (smooth)
🟢 Templates - FI: 0.8 (good)
🟡 Custom builder - FI: 3.2 (moderate)
🔴 Advanced options - FI: 7.8 (high friction!)
🔴 Save button - FI: 6.5 (often missed/unclear)
Action: Investigate red zones first.
Workflow Heatmap
Signup Flow:
Step 1 (Email): FI 1.2 🟢
Step 2 (Password): FI 2.1 🟢
Step 3 (Company): FI 8.9 🔴 ← BIG PROBLEM
Step 4 (Role): FI 1.8 🟢
Step 5 (Complete): FI 0.5 🟢
Insight: Step 3 (Company) has severe friction. 61% drop-off at this step.
Investigation:
Company Field Issues:
- Autocomplete failing: 45% of attempts
- Validation errors: "Company name too short" (confusing)
- Users trying to skip: 67% (but it's required)
Solutions:
1. Fix autocomplete API
2. Make field optional
3. Clarify why it's needed
4. Pre-fill from email domain
Contextual Friction Analysis
Rise shows why friction occurs:
Example: Export Button Friction
Observation: Export button has FI 5.2 (high)
Contextual Breakdown:
When data present on screen:
- FI: 1.8 (low friction) ✅
- Success rate: 92%
When NO data (empty state):
- FI: 12.4 (severe friction!) ❌
- Confusion: Users click, get error, don't understand
- Dead clicks: 89
- Rage clicks: 34
- Success rate: 8%
Insight: Button should be disabled when no data, with tooltip explaining why.
Example: Search Friction
Observation: Search has FI 6.8 (high)
Contextual Breakdown:
Zero results searches: 42% of all searches
Common zero-result searches:
- "reports" (page is called "Analytics")
- "export" (button labeled "Download")
- "settings" (in different location)
Insight: Terminology mismatch between users' mental models and UI labels.
Solutions:
1. Add search synonyms
2. Update UI labels to match common terms
3. Show "Did you mean...?" suggestions
Friction Alerts
Rise alerts you to new or increasing friction:
Real-Time Alerts
🔴 Alert: High friction detected
Page: Checkout
FI increased from 2.1 → 8.7 (↑314%)
Started: 2 hours ago
Users affected: 67
Top signals:
- Rage clicks on "Pay Now" button: 45 instances
- Error messages: "Card declined" (but payment actually processing)
Likely cause: Payment processor latency increased
Recommended action: Add better loading state, timeout handling
Trend Alerts
⚠️ Alert: Friction trending up
Workflow: Report Creation
FI: 3.2 → 4.8 (↑50%) over past 7 days
Contributing factors:
- Template selection confusion (↑80%)
- Backtracking increased (↑45%)
Possible cause: New templates added, but poor organization
Recommended action: Reorganize templates, add search/filter
Segment-Specific Friction
Different users experience different friction:
By User Type
Export Workflow FI:
Power Users: 1.2 (know exactly what to do)
Regular Users: 4.5 (some confusion)
New Users: 9.1 (high confusion)
Insight: New users need guidance. Create Rise Job targeting them.
By Device
Checkout Flow FI:
Desktop: 2.8 (acceptable)
Mobile: 7.9 (high!)
Insight: Mobile UX needs work. Form doesn't fit screen, typing errors common.
By Context
Report Creation FI:
With data: 3.2 (normal)
Without data (empty state): 11.8 (severe!)
Insight: Empty state experience is terrible. Guide users to populate data first.
Reducing Friction with Rise
Automated Interventions
Rise can automatically help when friction detected:
Scenario 1: Loop Detected
User: Settings → Profile → Settings → Profile
Rise intervention:
"Looking for something? I can help you find it."
[Chat opens with context-aware assistant]
Scenario 2: Dead Clicks
User: Clicks non-interactive "Export" label 3 times
Rise intervention:
[Highlight actual Export button]
"Export is here! Click to download your data."
Scenario 3: Idle Time
User: On "Select Format" page for 90 seconds
Rise intervention:
"Not sure which format? CSV works great with Excel and Google Sheets."
[Suggests most common choice based on user type]
Friction-Based Jobs
Create Jobs targeting high-friction areas:
Job: "Streamline Export"
Target: Users with FI > 6.0 on export workflow
Goal: Reduce friction, increase completion
Actions:
- Pre-select common format
- Auto-fill date range (last 30 days)
- Skip optional fields
- One-click export
Measuring Friction Reduction
Track improvement over time:
Before/After Comparison
Report Creation Workflow:
Before Rise intervention:
- FI: 6.8
- Completion rate: 52%
- Avg time: 5m 40s
- User satisfaction (NPS): -5
After Rise intervention (2 weeks):
- FI: 2.9 (↓57%) ✅
- Completion rate: 78% (↑26pp) ✅
- Avg time: 3m 10s (↓44%) ✅
- User satisfaction (NPS): +18 (↑23) ✅