Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Segmentation and Cohort Analysis Basics | Product Metrics and Data Exploration
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Python for Product Managers

bookSegmentation and Cohort Analysis Basics

Understanding how users interact with your product is crucial for making informed decisions. Two key techniques that help you gain these insights are user segmentation and cohort analysis. Segmentation means dividing your user base into groups based on shared characteristics or behaviors, such as how often they use your product or when they signed up. Cohort analysis, on the other hand, involves grouping users who share a common event within a specific timeframe—like signing up in the same month—and tracking their behavior over time.

123456789101112131415161718192021222324
# Segment users into 'new', 'returning', and 'churned' based on activity data users = [ {"user_id": 1, "last_active_days_ago": 2, "signup_days_ago": 2}, {"user_id": 2, "last_active_days_ago": 10, "signup_days_ago": 100}, {"user_id": 3, "last_active_days_ago": 40, "signup_days_ago": 200}, {"user_id": 4, "last_active_days_ago": 0, "signup_days_ago": 0}, {"user_id": 5, "last_active_days_ago": 31, "signup_days_ago": 40}, ] segments = {"new": [], "returning": [], "churned": []} for user in users: if user["signup_days_ago"] <= 7: segments["new"].append(user["user_id"]) elif user["last_active_days_ago"] > 30: segments["churned"].append(user["user_id"]) else: segments["returning"].append(user["user_id"]) print("New users:", segments["new"]) print("Returning users:", segments["returning"]) print("Churned users:", segments["churned"])
copy

Segmenting users lets you tailor product features and marketing strategies to different groups. For instance, you might design onboarding flows specifically for new users, send re-engagement emails to those at risk of churning, or highlight advanced features to your most engaged users. This targeted approach increases the likelihood of meeting user needs and boosting engagement.

12345678910111213141516
# Group users by signup month and count cohort sizes import pandas as pd data = { "user_id": [1, 2, 3, 4, 5, 6], "signup_date": [ "2024-01-15", "2024-01-20", "2024-02-03", "2024-02-25", "2024-03-01", "2024-03-18" ] } df = pd.DataFrame(data) df["signup_month"] = pd.to_datetime(df["signup_date"]).dt.to_period("M") cohort_counts = df.groupby("signup_month")["user_id"].count() print(cohort_counts)
copy

1. What is a user cohort in product analytics?

2. How can segmentation inform product feature development?

3. Which Python structure is suitable for grouping users by cohort?

question mark

What is a user cohort in product analytics?

Select the correct answer

question mark

How can segmentation inform product feature development?

Select the correct answer

question mark

Which Python structure is suitable for grouping users by cohort?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 4

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookSegmentation and Cohort Analysis Basics

Deslize para mostrar o menu

Understanding how users interact with your product is crucial for making informed decisions. Two key techniques that help you gain these insights are user segmentation and cohort analysis. Segmentation means dividing your user base into groups based on shared characteristics or behaviors, such as how often they use your product or when they signed up. Cohort analysis, on the other hand, involves grouping users who share a common event within a specific timeframe—like signing up in the same month—and tracking their behavior over time.

123456789101112131415161718192021222324
# Segment users into 'new', 'returning', and 'churned' based on activity data users = [ {"user_id": 1, "last_active_days_ago": 2, "signup_days_ago": 2}, {"user_id": 2, "last_active_days_ago": 10, "signup_days_ago": 100}, {"user_id": 3, "last_active_days_ago": 40, "signup_days_ago": 200}, {"user_id": 4, "last_active_days_ago": 0, "signup_days_ago": 0}, {"user_id": 5, "last_active_days_ago": 31, "signup_days_ago": 40}, ] segments = {"new": [], "returning": [], "churned": []} for user in users: if user["signup_days_ago"] <= 7: segments["new"].append(user["user_id"]) elif user["last_active_days_ago"] > 30: segments["churned"].append(user["user_id"]) else: segments["returning"].append(user["user_id"]) print("New users:", segments["new"]) print("Returning users:", segments["returning"]) print("Churned users:", segments["churned"])
copy

Segmenting users lets you tailor product features and marketing strategies to different groups. For instance, you might design onboarding flows specifically for new users, send re-engagement emails to those at risk of churning, or highlight advanced features to your most engaged users. This targeted approach increases the likelihood of meeting user needs and boosting engagement.

12345678910111213141516
# Group users by signup month and count cohort sizes import pandas as pd data = { "user_id": [1, 2, 3, 4, 5, 6], "signup_date": [ "2024-01-15", "2024-01-20", "2024-02-03", "2024-02-25", "2024-03-01", "2024-03-18" ] } df = pd.DataFrame(data) df["signup_month"] = pd.to_datetime(df["signup_date"]).dt.to_period("M") cohort_counts = df.groupby("signup_month")["user_id"].count() print(cohort_counts)
copy

1. What is a user cohort in product analytics?

2. How can segmentation inform product feature development?

3. Which Python structure is suitable for grouping users by cohort?

question mark

What is a user cohort in product analytics?

Select the correct answer

question mark

How can segmentation inform product feature development?

Select the correct answer

question mark

Which Python structure is suitable for grouping users by cohort?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 4
some-alt