Survival Analyse, Churn und Customer Lifetime Value
Kurz gesagt
Niveau: Profi
Ein Churn Modell, das sagt, ob ein Kunde geht, beantwortet die falsche Frage. Die Survival Analyse sagt, wann.
- Überleben und Hazard: S(t) ist der Anteil, der nach t Monaten noch aktiv ist, der Hazard die Rate des Gehens unter denen, die noch da sind. Der Hazard sagt dir, wann du handeln musst.
- Kaplan Meier zeichnet die Survivalkurve ehrlich und behandelt Kunden, die noch nicht gekündigt haben, als zensierte Beobachtungen.
- Das Cox Modell liefert Hazard Ratios, die sich multiplizieren: 0,55 für abgeschlossenes Onboarding, 0,88 pro zusätzlichem Platz, 1,24 für die bezahlte Suche im erfundenen Beispiel.
- Der vorausschauende Customer Lifetime Value summiert Marge mal Überleben mal Abzinsungsfaktor: rund 1.900 € für einen Account im Plan Team gegenüber beschreibenden 1.100 €. Bei konstanter Bindung wird daraus die Formel aus den Grundlagen.
- Nutze ihn pro Segment fürs Bieten, und teste die Maßnahme, bevor du ihr glaubst.
Ein Churn Modell, das eine Kündigungswahrscheinlichkeit ausgibt, beantwortet die falsche Frage: Jeder Kunde geht irgendwann, wissen musst du, wann, und was die Zeit bis dahin wert ist. Ich gehe Survival und Hazardfunktion, Kaplan Meier Kurven, ein Cox Modell und einen vorausschauenden Customer Lifetime Value an Werkbuch durch, einem erfundenen SaaS aus Leipzig für Handwerksbetriebe. Das ist Kapitel 8 von 21 meiner Serie Marketing Analytics.
Der Account, der schon weg war
Werkbuch ist ein erfundenes SaaS auf Rails aus Leipzig für Handwerksbetriebe, das, an dem ich in dieser Serie die SaaS Beispiele zeige. Es hat rund 2.400 zahlende Accounts. An einem Dienstag schickt mir einer der Gründer eine Tabelle namens "Churn Modell". Jemand hat eine logistische Regression auf die Daten des letzten Jahres gerechnet, und für jeden Account steht da eine Wahrscheinlichkeit zu kündigen. Ein Dachdeckerbetrieb in Halle steht bei 0,81. Das Team schreibt ihm, bietet ein Gespräch an, bietet einen Rabatt an. Der Dachdecker hatte elf Tage vorher gekündigt.
Das Modell lag richtig und war völlig nutzlos, weil es die falsche Frage beantwortet hat. Es sagte, ob. Niemand hatte gefragt, wann.
Ein Modell mit Ja oder Nein behandelt jeden Kunden so, als stünde er an derselben Stelle seiner Zeit mit dir. Eine Tischlerei, die sich letzte Woche angemeldet hat, und ein Installateur im 31. Monat tun das nicht, und das Spannende an beiden ist nicht, ob sie irgendwann gehen (das tun alle), sondern wie lange sie wahrscheinlich bleiben und was diese Zeit wert ist. Die Survival Analyse beantwortet genau das, und mit der Zeit in der Hand wird der Customer Lifetime Value zu einer Zahl, die du vor einer Steuerberaterin vertreten kannst.
Werkbuch und jede Zahl in diesem Kapitel sind erfunden, damit ich jeden Schritt zeigen kann. Die Formen der Kurven und die Größe der Effekte sind die, die ich in Abogeschäften dieser Größe typischerweise sehe, und die Methode ist die, die ich anwende.
Wo dieses Kapitel in der Serie steht
Das ist Kapitel 8 von 21 meiner Serie Marketing Analytics, im zweiten Teil, den Verfahren mit einer abhängigen Variable aus den Kapiteln 4 bis 10. Im vorigen Kapitel, logistische Regression, Lift Charts und Warenkorbanalyse, war das Ergebnis ein Ja oder ein Nein. Hier ist es eine Dauer, mit dem Haken, dass die Dauer für die meisten Kunden noch nicht zu Ende ist. Im nächsten Kapitel, Panelregression und Umsatz auf vergleichbarer Fläche, wird daraus eine Reihe von Zahlen, die über die Zeit für viele Einheiten zugleich beobachtet werden.
Warum die Zeit bis zum Ereignis besser ist als Ja oder Nein
Drei Gründe.
Timing. Wenn das Risiko zu kündigen im dritten Monat und bei der jährlichen Verlängerung am höchsten ist, gehört dein Aufwand für die Kundenbindung in den zweiten und den 11. Monat, nicht gleichmäßig verteilt. Ein Survival Modell zeichnet das Risiko über die Zeit.
Zensierung. Die meisten der 2.400 Accounts von Werkbuch sind noch Kunden. Ein Modell mit Ja oder Nein markiert sie als "nicht gekündigt", und das stimmt nicht: Sie haben noch nicht gekündigt. Ein Account, der im Januar dazukam und im Juni noch aktiv ist, hat dir gesagt, dass er sechs Monate überlebt hat, und nichts über den siebten. Die Survival Analyse nennt das Rechtszensierung und nutzt diese sechs Monate ehrlich, statt den Account wegzuwerfen oder so zu tun, als wäre er treu.1 Wer die Hälfte seiner Daten falsch beschriftet, bekommt ein Modell, das selbstsicher danebenliegt.
Wert. Multipliziere die Wahrscheinlichkeit, dass ein Account in einem Monat noch zahlt, mit der Marge dieses Monats, zinse ab und addiere. Das ist ein Customer Lifetime Value mit Fundament, nicht "durchschnittliche Marge geteilt durch durchschnittliche Churn Rate", was voraussetzt, dass der Churn in jedem Monat gleich ist.
Beispiel: was Zensierung mit einer Churn Rate macht
Nimm fünf Accounts von Werkbuch am 30. Juni. Zwei kamen am 1. Januar dazu und haben Ende Februar gekündigt, jeder hielt also zwei Monate. Drei kamen am 1. April dazu und sind noch aktiv, jeder wurde also drei Monate beobachtet.
- Die Sicht mit Ja oder Nein: Zwei von fünf haben gekündigt, 40 %, und die drei Accounts aus dem April zählen als "treu".
- Die Sicht der Survival Analyse: In den Monaten eins und zwei standen alle fünf unter Risiko, und zwei gingen am Ende des zweiten Monats, also ist . Im dritten Monat standen die drei Accounts aus dem April unter Risiko, und keiner ging, also ist . Nach dem dritten Monat sind die Accounts aus dem April zensiert: Man weiß noch nichts, und das Modell tut auch nicht so.
"60 % sind treu" und "60 % überleben drei Monate, der Rest ist unbekannt" sind sehr verschiedene Aussagen. In einer echten Datei werden Accounts zwischen einer Woche und fünf Jahren beobachtet, und nur die zweite Art bleibt ehrlich.
Die zwei Funktionen, die die ganze Arbeit machen
Zwei Funktionen der Zeit machen die Arbeit. Die Survivalfunktion ist die Wahrscheinlichkeit, dass ein Kunde nach der Zeit noch bei dir ist:1
Dabei ist die Zufallsvariable "wie lange dieser Kunde bleibt", ein bestimmter Zeitpunkt, etwa 12 Monate, und die Wahrscheinlichkeit, dass die Lebensdauer länger ist als . ist eins, und kann nur fallen. Grundlagen: Wahrscheinlichkeit
Die Hazardfunktion ist die momentane Rate des Gehens zum Zeitpunkt unter den Kunden, die es bis dahin geschafft haben:1
Dabei ist der Hazard zum Zeitpunkt , eine kleine Zeitscheibe nach , die bedingte Wahrscheinlichkeit, innerhalb dieser Scheibe zu gehen, wenn der Kunde zum Zeitpunkt noch da war, und der Grenzwert lässt die Scheibe gegen null schrumpfen. Der senkrechte Strich ist das "unter der Bedingung, dass" der bedingten Wahrscheinlichkeit. Grundlagen: Wahrscheinlichkeit
Mit Monatsdaten wird daraus eine einfache Quote:
Dabei ist der Hazard im Monat , die Zahl der Accounts, die in diesem Monat gekündigt haben, und die Zahl der Accounts, die zu seinem Beginn noch aktiv waren. Ereignisse geteilt durch Gelegenheiten. Grundlagen: Verhältnisse und Quoten
Der Hazard ist die Funktion für Entscheidungen, weil er dir sagt, wo das Risiko sitzt. Die Survivalfunktion ist die für das Geld, weil sie dir sagt, wie viele Kunden dir bleiben. Beide sind zwei Ansichten derselben Sache:
Dabei ist die Exponentialfunktion, der gesamte zwischen dem Zeitpunkt null und angesammelte Hazard, wobei über dieses Intervall läuft, multipliziert die Faktoren für die Monate bis , und ist der Anteil der Kunden, die den Monat überstehen, wenn sie ihn begonnen haben. Der Text in der Mitte der Formel heißt "und mit Monatsdaten". Kennst du eine Funktion, kennst du die andere. Grundlagen: Logarithmen und Exponentialfunktionen
Beispiel: vom Hazard zum Überleben
Der Plan Team von Werkbuch verliert im ersten Monat 3,5 % seiner Accounts, im zweiten 4,8 % der verbliebenen und im dritten 5,1 % der verbliebenen. Also:
- Nach dem ersten Monat: .
- Nach dem zweiten Monat: .
- Nach dem dritten Monat: .
87,2 % der neuen Accounts im Plan Team zahlen nach drei Monaten noch. Die Hazards sind das Risiko Monat für Monat, das Überleben ist, was übrig bleibt.
Kaplan Meier, die ehrliche Kurve
Vor jedem Modell zeichne ich eine Kaplan Meier Kurve, die nicht parametrische Schätzung von . Sie geht mit Zensierung um, ohne irgendeine Annahme über die Form der Kurve:2
Dabei ist das geschätzte Überleben zum Zeitpunkt , das Dach kennzeichnet die Schätzung, das Produkt läuft über jeden Monat bis einschließlich , ist die Zahl der Accounts, die im Monat gekündigt haben, und die Zahl der Accounts unter Risiko zu seinem Beginn, also aktiv und noch nicht zensiert. Jeder Faktor ist die Wahrscheinlichkeit, diesen Monat zu überstehen, wenn man ihn erreicht hat, und das Produkt verkettet sie. Ein zensierter Account zählt in jedem Monat, in dem er beobachtet wurde, in mit und fällt danach heraus. Grundlagen: Wahrscheinlichkeit
Die Kurven nach Plan lesen
Für Werkbuch teile ich die Kurve nach Plan. Starter kostet 29 € im Monat und wird vor allem von Soloselbstständigen genutzt. Team kostet 89 € im Monat und hat mehrere Plätze.
Die waagerechte Achse zeigt die Monate seit der Anmeldung, die senkrechte den Anteil der noch aktiven Accounts. Nach 12 Monaten sind 69 % der Accounts im Plan Team noch aktiv, gegenüber 54 % im Plan Starter, nach zwei Jahren 59 % gegenüber 42 %. Der steile Teil beider Kurven sind die ersten vier Monate, danach folgt ein langsamer Rückgang mit einer kleinen Stufe im 12. Monat, der jährlichen Verlängerung.
Die Kurve ist beschreibend und schon für sich wertvoll. Der Gründer hatte seinem Beirat eine einzige Zahl gemeldet, "monatlicher Churn von 2,1 %". Als Durchschnitt stimmt das, und es verdeckt, dass ein ganz neuer Starter Account etwa viermal so schnell ging: 16 % Verlust in zwei Monaten sind rund 8,3 % im Monat, weil .
Die Sicht auf den Hazard derselben Daten im Plan Team macht das Timing schärfer.
Die waagerechte Achse zeigt den Monat im Leben des Accounts, die senkrechte den Hazard: von den Accounts, die den Monat begonnen haben, den Anteil, der in ihm gekündigt hat. Das ist das Diagramm dafür, wann du eingreifst. In den Monaten zwei bis vier gehen die Accounts verloren, nachdem aus dem Test ein Abo geworden ist und bevor der Betrieb seine echten Angebote und Rechnungen ins Werkzeug verlagert. Was auch immer du gegen Churn tust, tu es in den Wochen zwei bis acht. Der Buckel im 12. Monat ist ein kleineres Problem mit einer eigenen Lösung: ein Gespräch zur Verlängerung im 10. oder 11. Monat, keine automatische Mail "deine Karte wird belastet" am Stichtag.
Das Cox Modell: was den Hazard bewegt
Kaplan Meier gibt dir eine Kurve pro Gruppe. Es kann dir nicht sagen, ob der Plan Team besser überlebt wegen des Plans selbst oder weil Accounts im Plan Team mehr Plätze haben und mehr von ihnen das Onboarding abgeschlossen haben. Dafür brauchst du eine Regression auf den Hazard, und das Arbeitspferd ist das Cox Modell der proportionalen Hazards:3
Dabei ist der Hazard zum Zeitpunkt für einen Kunden mit den Merkmalen bis , der Basishazard, das Risiko über die Zeit für einen Referenzkunden, bei dem jedes null ist, und bis sind die aus den Daten geschätzten Koeffizienten, einer pro Merkmal. Das Modell muss die Form von nie kennen, das ist der kluge Teil. Der Exponentialterm skaliert den Basishazard pro Kunde nach oben oder unten. Weil diese Skalierung nicht von abhängt, ist das Verhältnis der Hazards zweier Kunden über die Zeit konstant. Das ist die Annahme proportionaler Hazards, und es ist eine Annahme, keine Tatsache. Ich komme bei den Fallstricken darauf zurück. Grundlagen: Regression
Die Größe, die du abliest, ist das Hazard Ratio:
Dabei ist das Hazard Ratio für das Merkmal und die Exponentialfunktion seines Koeffizienten . Ein Hazard Ratio von 0,55 heißt, dass ein Kunde mit diesem Merkmal bei sonst gleichen Bedingungen zu jedem Zeitpunkt 55 % des Kündigungsrisikos eines Kunden ohne dieses Merkmal hat, also ein um 45 % niedrigeres Risiko. Über eins heißt höheres Risiko, genau eins heißt, die Variable bewirkt nichts. Grundlagen: Logarithmen und Exponentialfunktionen
Hier ist das Modell für Werkbuch, geschätzt auf allen 2.400 Accounts, von denen 1.060 gekündigt haben und 1.340 zensiert sind. Seine Konkordanz liegt bei 0,71: Bei einem zufälligen Paar von Accounts sagt das Modell in 71 % der Fälle richtig, welcher länger bleibt. Die Dokumentation von lifelines merkt an, dass geschätzte Survival Modelle typischerweise zwischen 0,55 und 0,75 landen.3
| Variable | Koeffizient | Hazard Ratio | 95 % Intervall | Einfach gelesen |
|---|---|---|---|---|
| Onboarding abgeschlossen (ja gegenüber nein) | minus 0,60 | 0,55 | 0,47 bis 0,64 | 45 % geringeres Risiko zu jedem Zeitpunkt |
| Plätze (pro zusätzlichem Platz) | minus 0,13 | 0,88 | 0,84 bis 0,92 | jeder weitere Platz senkt das Risiko um 12 % |
| Plan Team gegenüber Starter | minus 0,34 | 0,71 | 0,61 bis 0,83 | 29 % geringeres Risiko in jedem Monat |
| Jährliche Abrechnung gegenüber monatlicher | minus 0,48 | 0,62 | 0,51 bis 0,75 | 38 % geringeres Risiko |
| Gewonnen über bezahlte Suche gegenüber Empfehlung | 0,22 | 1,24 | 1,05 bis 1,47 | 24 % höheres Risiko |
| Supporttickets in den ersten 30 Tagen (pro Ticket) | 0,09 | 1,09 | 1,01 bis 1,18 | 9 % mehr Risiko pro Ticket |
Jedes Hazard Ratio ist die Exponentialfunktion seines Koeffizienten, zum Beispiel , und jedes Intervall ist der Koeffizient plus oder minus 1,96 Standardfehler, exponentiert, deshalb liegen die Intervalle nicht symmetrisch um das Ratio. Grundlagen: Konfidenzintervalle
Zeile für Zeile. Das abgeschlossene Onboarding (Kunden importiert, ein Angebot verschickt, ein Bankkonto angebunden) ist der größte Hebel, und sein Intervall bleibt deutlich unter eins, also glaube ich die Richtung und ungefähr die Größe. Jeder weitere Platz senkt den Hazard um weitere 12 %: Ein Werkzeug, das drei Leute jeden Tag nutzen, verlässt man schwerer als das Experiment einer einzelnen Person. Mit diesen beiden im Modell schrumpft der Effekt des Plans auf 0,71, ein Teil des rohen Vorsprungs von Team in der Kaplan Meier Kurve war also eigentlich Onboarding und Plätze. Die jährliche Abrechnung mit 0,62 ist teils Bindung und teils Selektion, weil die Betriebe, die jährlich zahlen, schon vorher die zuversichtlichen waren. Accounts aus der bezahlten Suche gehen 24 % schneller als solche aus Empfehlungen, und das fließt später in die Rechnung zur Kundengewinnung ein. Und jedes Supportticket im ersten Monat bringt 9 % dazu, nicht weil der Support schlecht ist, sondern weil frühe Tickets ein Zeichen schlechter Passung sind.
Beispiel: zwei Accounts im Vergleich
Die Effekte multiplizieren sich. Nimm einen Account im Plan Team, der jährlich zahlt, das Onboarding abgeschlossen hat und vier Plätze hat, drei mehr als die Basis. Im Vergleich zu einem monatlich zahlenden Starter Account mit einem Platz, der das Onboarding nie abgeschlossen hat:
- Plan: 0,71.
- Jährliche Abrechnung: 0,62.
- Onboarding: 0,55.
- Drei zusätzliche Plätze: .
- Zusammen: .
Der erste Account trägt in jedem Monat etwa ein Sechstel des Kündigungsrisikos des zweiten. Den ersten muss im zweiten Monat niemand anrufen. Den zweiten müssen alle anrufen.
Entscheiden, wann du eingreifst
Das Modell verdient sein Geld, wenn du beide Ergebnisse zusammen nutzt: Die Form des Hazards aus Kaplan Meier sagt dir wann, die Hazard Ratios aus Cox sagen dir wen. Für Werkbuch ergibt das drei Regeln.
Accounts ohne Onboarding bis Tag 14 bekommen einen Menschen, keine Drip Kampagne. Das Onboarding halbiert den Hazard fast, und in diesem Beispiel schließen 61 % der Accounts, die es abschließen, das in den ersten zwei Wochen ab, nach der sechsten Woche fast keiner mehr. Das ist das Fenster für einen Anruf.
Monatlich zahlende Starter Accounts mit einem Platz bekommen im zweiten Monat ein gezieltes Angebot für einen weiteren Platz. Jeder Platz ist 12 % Hazard wert, und ein früh dazugenommener zweiter Platz ist der kostengünstigste Schritt zur Kundenbindung, den Werkbuch hat, weil er auch den Umsatz hebt.
Jährlich zahlende Accounts bekommen im 10. Monat ein Gespräch zur Verlängerung. Keinen Rabatt, ein Gespräch darüber, was das nächste Jahr besser machen würde.
Das Modell beweist nicht, dass Anrufe wirken. Es sagt dir, an wem du es testest, und wann. Wie ein Onboarding aussieht, das Gewohnheiten aufbaut, steht in Onboarding und Habit Formation. Das Survival Modell sagt dir, wie groß der Preis ist, wenn es gelingt.
Customer Lifetime Value, beschreibend und vorausschauend
Jetzt zum Geld. Zwei verschiedene Dinge heißen Customer Lifetime Value, und sie beantworten verschiedene Fragen.
Der beschreibende Customer Lifetime Value fragt, was Kunden bisher wert waren. Nimm jeden Account, addiere die Marge, die er bisher gebracht hat, und bilde den Durchschnitt. Im Plan Team von Werkbuch ist der durchschnittliche Account rund 15,5 Monate alt (gekündigte und aktive gemischt) und bringt bei einem Preis von 89 € einen Deckungsbeitrag von 71 € im Monat, nach Hosting, Zahlungsgebühren und Support. Also € pro Account. Nützlich für die Vergangenheit, schlecht für Ausgaben zur Kundengewinnung, weil ihn jeder junge Account nach unten zieht, der noch Jahre des Zahlens vor sich hat, und ein wachsendes Unternehmen hat viele davon.
Der vorausschauende Customer Lifetime Value fragt, was ein Kunde, der sich heute anmeldet, über seine gesamte Zeit mit dir wert sein wird. Hier kommt die Survivalfunktion ins Spiel:
Dabei ist der vorhergesagte Customer Lifetime Value eines neuen Kunden, die Summe läuft über künftige Monate von 1 bis zu einem Horizont , ist die Marge im Monat , falls der Kunde noch da ist, die Wahrscheinlichkeit, dass er es ist, und zinst den Monat mit einem monatlichen Zinssatz auf heute ab. Marge mal Überleben ist die erwartete Marge in diesem Monat, und die Abzinsung sagt, dass ein Euro im 48. Monat weniger wert ist als ein Euro jetzt. Grundlagen: Customer Lifetime Value und Grundlagen: Abzinsung
Das ist dieselbe Idee wie die Formel in den Grundlagen, nur ohne deren vereinfachende Annahme. Ist die Marge in jeder Periode dieselbe, , bleibt in jeder Periode derselbe Anteil der Kunden, sodass , und läuft der Horizont unendlich weiter, wird die Summe zu einer geometrischen Reihe:
Dabei ist die konstante Marge pro Periode, die konstante Bindungsrate, der Zinssatz zur Abzinsung und der Faktor, um den die erwartete, abgezinste Marge jeder Periode schrumpft. Das ist genau auf der Seite Grundlagen, die die Bindungsrate als und den Zinssatz als schreibt. Grundlagen: Customer Lifetime Value Die Survival Fassung lässt die Bindung von Monat zu Monat schwanken, weil das Risiko im dritten Monat nicht das Risiko im 30. ist.
Beispiel: der Plan Team, Monat für Monat
Die Eingaben des Beispiels: die monatlichen Hazards des Plans Team aus dem Diagramm für das erste Jahr, danach 1,2 % im Monat mit 2,2 % an jedem Jahrestag, eine Marge von 71 € im Monat, ein monatlicher Zinssatz von 1 % (rund 12,7 % im Jahr, bewusst vorsichtig für ein kleines Unternehmen, weil ) und ein Horizont von 60 Monaten. Gezeigt sind ausgewählte Monate, die ganze Tabelle hat 60 Zeilen.
| Monat | Hazard in diesem Monat | Überleben S(t) | Abzinsungsfaktor | Erwartete abgezinste Marge (€) | Kumulierter LTV (€) |
|---|---|---|---|---|---|
| 1 | 3,5 % | 67,84 | 68 | ||
| 3 | 5,1 % | 60,08 | 192 | ||
| 6 | 2,6 % | 52,62 | 356 | ||
| 12 | 3,0 % | 43,64 | 640 | ||
| 24 | 2,2 % | 33,16 | 1.095 | ||
| 36 | 2,2 % | 25,20 | 1.441 | ||
| 48 | 2,2 % | 19,15 | 1.703 | ||
| 60 | 2,2 % | 14,56 | 1.903 |
Geh sie von oben nach unten durch. Erster Monat: Überleben , Abzinsungsfaktor , also ist die erwartete abgezinste Marge €. Dritter Monat, auf dem Höhepunkt des Hazards: €. Bis zum 60. Monat ist sie auf 14,56 € gesunken.
Die kumulierte Spalte ist die Antwort: rund 1.903 € pro neuem Account im Plan Team, gerundet 1.900 €. Das sind 73 % mehr als die beschreibenden 1.100 €, denn , und der Unterschied ist kein Optimismus. Es sind die Jahre an Marge, die die jungen Accounts im beschreibenden Durchschnitt noch nicht erwirtschaften konnten.
Wer bei 60 Monaten aufhört, lässt Wert liegen (mit 37 % Wahrscheinlichkeit zahlt der Account noch), und damit kann ich leben: Fünf Jahre sind so weit, wie ich irgendeinem Abomodell traue. Die Wahl von ist eine Geschäftsentscheidung, keine statistische.
Churn mit und ohne Vertrag
Alles oben setzt voraus, dass du weißt, wann ein Kunde gegangen ist. Werkbuch weiß es: Ein Abo wird an einem Datum gekündigt, und das Ereignis wird beobachtet. Das ist Churn mit Vertrag, der einfache Fall.
Korbwerk, der erfundene Onlineshop für Geschenkkörbe in Hamburg aus früheren Kapiteln, den Lena betreibt, hat den schweren Fall. Eine Kundin, die 2024 einen Weihnachtskorb gekauft hat und seitdem nichts, hat nichts gekündigt. Vielleicht kauft sie diesen Dezember wieder, vielleicht ist sie für immer weg. Das Ende beobachtest du nie, nur Stille, und Stille ist in einem saisonalen Geschäft kein starker Beleg.
Das ist Churn ohne Vertrag. Entweder du legst ein praktisches Ende fest (kein Kauf innerhalb von 18 Monaten zählt als gekündigt, mit etwas Fehler), oder du nimmst probabilistische Kaufmodelle, in denen "noch Kunde" ein verborgener Zustand ist, erschlossen daraus, wie kürzlich und wie oft jemand gekauft hat. Das Beta Geometric Negative Binomial Modell von Fader, Hardie und Lee ist das bekannte Beispiel, gebaut als leichter zu schätzende Alternative zum älteren Pareto/NBD Modell.4 Der zweite Weg ist besser und mehr Arbeit. Bei einem Shop mit ein paar Tausend Kunden fange ich mit der praktischen Definition an und prüfe sie an den Käufern, die nach einer langen Pause zurückkamen: Bestellen 150 von 3.000 Kunden, die nach der Regel mit 18 Monaten abgeschrieben wurden, im nächsten Jahr wieder, lag die Regel bei 5 % von ihnen falsch, und du entscheidest, ob dieser Fehler annehmbar ist. Die Rechnung zur Kundenbindung für beide Fälle steht in die Retention Mathematik.
Was der Customer Lifetime Value an der Kundengewinnung ändert
Die teuerste Gewohnheit des Gründers war, in Google Ads auf ein Ziel von 250 € Kosten pro Akquisition zu bieten, gewählt, weil es sich "richtig anfühlte". Ein Account im Plan Team ist rund 1.900 € abgezinste Marge wert, also sehen 250 € locker gut aus. Aber Accounts aus der bezahlten Suche tragen ein Hazard Ratio von 1,24.
Beispiel: der Customer Lifetime Value eines Accounts aus der bezahlten Suche
Rechne die Summe noch einmal, mit jedem monatlichen Hazard um das Hazard Ratio erhöht. Mit Monatsdaten ist der exakte Weg statt , auch wenn beide bei so kleinen Hazards fast dasselbe ergeben. Ein Account im Plan Team aus der bezahlten Suche kommt dann auf rund 1.700 € statt 1.900 €. Immer noch weit über 250 €.
Jetzt ein Starter Account aus der bezahlten Suche. Die Annahmen des Beispiels: eine Marge im Plan Starter von 23 € im Monat und ein Hazard gleich dem Hazard im Plan Team mal , das Ratio der bezahlten Suche geteilt durch das Ratio von Team. Sein Customer Lifetime Value kommt auf rund 436 €, unter 500 €, und Werkbuch hat für beide dieselben 250 € gezahlt.
Die Arbeit am Customer Lifetime Value hat also zwei Dinge geändert. Die zulässigen Kosten der Kundengewinnung wurden eine Zahl pro Segment, ein Drittel des vorhergesagten Customer Lifetime Value, das Verhältnis, das der Gründer gewählt hat, nachdem er die Amortisationszeit gesehen hatte: rund € für einen Account im Plan Team aus der bezahlten Suche und rund € für einen Starter Account aus der bezahlten Suche. Und das Optimierungsziel der Kampagne wanderte von "Test gestartet" zu "Onboarding abgeschlossen", weil das Onboarding der Moment ist, in dem ein Lead etwas wert wird. Die Seite des Bietens steht in biete auf den Kundenwert, nicht auf die Kosten pro Klick. Das Survival Modell ist, woher der Kundenwert in dieser Überschrift kommt.
Wie du es selbst rechnest
Du brauchst eine Zeile pro Kunde mit drei Dingen: wie lange er beobachtet wurde (Monate von der Anmeldung bis zur Kündigung, oder bis heute, wenn er noch aktiv ist), ob die Beobachtung mit einer Kündigung endete (1) oder zensiert ist (0), und die Einflussgrößen, auf die es ankommt, gemessen nahe am Anfang, damit du nicht die Zukunft nutzt, um die Vergangenheit vorherzusagen. Die Zahl der Plätze an Tag 30 ist in Ordnung. Die Zahl der Plätze bei der Kündigung ist geschummelt.
Für Werkbuch ist der Datensatz eine SQL Abfrage auf die Tabellen für Abos und Events, und das Modell passt mit der Bibliothek lifelines auf eine Seite Python:23
from lifelines import KaplanMeierFitter, CoxPHFitter
for plan, grp in accounts.groupby("plan"):
km = KaplanMeierFitter().fit(grp["months"], event_observed=grp["churned"], label=plan)
print(plan, km.survival_function_at_times([6, 12, 24]).round(3).tolist())
cols = ["months", "churned", "onboarded", "seats", "plan_team", "annual", "paid_search", "tickets_30d"]
cox = CoxPHFitter().fit(accounts[cols], duration_col="months", event_col="churned")
cox.print_summary(decimals=2)
print(cox.concordance_index_)
cox.check_assumptions(accounts[cols], p_value_threshold=0.05)
Herausziehen und Aufräumen der Daten dauert ein, zwei Tage, wenn die Abohistorie vernünftig ist, eine Woche, wenn sie durch zwei Abrechnungssysteme gewandert ist. Ein belastbares Cox Modell mit den Prüfungen der Annahmen dauert zwei oder drei Tage. Sagen wir zwei Wochen von sauberen Daten bis zum Entscheidungsmemo.
Prüfungen, bevor du ihm traust. Zeichne die Kaplan Meier Kurven pro Gruppe und pro Anmeldejahr und such nach Kurven, die sich kreuzen, ein Zeichen, dass die proportionalen Hazards nicht halten, und führe dann check_assumptions aus.5 Halte die jüngste Kohorte zurück und vergleiche das vorhergesagte Überleben nach 12 Monaten mit dem, was passiert ist. Sei misstrauisch bei einer Konkordanz über 0,85, die meist heißt, dass eine Variable das Ergebnis verrät. Und lies die Hazard Ratios jemandem vor, der das Geschäft führt: Ergibt eines für sie keinen Sinn, liegt es öfter an den Daten als an ihrer Intuition.
Fallstricke
Proportionale Hazards sind eine Annahme. Das Cox Modell sagt, der Effekt der jährlichen Abrechnung sei im zweiten Monat derselbe Faktor wie im 20. Oft stimmt das nicht: Die jährliche Abrechnung hat im zweiten Monat fast keinen Effekt (niemand kündigt einen Plan, den er gerade für ein Jahr bezahlt hat) und im 12. Monat einen großen. Wenn sich die Kaplan Meier Kurven zweier Gruppen kreuzen oder annähern, mittelt das einzelne Hazard Ratio etwas, das nicht konstant ist. Die Lösungen sind, nach dieser Variable zu stratifizieren oder ihren Effekt mit der Zeit schwanken zu lassen. Beides ist Standard, und der Leitfaden von lifelines geht beides durch.5 Keines davon passiert von allein.
Zu spät gemessene Einflussgrößen. "Logins im letzten Monat" sagt Churn wunderbar vorher, weil Accounts kurz vor der Kündigung aufhören, sich einzuloggen. Das ist ein Symptom, kein Prädiktor. Miss Einflussgrößen an einem festen, frühen Punkt.
Den Customer Lifetime Value als eine Zahl behandeln. Die 1.900 € verdecken ein Segment, das unter 500 € wert ist, und eines, das mehrere Tausend wert ist. Eine einzige Zahl für das ganze Unternehmen, fürs Bieten genutzt, zahlt für das schwache Segment zu viel und für das starke zu wenig, und genau da stand Werkbuch.
Das Modell sagt vorher, es überzeugt nicht. Ein Hazard Ratio von 0,55 sagt dir, dass Accounts mit Onboarding länger bleiben, nicht, dass ein Account bleibt, wenn du ihn durchs Onboarding schiebst. Die Betriebe, die es von selbst abgeschlossen haben, waren vielleicht die, die sowieso geblieben wären. Wissen kannst du es nur, wenn du die Maßnahme testest, und darum geht es in Kapitel 20 dieser Serie.
Wie ich das für Kunden mache
Das Ergebnis ist ein Survival Modell, eine Tabelle zum Customer Lifetime Value nach Segment und ein Entscheidungsmemo auf einer Seite, und es dauert etwa einen Monat. Die Daten, die ich brauche: die Abo oder Bestellhistorie mit Start und Enddaten, den Plan und das, was du über die ersten Wochen jedes Kunden aufzeichnest. Ein Export aus Stripe, Chargebee, Solidus oder deiner eigenen Datenbank reicht. Ich brauche sie nicht sauber, ich brauche sie vollständig.
Es beginnt mit dem kostenlosen Workshop, in dem wir klären, welche Entscheidung das Modell ändern soll: wann du Leute anrufst, was du für einen Lead zahlst, ob es sich lohnt, den Jahresplan zu fördern. Danach kommen zwei Wochen echte Arbeit auf meine Rechnung: Kaplan Meier Kurven nach Plan und Kohorte, ein erstes Cox Modell mit seinen Hazard Ratios und ein Entwurf der Tabelle zum Customer Lifetime Value. Bringen diese zwei Wochen nichts, worauf du handeln würdest, sage ich dir das.
Machen wir weiter, bekommst du das geschätzte Modell als Code, der dir gehört, eine bewertete Liste jedes Accounts mit seinem vorhergesagten Überleben nach 12 Monaten und seinem verbleibenden Wert, die Tabelle zum Customer Lifetime Value nach Segment und ein Memo mit einer Empfehlung, einer Zahl und einem Risiko. Zum Beispiel: "Ruf Starter Accounts an, die bis Tag 14 kein Onboarding abgeschlossen haben. Laut Modell betrifft das 38 % des Churns im ersten Jahr. Das Risiko ist, dass das Onboarding ein Merkmal und keine Ursache ist, also teste es zuerst an der Hälfte der Accounts." Das ist ein Auftrag in Data Science, und wenn das Ergebnis die Gebote zur Kundengewinnung neu setzt, ist die Seite der Kampagnen Performance Marketing. Die Kosten stehen auf der Preisseite.
Fragen an dein eigenes Team
- Wie sieht der Hazard nach Lebensmonat aus, und wo ist er am höchsten?
- Ist der Customer Lifetime Value im Bericht an den Beirat beschreibend oder vorausschauend, und mit welchem Zinssatz und welchem Horizont rechnet er?
- Gibt es einen Customer Lifetime Value oder einen pro Segment, und nutzt das Bieten die Zahlen pro Segment?
- Welcher Test würde beweisen, dass der Schritt zur Kundenbindung den Effekt verursacht, den das Modell vorhersagt?
Die Serie ist inspiriert von Mike Grigsbys Buch Marketing Analytics.6 Die Erklärungen, Beispiele und Zahlen hier sind meine eigenen.
Quellen
Footnotes
-
Cameron Davidson Pilon und die Mitwirkenden von lifelines, Introduction to survival analysis (Survivalfunktion, Hazardfunktion, Rechtszensierung), lifelines Dokumentation, https://lifelines.readthedocs.io/en/latest/Survival%20Analysis%20intro.html
-
Cameron Davidson Pilon und die Mitwirkenden von lifelines, Survival analysis with lifelines (die Kaplan Meier Schätzung), lifelines Dokumentation, https://lifelines.readthedocs.io/en/latest/Survival%20analysis%20with%20lifelines.html
-
Cameron Davidson Pilon und die Mitwirkenden von lifelines, Survival regression (Cox Modell der proportionalen Hazards, Konkordanzindex), lifelines Dokumentation, https://lifelines.readthedocs.io/en/latest/Survival%20Regression.html
-
Peter S. Fader, Bruce G. S. Hardie und Ka Lok Lee, "Counting your customers" the easy way: an alternative to the Pareto/NBD model, Marketing Science 24(2), 2005, https://brucehardie.com/papers/018/
-
Cameron Davidson Pilon und die Mitwirkenden von lifelines, Testing the proportional hazard assumptions, lifelines Dokumentation, https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html
-
Mike Grigsby, Marketing Analytics: A Practical Guide to Improving Consumer Insights Using Data Techniques, Kogan Page, 2022, ISBN 9781398608191, https://www.netgalley.co.uk/catalog/book/267990