Beregning af Fastholdelses- og Churn-målinger
Stryg for at vise menuen
Retention- og churn-metrics er essentielle værktøjer i kohorteanalyse, der hjælper med at måle, hvor godt dit produkt fastholder brugere over tid, og hvor du eventuelt mister dem. Retention rate kvantificerer procentdelen af brugere fra en kohorte, der forbliver aktive efter en given periode. Churn rate er det komplementære mål og viser procentdelen af brugere, der er stoppet med at engagere sig. Survival rate sporer sandsynligheden for, at en bruger forbliver aktiv op til hver tidsperiode, hvilket giver et overblik over brugerens levetid.
Formler:
- Retention Rate (ved periode n):
Retention Rate = (Number of users active in period n) / (Number of users in cohort at period 0); - Churn Rate (ved periode n):
Churn Rate = 1 - Retention Rate (at period n); - Survival Rate (ved periode n):
Survival Rate = (Number of users still active at period n) / (Number of users in cohort at period 0).
Disse metrics visualiseres ofte ved hjælp af retention-kurver eller survival-plots, som hurtigt hjælper med at identificere mønstre, såsom kraftige fald eller stabile perioder. Ved at følge disse rater på tværs af flere kohorter og tidsperioder kan du identificere succesfulde engagementstrategier og områder, der kræver forbedring.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566import pandas as pd import numpy as np import matplotlib.pyplot as plt # Example cohort data: each row is a user, columns are activity in each month (1 = active, 0 = inactive) data = { "user_id": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], "cohort_month": ["2023-01"] * 5 + ["2023-02"] * 5, "month_0": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], # All users active at signup "month_1": [1, 0, 1, 1, 0, 1, 1, 0, 1, 1], "month_2": [1, 0, 0, 1, 0, 1, 0, 0, 1, 0], "month_3": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0], } df = pd.DataFrame(data) # Calculating retention, churn, and survival rates for each cohort results = [] for cohort, group in df.groupby("cohort_month"): cohort_size = len(group) retention = [] churn = [] survival = [] users_remaining = cohort_size for month in ["month_0", "month_1", "month_2", "month_3"]: active = group[month].sum() retention_rate = active / cohort_size retention.append(retention_rate) churn.append(1 - retention_rate) survival.append(users_remaining / cohort_size) users_remaining = active # Update for next period results.append({ "cohort_month": cohort, "retention": retention, "churn": churn, "survival": survival, }) # Converting results to DataFrame for plotting metrics_df = pd.DataFrame(results) months = ["month_0", "month_1", "month_2", "month_3"] # Plot retention curves plt.figure(figsize=(10, 5)) for idx, row in metrics_df.iterrows(): plt.plot(months, row["retention"], marker="o", label=f"Cohort {row['cohort_month']}") plt.title("Cohort Retention Curves") plt.xlabel("Months Since Signup") plt.ylabel("Retention Rate") plt.legend() plt.show() # Plot survival curves plt.figure(figsize=(10, 5)) for idx, row in metrics_df.iterrows(): plt.plot(months, row["survival"], marker="o", label=f"Cohort {row['cohort_month']}") plt.title("Cohort Survival Curves") plt.xlabel("Months Since Signup") plt.ylabel("Survival Rate") plt.legend() plt.show() # Printing calculated metrics print(metrics_df[["cohort_month", "retention", "churn", "survival"]])
Denne kode demonstrerer, hvordan man beregner og visualiserer retention-, churn- og survival-rater for brugerkohorter ved hjælp af pandas og matplotlib i Python.
Formålet er at analysere, hvordan grupper af brugere (kohorter) opfører sig over tid med fokus på deres engagement og levetid i et produkt.
Datastruktur:
- Dataen er organiseret som en DataFrame, hvor hver række repræsenterer en bruger;
- Kolonnerne inkluderer et unikt bruger-ID, kohortemåned (hvornår brugeren tilmeldte sig) og binære aktivitetsindikatorer for hver måned (1 = aktiv, 0 = inaktiv).
Beregning:
For hver kohorte:
- Beregnes retention rate for hver måned som andelen af brugere, der stadig er aktive i forhold til den oprindelige kohortestørrelse;
- Churn rate beregnes som komplementet til retention (1 - retention rate);
- Survival rate viser sandsynligheden for, at en bruger forbliver aktiv op til hver periode, hvor antallet af resterende brugere opdateres efter hver måned.
Visualisering:
- Retention- og survival-kurver plottes for hver kohorte ved hjælp af matplotlib;
- Disse plots gør det muligt visuelt at sammenligne, hvor hurtigt brugere falder fra (churn) eller forbliver engagerede (retention/survival) på tværs af kohorter og tidsperioder, hvilket afslører tendenser og mønstre i brugerengagement.
Fortolkning af retention- og churn-metrics er afgørende for at træffe informerede forretningsbeslutninger. Høje retentionsrater indikerer, at brugerne oplever vedvarende værdi i dit produkt, hvilket tyder på stærk engagement og produkt-marked fit. Omvendt kan høje churn-rater signalere problemer såsom uopfyldte brugerbehov, dårlig onboarding eller konkurrencepres. Overlevelseskurver hjælper med at visualisere, hvor hurtigt kohorter skrumper – stejle fald kan afsløre, hvornår brugerne typisk mister interessen.
Ved løbende at overvåge disse metrics kan du identificere tendenser over tid og på tværs af forskellige kohorter. For eksempel, hvis en ny funktion lanceres samtidig med øget retention, kan det være værd at investere yderligere i den retning. Omvendt, hvis churn stiger efter en bestemt opdatering, kan det indikere behov for produktforbedring eller yderligere brugersupport. I sidste ende giver disse metrics dig mulighed for at teste hypoteser, optimere brugerrejser og fordele ressourcer effektivt.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat