Retention analysis shows you how many users come back after their first session or action. In Amplitude, it's the difference between users who stick around and those who disappear—critical for understanding whether your product keeps people engaged or leaks them.
What Retention Analysis Actually Measures
Retention analysis answers a simple question: of the users who took action X today, how many of them took action Y tomorrow, next week, or next month?
The Retention Curve
A retention curve plots the percentage of users who return over time. You pick a starting event (like user_signup or page_view) and a return event (like purchase or session_start). Amplitude groups users by their first occurrence of the starting event and measures how many returned for the event again.
Cohort Definition
Retention always works with cohorts. A cohort is a group of users who performed the same starting event in the same time bucket. If you choose event_date = today, your cohort is everyone who signed up today. Amplitude automatically calculates retention for that cohort in subsequent days, weeks, or months.
Event Tracking for Retention
To run retention analysis, you need to send events to Amplitude via the JavaScript SDK. The more events you track, the more retention questions you can answer. Track meaningful behavioral events: page_view, feature_used, content_viewed, item_purchased.
import * as amplitude from '@amplitude/analytics-browser';
amplitude.init('YOUR_API_KEY', {
userId: 'user123',
defaultTracking: {
sessions: true,
pageViews: true,
formInteractions: true
}
});
// Track a purchase event for retention analysis
amplitude.track('purchase', {
itemId: 'item-456',
price: 29.99,
category: 'subscription'
});How Amplitude Builds Retention Reports
Amplitude's Retention chart type automatically groups users and calculates how many return over time.
Select Your Time Interval
Amplitude measures retention in buckets: daily, weekly, or monthly. Daily retention shows which percentage of today's cohort returned tomorrow. Weekly retention shows returns next week. Choose the interval that matches your user behavior cycle—DAU products use daily, quarterly subscription products use weekly or monthly.
Choose Starting and Returning Events
In the Retention chart builder, you define two events: the starting event (initiating action) and the returning event (what counts as return). If you want to measure if people use a feature after signup, set signup as starting and feature_used as returning. Amplitude counts each user once per cohort.
// Track both starting and returning events with consistent user identity
amplitude.setUserId('[email protected]');
// Starting event: feature adoption
amplitude.track('feature_adoption', {
feature_name: 'advanced_analytics',
adoption_source: 'onboarding',
timestamp: Date.now()
});
// Returning event: actual usage
amplitude.track('feature_used', {
feature_name: 'advanced_analytics',
action: 'query_executed',
queries_count: 3
});Segment Your Cohort
You can filter the starting cohort by properties. For example, "users who signed up and had source = 'organic'" or "users in the US." Add filters in the Segment panel to narrow your retention analysis to a specific user group. This lets you compare retention across different user acquisition channels or geographies.
Interpreting Retention Metrics
Amplitude displays retention as a percentage for each time bucket. Understanding what you're looking at matters.
Reading the Retention Table
In the retention chart, each row is a cohort (users who performed the starting event on that date). Each column is a time period: Day 0, Day 1, Day 7, etc. The cells show the percentage of that cohort that returned. A 50% retention on Day 1 means half the users came back the next day.
Understand Amplitude's Retention Calculation
Amplitude uses unique counts per cohort and time interval. If a user is in the cohort and performs the returning event any time during that bucket, they count as "retained." A user can only be counted once per time bucket, even if they perform the event multiple times. This prevents inflating retention numbers from power users.
// Ensure proper session-level cohort tracking
amplitude.setSessionId('session_' + Date.now());
// Cohort event: first login
amplitude.track('first_login', {
signup_date: '2024-03-26',
user_type: 'free_trial',
region: 'US'
});
// Return event: any meaningful action
amplitude.track('dashboard_view', {
dashboard_type: 'analytics',
stay_duration_sec: 120,
revisit_day: 1
});Common Pitfalls
- Not tracking enough events: If you only track
page_view, you can't measure retention for specific features. Add event tracking for behaviors that matter to your business. - Choosing too-specific returning events: If your returning event is too rare, all retention numbers show near 0%. Test with common events first, then drill into specific behaviors.
- Ignoring seasonality: Weekly or monthly retention can swing based on user schedules or business cycles. Compare the same cohorts over multiple weeks to spot real trends.
- Confusing returning events with churn: A 30% Day 1 retention means 70% churn. Amplitude reports retention, not churn. Do the math when communicating to stakeholders.
Wrapping Up
Retention analysis in Amplitude measures which users stick around and which disappear. It's essential for spotting product-market fit and diagnosing churn before it becomes a problem. By tracking events and building retention charts, you can make data-driven decisions about feature adoption and user engagement. If you want to track this automatically across tools, Product Analyst can help.