User Journey Mapping
Visualize the paths users take through your application. Identify common flows, drop-off points, and opportunities for optimization.
Overview
User journey mapping tracks sequences of events within sessions to show how users navigate your application. This reveals conversion paths, identifies bottlenecks, and highlights unexpected user behaviors.
How It Works
Session Grouping
Events are grouped by sessionId to form user paths. Each unique sequence of events becomes a journey path.
Path Visualization
Paths are displayed as sequences connected by arrows:
page_view → button_click → form_submit → purchasePath Metrics
- Count: Number of sessions that followed this path
- Percentage: % of total sessions
- Path Length: Number of events in the sequence
Viewing Journey Data
Via UI
- Navigate to User Journey in the sidebar
- Select a time period (24 hours, 7 days, 14 days, 30 days)
- View the top 50 paths ranked by frequency
- See summary metrics:
- Total sessions analyzed
- Unique paths discovered
- Average path length
Via API
GET /api/analytics/journey?projectId={projectId}&days=7&limit=50
Response:
{
"totalSessions": 12453,
"paths": [
{
"path": "page_view → signup_click → signup_completed",
"count": 1247,
"percentage": 10.01
},
{
"path": "page_view → pricing_view → checkout_started → purchase",
"count": 892,
"percentage": 7.16
}
],
"period": "7 days"
}Use Cases
Conversion Optimization
Identify the most common paths to conversion. Optimize these high-traffic journeys to maximize conversions.
Example: Discover that users who view pricing before signing up convert at 3x the rate of those who don't.
Drop-off Analysis
Find where users abandon flows by comparing incomplete paths to successful ones.
Example: Notice that 40% of users drop off between "checkout_started" and "payment_info_entered", suggesting friction in the payment form.
Feature Discovery
Track how users discover and adopt new features. Identify natural entry points.
Example: See that most users find the "export" feature through the "reports → actions → export" path rather than the main menu.
Onboarding Flows
Measure completion rates for onboarding sequences. Identify steps where users get stuck or confused.
Example: Find that users who skip "tutorial_step_2" are 50% less likely to complete onboarding.
A/B Test Analysis
Compare journey paths between test variants to see how changes affect user navigation.
Example: Variant B shows more users taking the direct path to purchase, with 20% fewer intermediate steps.
Reading Journey Data
Path Format
Paths use arrow notation (→) to show event sequences in chronological order:
event1 → event2 → event3 → event4Common Patterns
Linear Conversion
landing → signup → onboarding → first_actionUsers follow the expected happy path with minimal deviation.
Exploration
home → features → pricing → features → docs → pricing → signupUsers research extensively before converting, revisiting key pages.
Immediate Bounce
page_viewSingle-event sessions indicate users left immediately or had tracking issues.
Partial Conversion
landing → signup_started → pricing_viewUsers began conversion but didn't complete it, possibly researching pricing first.
Advanced Analysis
Path Length Analysis
Average path length indicates complexity. Very short paths may indicate bounces; very long paths may indicate confusion or rich engagement.
Common Subsequences
Look for repeated patterns across different paths. These are critical user behaviors to optimize.
Example: If "pricing_view → testimonials_view" appears in 60% of conversion paths, ensure this flow is seamless.
Entry and Exit Points
First events show how users enter your app. Last events show where they exit or convert.
Unexpected Paths
Paths that deviate from your intended flow reveal user confusion or alternative workflows to support.
Best Practices
Event Tracking
- Track all significant user actions, not just page views
- Use consistent event names across your application
- Include sessionId in all events to enable path analysis
- Generate session IDs client-side and persist in sessionStorage
Session Management
- Keep session IDs consistent throughout user sessions
- Don't reset session IDs on page refresh (use sessionStorage)
- Set reasonable session timeouts (30-60 minutes of inactivity)
Analysis Strategy
- Start with high-level paths to identify major flows
- Drill into specific segments (new vs returning users)
- Compare paths over time to track changes
- Focus on top 10-20 paths (cover majority of traffic)
Optimization Tips
- Reduce friction in high-traffic paths
- Add shortcuts for common multi-step sequences
- Investigate and fix unexpected drop-off points
- Test changes on a subset before full rollout
Limitations
Session Boundaries
Paths are limited to single sessions. Cross-session journeys require user-level analysis with userId tracking.
Path Complexity
Very long or complex paths may be truncated or aggregated. Focus on critical subsequences rather than complete paths.
Sample Size
Low-frequency paths may not be statistically significant. Focus on paths with sufficient volume (at least 10-20 occurrences).
Integration with Other Features
Funnels
Use journey data to identify common funnels to track. If 40% of users follow path A→B→C→D, create a funnel to monitor this flow.
Segments
Create segments based on path characteristics (e.g., "users who viewed pricing before signup").
Goals
Track goal completions across different journey paths to identify the most effective conversion flows.
Example Queries
Most Common Signup Paths
Filter paths ending with "signup_completed" to see how users reach signup.
Drop-off Before Purchase
Compare paths containing "checkout_started" to those completing "purchase" to identify where users abandon.
Feature Discovery
Find paths containing a specific feature event to understand how users discover and use that feature.