6 min read

How to Set Up User Paths in Amplitude

User Paths shows you the exact sequence of events users take through your product. Without proper setup, you're guessing at user behavior instead of seeing it. To use User Paths effectively, you need event tracking in place and a clear definition of which events matter for your analysis.

Install and Initialize the Amplitude SDK

The foundation of User Paths is accurate event data. You'll need the Amplitude SDK installed and properly configured to send events from your application.

Install the Amplitude Browser SDK

Use npm or yarn to add the Amplitude analytics library to your project. This is the standard SDK for web applications.

javascript
npm install @amplitude/analytics-browser

// or
yarn add @amplitude/analytics-browser
Install Amplitude's official browser SDK

Initialize Amplitude in your app

Create an instance of the Amplitude client at application startup. Replace YOUR_API_KEY with your actual Amplitude API key from Settings > API Keys.

javascript
import * as amplitude from '@amplitude/analytics-browser';

amplitude.init('YOUR_API_KEY', {
  defaultTracking: true,
  logLevel: 'Warn'
});

// Set user ID (after login or identification)
amplitude.setUserId('[email protected]');
Initialize Amplitude and set the user ID
Tip: Turn on defaultTracking to automatically capture page views and user interactions like clicks and form submissions. This gives you baseline events without manual instrumentation.

Track Events That Matter for Your Paths

User Paths shows sequences of events, so the events you track directly determine the paths you can see. Choose events that represent meaningful user actions—not noise.

Define core conversion funnel events

Identify the key milestones in your user journey. These might be signup, feature adoption, or payment. Use simple, past-tense event names and include properties that provide context.

javascript
// Track user signup
amplitude.track('user_signed_up', {
  signupMethod: 'email',
  source: 'pricing_page'
});

// Track feature usage
amplitude.track('dashboard_opened', {
  dashboardType: 'analytics',
  userTier: 'pro'
});

// Track conversion
amplitude.track('subscription_created', {
  plan: 'annual',
  amount: 120
});
Track meaningful events with relevant properties

Add user properties for segmentation

Set user properties once (like plan type, signup date, or company size) so you can later segment paths by these attributes in the User Paths dashboard. This lets you compare paths for different user cohorts.

javascript
amplitude.setUserProperties({
  plan: 'pro',
  signupDate: '2026-03-20',
  companySize: '10-50',
  industry: 'saas'
});

// Or update a single property
amplitude.setUserProperties({
  planUpgrade: 'true'
});
Set user properties for later filtering in User Paths

Be selective—avoid event spam

Tracking every keystroke creates noise that obscures real user journeys. Focus on events that represent intentional user actions. In User Paths, you'll want 5–20 core events per workflow, not hundreds.

javascript
// Good: intentional user action
amplitude.track('filter_applied', {
  filterType: 'date_range'
});

// Avoid: too granular
// amplitude.track('keystroke', { key: 'a' }); // Don't do this
Track intentional actions, not low-level interactions
Watch out: Events are case-sensitive in Amplitude. User_SignedUp and user_signed_up are two different events. Standardize your naming convention early.

Access and Analyze Paths in the Dashboard

Once events are flowing, you can view User Paths to see how users move through your product. The dashboard lets you filter, branch, and zoom into specific sequences.

Open the User Paths analysis view

In the Amplitude dashboard, navigate to Analyses and select User Paths. This opens the Funnel-like interface where you can add events and see the flows between them.

javascript
// No SDK code needed here—this is dashboard interaction.
// But verify events are arriving via the Live Events view:
// Settings > Live Events > see real-time event stream
Check Settings > Live Events to confirm events are tracking

Add starting event and filter conditions

In User Paths, select your first event (e.g., user_signed_up). Optionally filter by user properties to isolate a cohort. For example, filter to plan == 'trial' to see paths for trial users only.

javascript
// After setting up events and user properties, use the dashboard UI:
// 1. Click "+ Add Event" in User Paths
// 2. Search and select your starting event
// 3. Click "+ Add Filter" to restrict to specific users
// 4. Select property: 'plan', condition: equals, value: 'trial'
Set up starting event and cohort filter in the dashboard UI

Explore branches and drop-off points

The User Paths visualization shows which events users take next and how many drop off. Click on branches to zoom in. If you see high drop-off after a particular step, that's a friction point worth investigating.

javascript
// You can also query User Paths data via the Amplitude HTTP API:
// GET /api/2/events/route
// This returns the path distribution and drop-off rates programmatically

// Example: programmatically fetch path data
fetch('https://api.amplitude.com/api/2/events/route', {
  method: 'GET',
  headers: {
    'Authorization': 'Basic ' + Buffer.from('api_key:secret_key').toString('base64')
  },
  body: JSON.stringify({
    start: '20260320',
    end: '20260326',
    events: ['user_signed_up', 'dashboard_opened', 'subscription_created']
  })
})
.then(r => r.json())
.then(data => console.log(data));
Optionally query User Paths data programmatically via the API
Tip: Use the Look-ahead option to see not just the next event, but 2–3 steps ahead. This reveals longer patterns like 'sign up → view docs → contact sales → subscribe.'

Common Pitfalls

  • Forgetting to call amplitude.track() consistently—if you only track some user actions, you'll see incomplete paths.
  • Using vague event names like 'click' or 'action'—be specific so paths are readable ('button_signup_clicked' not 'click').
  • Not waiting for events to arrive before accessing User Paths—Amplitude batches events every 10 seconds, so new events may lag 10–30 seconds.
  • Confusing User Paths with Funnel—User Paths shows all possible sequences, while Funnel is a strict top-to-bottom flow. Use User Paths to discover behavior, Funnel to measure specific workflows.

Wrapping Up

You now have event tracking set up and can visualize user journeys in Amplitude's User Paths. Watch for drop-off points and unexpected branches—they often reveal friction in your onboarding or checkout flow. If you want to track this automatically across tools and get AI-powered insights into where users are getting stuck, Product Analyst can help.

Track these metrics automatically

Product Analyst connects to your stack and surfaces the insights that matter.

Try Product Analyst — Free