You're tracking events in Amplitude, but you're only seeing aggregate numbers. Event segmentation lets you slice that data by user properties, event properties, and custom attributes to understand which customer cohorts are driving behavior. It's how you answer "Which pricing tiers have the highest feature adoption?" or "Do mobile users drop off in onboarding more than desktop users?" without digging into raw data.
What Event Segmentation Does
Segmentation breaks down your event counts or metrics across dimensions you define, revealing patterns that aggregate numbers hide.
Understand segmentation by example
Say you tracked 2,400 signup_completed events this week. Without segmentation, that's all you know. With segmentation, you filter by signup_source (organic, paid, referral) and device_type (mobile, desktop) and discover mobile signups are only 20% of volume but have 3x higher churn. That insight only surfaces when you segment.
// Track events with properties you'll segment by later
amplitude.track('signup_completed', {
signup_source: 'organic',
device_type: 'mobile',
plan_tier: 'starter',
referrer: 'producthunt.com',
trial_length_days: 14
});Know event properties vs. user properties
Amplitude lets you segment by event properties (attributes of that specific action, like amount_usd on a purchase) and user properties (attributes that describe the user, like account_age or subscription_status). Event properties are event-specific; user properties apply across all events for that user.
// User properties apply to every event
amplitude.setUserProperties({
account_age_days: 92,
subscription_status: 'premium',
company_size: '50-100',
industry: 'SaaS'
});
// Event properties are specific to this action
amplitude.track('report_exported', {
report_type: 'custom_query',
format: 'CSV',
num_rows: 50000,
export_time_seconds: 12
});Using Event Segmentation in the Dashboard
The Event Segmentation view in Amplitude's Analytics tab is where you slice event data into segments.
Navigate to Event Segmentation
Open your Amplitude project and go to Analytics > Events. Choose the event you want to analyze. You'll see a count over time by default — this is your aggregate baseline. From here, you add breakouts to see segments.
// Make sure events have consistent, clean property values
amplitude.track('feature_activated', {
feature_name: 'advanced_reporting',
tier_required: 'professional',
activation_method: 'ui_button',
is_first_time: true
});Add a breakout to segment data
Click Add Breakout and select a property. The chart splits into segments — one bar or line per unique value. Choose a user property (like subscription_plan), event property (like feature_name), or group property. Each segment shows counts or trends side-by-side, making comparison instant.
// Standardize plan names so segments are clean
amplitude.setUserProperties({
subscription_plan: 'professional', // consistent enum
billing_cycle: 'monthly',
annual_contract_value: 4800,
customer_segment: 'mid-market'
});
amplitude.track('feature_used', {
feature_name: 'advanced_analytics',
session_id: 'sess_123'
});Filter and compare segments
Click Add Filter to isolate specific segments — for example, device_type = mobile — and see how that cohort's behavior differs. Stack filters with AND logic to drill into specific user groups. The Comparator tab lets you overlay two segments side-by-side without toggling filters.
// Capture context that lets you filter accurately
amplitude.setUserProperties({
device_type: 'mobile',
os: 'iOS',
app_version: '3.2.1',
country: 'US',
is_beta_user: false
});
amplitude.track('onboarding_step_completed', {
step_number: 3,
step_name: 'connect_data_source',
time_to_complete_seconds: 45
});Segmentation Patterns That Drive Decisions
These are the questions segmentation answers best.
Compare adoption across pricing tiers
Segment a feature usage event by subscription_plan to see if premium users engage more. Do this before deciding which features to move upmarket. Compare conversion rates across plans by segmenting a purchase_completed event.
// Track plan at signup; use it as a segmentation dimension
amplitude.setUserProperties({
signup_date: '2026-02-15',
signup_cohort_month: '2026-02',
initial_plan: 'free',
current_plan: 'professional',
days_since_upgrade: 40
});
amplitude.track('advanced_feature_used', {
feature_name: 'predictive_analytics',
tier_required: 'professional'
});Spot platform-specific friction
Segment conversion events by platform or device_type to identify if mobile users drop off more in checkout or onboarding. This often reveals platform-specific bugs or UX issues that aggregate metrics miss.
// Include platform in every conversion-related event
amplitude.track('checkout_started', {
platform: 'web', // or 'ios_app', 'android_app'
flow_variant: 'A/B_test_v2',
cart_value_usd: 299,
coupon_applied: false
});
amplitude.track('payment_confirmed', {
platform: 'web',
payment_method: 'card',
transaction_id: 'txn_12345'
});Common Pitfalls
- Inconsistent property values — 'starter-plan' vs 'starter' vs 'Starter Plan' create fragmented segments that hide patterns.
- Forgetting to send a property with the event — if it's not on the event, you can't segment by it later. Plan your schema upfront.
- Over-segmenting without filters — too many breakouts create noise. Add one segment, then drill down with filters.
- Using event properties for user-level attributes — set user properties once, not on every event.
Wrapping Up
Event segmentation is how you move from "2,400 signups" to "1,200 mobile organic signups with 3x higher churn." It transforms aggregate metrics into actionable cohort insights. The setup is straightforward — clean event and user properties — but the payoff is massive: you spot friction, prioritize features, and understand which cohorts drive growth. If you want to set up event tracking schema across your entire product and auto-generate segmentation queries based on your business model, Product Analyst can help.