Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Beregning av Retensjons- og Frafallsmetrikker | Avansert kohortsegmentering og retensjonsmetrikker
Kohortanalyse med Python

Beregning av Retensjons- og Frafallsmetrikker

Sveip for å vise menyen

Retensjons- og churn-målinger er essensielle verktøy i kohortanalyse, og hjelper deg å måle hvor godt produktet ditt beholder brukere over tid og hvor du eventuelt mister dem. Retensjonsraten kvantifiserer prosentandelen brukere fra en kohort som forblir aktive etter en gitt periode. Churn-raten er motstykket, og viser prosentandelen brukere som har sluttet å engasjere seg. Overlevelsesraten sporer sannsynligheten for at en bruker forblir aktiv opp til hver tidsperiode, og gir et bilde av brukernes varighet.

Formler:

  • Retensjonsrate (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);
  • Overlevelsesrate (ved periode n):
    Survival Rate = (Number of users still active at period n) / (Number of users in cohort at period 0).

Disse målingene visualiseres ofte med retensjonskurver eller overlevelsesplott, som hjelper deg raskt å oppdage mønstre, som bratte fall eller perioder med stabilitet. Ved å følge disse ratene på tvers av flere kohorter og tidsperioder, kan du identifisere vellykkede engasjementsstrategier og områder som trenger forbedring.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
import 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 koden demonstrerer hvordan man kan beregne og visualisere retensjons-, churn- og overlevelsesrater for brukerkohorter ved hjelp av pandas og matplotlib i Python.

Formålet er å analysere hvordan grupper av brukere (kohorter) oppfører seg over tid, med fokus på deres engasjement og varighet med et produkt.

Datastruktur:

  • Dataene er organisert som en DataFrame der hver rad representerer en bruker;
  • Kolonnene inkluderer en unik bruker-ID, kohortmåned (når brukeren registrerte seg), og binære aktivitetsindikatorer for hver måned (1 = aktiv, 0 = inaktiv).

Beregning:
For hver kohort gjør koden følgende:

  1. Beregner retensjonsraten for hver måned som andelen brukere som fortsatt er aktive sammenlignet med den opprinnelige kohortstørrelsen;
  2. Beregner churn-raten som motstykket til retensjon (1 - retensjonsrate);
  3. Sporer overlevelsesraten, som viser sannsynligheten for at en bruker forblir aktiv opp til hver periode, og oppdaterer antall gjenværende brukere etter hver måned.

Visualisering:

  • Retensjons- og overlevelseskurver plottes for hver kohort ved hjelp av matplotlib;
  • Disse plott hjelper deg å visuelt sammenligne hvor raskt brukere faller fra (churn) eller forblir engasjert (retensjon/overlevelse) på tvers av kohorter og tidsperioder, og avdekker trender og mønstre i brukerengasjement.

Tolkning av retensjons- og churn-målinger er avgjørende for å ta informerte forretningsbeslutninger. Høye retensjonsrater indikerer at brukerne opplever vedvarende verdi i produktet ditt, noe som tyder på sterk engasjement og god produkt-marked-tilpasning. På den annen side kan høye churn-rater signalisere problemer som udekkede brukerbehov, dårlig onboarding eller konkurransepress. Overlevelseskurver hjelper deg å visualisere hvor raskt kohorter krymper – bratte fall kan avsløre når brukere vanligvis mister interessen.

Ved å spore disse målingene regelmessig kan du identifisere trender over tid og på tvers av ulike kohorter. For eksempel, hvis en ny funksjon sammenfaller med økt retensjon, kan det være verdt å investere videre i den retningen. På den annen side, hvis churn øker etter en bestemt oppdatering, kan det indikere behov for produktforbedring eller ekstra brukerstøtte. Til syvende og sist gir disse målingene deg mulighet til å teste hypoteser, optimalisere brukerreiser og fordele ressurser effektivt.

question mark

Hvilket av følgende utsagn om retensjons- og churn-målinger i kohortanalyse er korrekt?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 2

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 2. Kapittel 2
some-alt