Free Trial

Blog - Deutsch

Erkenntnisse und Ideen von den besten Analytics-Experten.
RolandSchubert
16 - Nebula
16 - Nebula

RFM-Analyse – So einfach können Sie Kundensegmente identifizieren

 

Kommt Ihnen die Situation bekannt vor? Sie sollen kurzfristig eine Kampagne erstellen, die sich gezielt an die Kunden richtet, bei denen der größte Umsatz zu erwarten ist, unnötige Streuverluste sollen natürlich vermieden werden. Und Sie müssen die Kunden, an die Sie adressieren, erst noch identifizieren, eine entsprechende Liste gibt es da noch nicht.

        

Viele denken jetzt gleich an Machine Learning oder Artificial Intelligence (und daran, dass sie nun mal kein Data Scientist sind) oder an die umfassende Datenbasis mit vielfältigen demografischen Merkmalen, die dann benötigt wird (und die in dieser Form natürlich nicht zur Verfügung steht).

Dabei gibt es für eine solche Aufgabenstellung auch Lösungen, die sich ganz einfach mit den Daten umsetzen lassen, die bereits zur Verfügung stehen, und von denen man sofort profitieren kann. Klingt doch erstmal nicht schlecht, oder? Also – los geht’s!

 

Haben Sie Zugriff auf die Transaktionsdaten Ihrer Kunden? Dann haben wir eigentlich schon alles, was gebraucht wird, um Kunden mit Hilfe der RFM-Analyse in Segmente einzuteilen, die für die Steuerung vieler Marketing-Aktivitäten genutzt werden können (unter anderem auch für die bereits angesprochene Kampagne). Und ganz nebenbei lässt sich noch eine Reihe weiterer Erkenntnisse gewinnen, die helfen, das Verhalten der Kunden besser zu verstehen.

 

RFM-Analyse – der grundlegende Ansatz

 

Was genau ist nun eine RFM-Analyse? Es handelt sich dabei um ein Scoring-Verfahren, dessen Name sich von den Aspekten des Kaufverhaltens ableitet, die bei der Anwendung der Methode betrachtet werden: Recency (Aktualität), Frequency (Kaufhäufigkeit) und Monetary Value (Umsatz). Dazu nutzen wir Daten, die konkrete Transaktionen (= Käufe) abbilden, also einen wesentlichen Bereich des Handelns unserer Kunden erfassen.

Das Konzept wurde bereits 1995 von Bult und Wansbeek eingeführt und zunächst zur Optimierung von Aktivitäten im Direktmarketing genutzt, hat sich aber seither auch darüber hinaus als Ansatz etabliert, um Kunden besser zu verstehen und Kundengruppen zu bilden. Wenn man den Ergebnissen einer umfangreichen Studie (Blattberg u.a., 2008) glaubt, dann können geringere Kosten und höherer Ertrag im Kundenmanagement erreicht werden, wenn zur Steuerung der Maßnahmen die RFM-Analyse genutzt wird.

 

Bei der RFM-Analyse geht es um drei wesentliche Fragen des Kundenverhaltens:

  • Recency (=“R“): Wann hat der Kunde letztmalig bei uns gekauft? Je länger der letzte Kauf zurückliegt, desto weniger aktuell ist die Kundenbeziehung und damit ist eine positive Reaktion auf eine Marketing-Aktion weniger wahrscheinlich
  • Frequency (= „F“): Wie oft hat der Kunde bei uns gekauft (insgesamt oder innerhalb eines definierten Zeitraums)? Zu Kunden, die häufiger kaufen, besteht in der Regel eine intensivere Beziehung, sie reagieren meist besser auf Marketing-Maßnahmen als Kunden, die sehr selten kaufen.  
  • Monetary Value (= „M“): Wie hoch ist der Umsatz des Kunden (aus all seinen bisherigen Käufen oder innerhalb eines vorgegebenen Zeitraums)? Kunden, mit denen wir einen höheren Umsatz erzielen, sind wichtiger für das Unternehmen. Außerdem finden wir bei ihnen eine höhere Wahrscheinlichkeit für eine positive Reaktion auf unsere Aktionen.

 

Übrigens: Es gibt auch Abwandlungen der RFM-Analyse, die statt der wertmäßigen Kennzahl „Umsatz“ ein am Engagement orientiertes Kriterium (Verweildauer, Nutzungsintensität) verwenden – man spricht dann von RFE (Recency – Frequency – Engagement), RFM ist aber die gebräuchlichere Variante.

 

C001.jpg

 

Zunächst müssen nun genau diese drei Kennzahlen aus unseren Transaktionsdaten ermittelt werden, das heißt, wir berechnen für jeden Kunden, wie lange der letzte Kauf zurückliegt, finden also je Kunde das letzte Datum finden und berechnen, wie viel Tage (gegebenenfalls auch Wochen/Monate) seither vergangen sind), zählen die Käufe im Zeitraum, den wir für die Analyse nutzen (das könnten zum Beispiel die letzten 12 Monate sein, je nach Branche aber auch mehrere Jahre), und summieren die Umsätze in diesem Zeitraum. Damit haben wir schon alle Basisdaten, die wir benötigen.

 

In einem kleinen Beispiel mit 15 Kunden könnte das dann etwa so aussehen:

 

P001.jpg

 

Für jeden Kunden und für jede dieser Kennzahlen wird dann ein individueller Score, also eine Punktbewertung vergeben. Diese drei Einzelwerte werden im Anschluss zu einer Gesamtbewertung zusammengefasst, die verwendet werden kann, um den Kunden einer durch ihr spezifisches Kaufverhalten beschriebene Kundengruppe zuzuordnen.

 

Die Bewertung der Kennzahlen nutzt in der Regel eine Skala mit fünf Stufen. Eine feinere Untergliederung ist dabei zwar möglich, sollte allerdings immer den dadurch erzielbaren zusätzlichen Erkenntniswert im Blick behalten – bei 5 Stufen für jedes Kriterium entstehen bereits 125 Kombinationen (5 x 5 x 5), zusätzliche Verfeinerung führt oftmals nur zu übermäßiger Komplexität, bringt aber keine nutzbaren Einsichten.

 

RFM-Scoring – Wie funktioniert die Bewertung?

 

Wie aber erfolgt die Vergabe der Punktwerte für die einzelnen Kennzahlen? Es gibt grundsätzlich zwei methodische Ansätze, die verwendet werden können.

 

Methode 1: Punktvergabe nach Ranking

 

Eine sehr gut nachvollziehbare und transparente Methode ist die Vergabe der Punkte nach einem Ranking-Ansatz. In diesem Fall werden die Kunden zunächst für das jeweils zu bewertende Kriterium sortiert. Im Fall von „Recency“ sortieren wir aufsteigend, niedrige Werte, also ein aktuelleres Kaufdatum, sind für dieses Kriterium besser; im Falle von „Frequency“ und „Monetary Value“ dagegen wird absteigend sortiert, hier sollen häufigere Käufe beziehungsweise höhere Umsätze zu besserer Bewertung führen. Wenn wir uns zuvor entschieden haben, für die Bewertung eine Skala von 1 bis 5 zu nutzen, teilen wir nun die Kunden entsprechend der Sortierung in fünf gleich große Gruppen ein („Quintile“); die Kunden in der ersten Gruppe erhalten 5 Punkte, bei der letzten Gruppe wird noch 1 Punkt vergeben.

 

C002.jpg

 

Bei dieser Methode ergibt sich die Definition der einzelnen Stufen gewissermaßen aus den Daten selbst, nach Vorgabe der Anzahl Gruppen (= Stufen auf der Skala) lassen sich die Bewertungen nach der Sortierung durch einfaches Abzählen schnell ermitteln.

 

Auf das Beispiel bezogen könnte das für die Kennzahl „Recency“ etwa so aussehen, nachdem wir aufsteigend sortiert, den Rang ermittelt und dann Punktbewertungen nach der Rangfolge vergeben haben:

 

P002.jpg

 

Für die Kennzahl „Frequency“ haben wir dagegen absteigend sortiert und dann den Rang ermittelt. Hier finden wir auch den Fall, dass zwei Kunden den gleichen Basiswert haben und damit den gleichen Rang erhalten – die Kriterien werden ja isoliert betrachtet, somit gibt es kein Merkmal, das in einem solchen Fall zur Unterscheidung herangezogen werden könnte. Ein abweichender Punktwert bei gleichem Basiswert und Rang wäre nicht plausibel, so dass die Aufteilung in gleich große Gruppen nicht funktioniert. Daher ordnen wir die Kunden K009, K002, K011 und K012 (also alle bis einschließlich Rang 3) der ersten Gruppe zu; sie erhalten jeweils 5 Punkte, während die zweite Gruppe hier nur aus K001 und K010 besteht.

 

P003.jpg

 

Für Monetary Value wird ebenfalls aufsteigend sortiert, dann der Rang ermittelt und bewertet. Hier fällt besonders die große Bandbreite in der ersten Gruppe auf, die K009 mit 2.066 € Umsatz enthält, aber auch K008 mit nur noch 808 €.; dieser Kunde hat gerade mal einen um 9 € höheren Umsatz als K002, der aber schon der nächsten Gruppe zugeordnet wird.  

 

P004.jpg

 

 

Methode 2: Vorgegebene Bereiche

 

Alternativ ist es möglich, statt der von den ermittelten Basiswerten abgeleiteten Rangordnung eben diese Basiswerte selbst als Grundlage der Bewertung zu nutzen. Statt die Bewertung über eine Rangfolge zu ermitteln, stellen wir die Frage, was für das entsprechende Kriterium ein „sehr guter“ (= 5 Punkte), „mittelmäßiger“ (= 3 Punkte) oder „niedriger“ (= 1 Punkt) Wert ist. Diese Einschätzung erfordert allerdings eine genaue Kenntnis des Kundenverhaltens und ist stark vom Einzelfall abhängig – die Kaufhäufigkeit in einem Lebensmittelgeschäft unterscheidet sich nun mal deutlich von der im Autohaus, um einmal konkrete Beispiele zu nennen.

 

C003.jpg

 

Dieser Ansatz kann zu sehr uneinheitlichen Gruppengrößen führen, die sich zudem mitunter im Laufe der Zeit stark verändern. Die vorliegenden Daten haben hier keinen Einfluss auf die Bewertung, sondern diese hängt ausschließlich an vorgegebenen Kriterien, enthält also eine subjektive Prägung, eröffnet aber die Möglichkeit, fachliches Wissen einfließen zu lassen.

 

Beide Methoden haben ihre jeweiligen Vorzüge, aber auch den einen oder anderen Nachteil. Die Entscheidung, welcher Ansatz genutzt werden soll, kann nur individuell, abhängig von den jeweiligen Rahmenbedingungen getroffen werden – eine allgemeine Regel, welches der „bessere“ Ansatz ist, gibt es leider nicht, sondern es gibt allenfalls den Ansatz, der für den konkreten Anwendungsfall besser geeignet ist.

 

Als Ergebnis erhalten wir eine Tabelle, die etwa so aussehen kann:

 

P007.jpg

 

 

Segmente bilden mit RFM

 

Ganz gleich für welchen Bewertungsansatz man sich entscheidet - wenn alle Kunden für die drei Kriterien bewertet sind, kann ein Gesamtscore gebildet werden, den wir im Anschluss zur Bildung von Kundensegmenten nutzen wollen.

 

Dieser Gesamtscore entsteht einfach durch Verknüpfung (Verkettung) der einzelnen Scores; ein Recency-Score von „4“, ein Frequency-Score von „5“ und ein Monetary Value-Score von „3“ ergibt dann „453“ als „RFM-Klasse“. Insgesamt ergeben sich so 125 Kombinationen zwischen „555“ (letzter Kauf vor kurzer Zeit | hohe Kaufhäufigkeit | hoher Umsatz) und „111“ (seit langer Zeit keinen Kauf | wenige Käufe | geringer Umsatz), eine sehr differenzierte Untergliederung - für die Steuerung von Marketing-Maßnahmen in der Praxis wohl in der Regel zu differenziert. Es ist daher sinnvoll, die Vielzahl von RFM-Klassen zu übergeordneten Segmenten zusammenzufassen.

 

Ein oft vorgeschlagener Weg ist hier, aus Frequency und Monetary Value einen Durchschnitt zu berechnen und einzelne Segmente für Bandbreiten dieser kombinierten Größe und der weiterhin isoliert betrachteten Recency zu bilden. Unser „Top-Kunden“ sind dann die, deren letzter Kauf nicht lang zurück liegt und die einen hohen Mittelwert von Frequency und Monetary Value erreichen (also im Idealfall oft und viel kaufen, aber zum Beispiel auch hohe Umsätze bei einer mittleren Kaufhäufigkeit erzielen). Es lassen sich aber auch Kunden erkennen, die besonderer Aufmerksamkeit bedürfen – insbesondere die Kunden, die lange nicht mehr gekauft haben, für die davor aber viele Einkäufe und hohe Umsätze verzeichnet wurden dagegen können wir Kunden, die lange nicht mehr gekauft haben, aber auch nie besonders aktiv waren, vermutlich als „verloren“ einstufen. So lässt sich eine Liste von Segmenten entwickeln, auf deren Grundlage sich geeignete Maßnahmen ableiten lassen (klar – unsere Top-Kunden sollten wir anders ansprechen als Kunden, bei denen akute Verlustgefahr besteht, wieder anders sind Aktionen zu gestalten, die sich an inaktive oder vermutlich schon verlorene Kunden richten).

 

Das Ergebnis könnte etwa so aussehen:

 

P009.jpg

 

Leider verlieren die Kriterien Frequency und Monetary Value durch die Durchschnittsbildung etwas an Aussagekraft, dies lässt sich durch eine Betrachtungsweise vermeiden, die alle drei Kriterien berücksichtigt, also „dreidimensional“ segmentiert. Hier wäre dann etwa zu klären, ob wir einen Kunden als Top-Kunden einstufen, wenn er hohe Umsätzen bei wenigen Käufen erzielt (der Durchschnitt von „F“ und „M“ wäre dann eher im Mittelfeld, allerdings gibt es Studien, die gerade die große Bedeutung dieser Kunden zeigen, so etwa https://marketingland.com/why-you-want-clumpy-binge-buying-customers-260406).

 

Eine Segmentbildung, die nach diesem Ansatz erfolgt, könnte dann etwa so aussehen:    

 

P010.jpg

 

In beiden Fällen gilt: Die Zuordnung muss auf die spezifische Situation angepasst werden – die Klassifizierung als „Top-Kunde“ kann nicht allgemein definiert werden, auch die Zeit der Inaktivität, die auf den drohenden Verlust eines Kunden hindeutet, ist individuell verschieden.

 

Und wie funktioniert die RFM-Analyse in der Praxis?

 

Wie wir jetzt gesehen haben, benötigen wir für die RFM-Analyse nur Daten, auf die wir wahrscheinlich sofort zugreifen können (falls nicht, sollte sich das auf jeden Fall sehr schnell einrichten lassen). Bleibt allerdings noch die Frage, wie wir die Daten dann analysieren und die Segmente bilden können. Bei einer geringen Kundenzahl und wenigen Transaktionen könnten wir natürlich Excel nutzen, bei einer großen Zahl von Kunden und Transaktionen ist das aber vielleicht nicht die beste Wahl. Außerdem kann die RFM-Analyse ja auch benutzt werden, um bei drohendem Verlust wichtiger Kunden frühzeitig zu warnen. Das funktioniert natürlich nur, wenn die Analyse regelmäßig wiederholt wird, da wäre ein automatisierter Prozess bestimmt keine schlechte Idee … also ein Fall für Alteryx. Dann bauen wir doch einfach mal einen Workflow.

 

Vorbereitung Daten

 

Zunächst einmal laden wir die Daten in Alteryx. Dazu verwenden wir ein Input Data Tool. Als Datenquelle wählen wir die csv-Datei mit den Transaktionsdaten, der Delimiter ist bei unseren Beispieldaten ein „;“.

 

A001.jpg

 

In den meisten Fällen werden die Transaktionsdaten vermutlich in Form einer Datenbanktabelle zur Verfügung stehen, wir müssen die Datenquelle dann eben entsprechend wählen.

 

In unserem Fall steht eine csv-Datei zur Verfügung. Die einzelnen Felder werden in diesem Fall grundsätzlich als Text importiert, hier müssen wir also noch korrigieren, wir wollen schließlich mit Datum und Umsatz später noch rechnen, das funktioniert nur, wenn wir den entsprechenden Datentyp zur Verfügung haben.

 

Dazu nutzen wir ein Formula Tool. Für die Umwandlung des Felds [Umsatz] können wir die Funktion ToNumber nutzen, die einen Text in einen numerischen Wert umwandelt. Durch den letzten Parameter der Funktion legen wir übrigens das Komma als Dezimaltrenner fest, als Tausendertrenner wird so automatisch ein Punkt angenommen.     

 

A002.jpg

 

Auch das Feld [Datum] müssen wir noch in den korrekten Datentyp zu verwandeln. Das erledigen wir mit Hilfe der Funktion DateTimeParse, die einen Text aus dem angegebenen Format in ein Datum umwandelt.

 

A003.jpg

 

Statt der Funktion im Formula Tool könnten wir auch ein DateTime Tool nutzen. Die Entscheidung ist eine Frage des persönlichen Geschmacks, da das Formula Tool hier schon im Workflow war, habe ich mich für diese Variante entschieden.

 

Wir haben jetzt zwei neue Felder erzeugt, die den Inhalt der importierten Felder [Datum] und [Umsatz] enthalten, aber den richtigen Feldtyp haben. Um die Übersicht zu behalten, sollten wir nun die ursprünglichen Felder entfernen (sie werden ja nicht mehr benötigt) und vielleicht noch die Namen der neuen Felder anpassen.

 

A004.jpg

 

Falls den Zeitraum, für den die Datei Transaktionsdaten enthält, nicht auf unseren vorgesehenen Analysezeitraum eingeschränkt ist, müssen wir noch die Datensätze wählen, die wir verwenden wollen. Wir können das sehr flexibel halten, indem wir unseren Zeitraum ausgehend vom aktuellen Datum oder dem ersten Tag des laufenden Monats festlegen. Dazu brauchen wir wieder ein Formula Tool.

 

A005.jpg

 

Wir wollen hier die letzten 12 abgeschlossenen Monate betrachten. Den Anfang dieses Zeitraums finden wir, indem wir vom ersten Tag des laufenden Monats ein Jahr zurückgehen, das Ende ist der Tag vor dem ersten Tag des laufenden Monats. Hier helfen die Funktionen DateTimeFirstOfMonth, die den ersten Tag des laufenden Monats liefert, und DateTimeAdd zur Berechnung der entsprechenden Zieldaten.

 

Da wir jetzt Anfang und Ende unseres Analysezeitraums ermittelt haben, können wir über ein Filter Tool die gewünschten Datensätze auswählen.

 

A006.jpg

 

Werfen wir einen Blick auf das, was wir inzwischen aufgebaut haben:

 

A007.jpg

 

 

Wir importieren Transaktionsdaten, wandeln Felder in den korrekten Datentyp um, entfernen überflüssige Datenfelder, ermitteln die Kriterien für die Auswahl der Daten und selektieren diese Daten dann – unsere Datenbasis steht für die RFM-Analyse bereit und wir können uns in den nächsten Schritten der Ermittlung und Bewertung der einzelnen Kennzahlen zuwenden. 

 

Es ist übrigens definitiv kein Fehler, die einzelnen Tools kurz zu kommentieren (über Annotations oder Comment Tools) und einen Tool Container zu nutzen, um die Tools zusammenzufassen, die zu einem Schritt gehören – so behält man die Übersicht, auch wenn der Workflow größer wird.

 

Kriterium 1: Recency

 

Wir haben jetzt für unsere Kunden alle Transaktionen aus dem Zeitraum, den wir uns anschauen wollen, und es geht nun darum, für jeden Kunden herauszufinden, wie viel Zeit seit dem letzten Einkauf vergangen ist.

 

Wir nutzen nun zunächst ein Summarize Tool, um für jeden Kunden den letzten Einkauf zu finden; wenn wir nach Kundennummer gruppieren, ist der letzte Einkauf einfach der Maximalwert für das Datum. Wir nehmen dann noch den letzten Tag des Zeitraums mit (das Feld hat immer den gleichen Wert, wir können also einfach den ersten Datensatz nehmen).

 

A011.jpg

 

Den Ergebnisfeldern geben wir dann auch gleich sprechende Namen – so kann man die Logik leichter nachvollziehen.

 

Jetzt müssen wir nur noch die Differenz zwischen dem Datum des letzten Einkaufs und dem Ende des Analysezeitraums ermitteln. Hier hilft wieder ein Formula Tool und die bereits verwendete Funktion DateTimeDiff, mit der wir die [Tage seit Kauf] berechnen können. Durch die Benennung der Felder ist auch sofort klar, was hier passiert.

 

A012.jpg

 

Nach der gerade berechneten Wert sortieren wir nun – wichtig ist, dass wir aufsteigend sortieren müssen, für „Recency“ wird ein geringerer Wert besser bewertet.

 

A013.jpg

 

Jetzt können wir einfach das RecordId Tool benutzen, um den einzelnen Datensätzen (= Kunden) jeweils ihre Position zuzuordnen.

 

A014.jpg

 

 

Können wir jetzt zur Bewertung kommen? Nicht ganz, denn es kann ja sein, dass bei zwei oder auch mehr Kunden die gleiche Anzahl Tage seit Kauf vergangen sind - die müssten ja den gleichen Rang bekommen. Mit dem RecordId Tool vergeben wir aber einfach nur eine laufende Nummer, dieser Fall ist dabei nicht vorgesehen.

 

Um dieses Problem zu lösen, können wir das Multi-Row Formula Tool einsetzen. Damit haben wir die Möglichkeit, jeweils zu vergleichen, ob die Anzahl Tage in der aktuellen Zeile gleich der Anzahl in der vorhergehenden Zeile ist – in diesem Fall wird einfach der Rang des Vorgängers übernommen.

 

A015.jpg

 

So, nun sollten alle Kunden richtig einsortiert sein, jetzt können wir die entsprechenden Punkte auf unserer Skala von 1-5 vergeben. Falls wir 30 Kunden betrachten, würde Rang 1-6 5 Punkte bekommen, bei 7-12 ginge es dann mit 4 Punkten weiter. Bei 40 Kunden wären es eben 5 Punkte für die Positionen 1-8. Bedeutet: Nur der Rang genügt nicht, wir müssen auch die Anzahl Kunden kennen, um bewerten zu können. Um diese zu ermitteln, können wir das Count Records Tool nutzen.

 

A016.jpg

Es liefert die Zahl der Datensätze, die wir dann über ein Append Fields Tool an die eigentlichen Datensätze anhängen. Da das Count Records Tool nur einen einzige Wert zurückgibt, wird der Datensatz einfach um dieses Feld [Count] ergänzt. Wir nutzen die Gelegenheit auch, um uns von nicht mehr benötigten Feldern zu trennen – da der Rang ermittelt ist, brauchen wir das Ende des Analysezeitraums nun nicht mehr. 

 

A017.jpg

 

Um jetzt aus Rang und Anzahl Kunden (= [Count]) den Score, also die zugeordnete Punktbewertung der Kunden zu ermitteln, benötigen wir wieder ein Formula Tool; dabei ist die Anzahl der Stufen auf 5 festgelegt, könnte aber natürlich auch variabel gestaltet werden. Um die Punkte zu ermitteln, könnten wir natürlich statt der hier benutzten Formel auch mit Bedingungen arbeiten.

 

A018.jpg

 

Das Feld [Count] benötigen wir nun auch nicht mehr, also verwenden wir ein weiteres Select Tool, um es zu entfernen. Bei einer geringen Anzahl von Kunden ist das sicherlich nicht erforderlich, zahlt sich aber bei großen Kundenzahlen (generell bei großen Datenmengen) aus.

 

A019.jpg

 

Damit wäre die Bewertung der Kunden für das Kriterium „Recency“ vollständig. Das Ergebnis können wir uns mit einem Browse Tool anschauen. Hier könnten wir übrigens auch filtern (etwa nach Bewertung), um uns einzelne Gruppen näher anzuschauen.

 

A020.jpg

 

Diesen Teilschritt schauen wir uns jetzt noch in der Übersicht an (inzwischen natürlich auch kommentiert und in einem Tool Container😞 

 

A021.jpg

 

Kriterium 2: Frequency

 

Im nächsten Schritt ermitteln wir nun für unsere Kunden die „Frequency“, also die Kaufhäufigkeit. Dazu müssen wir einfach nur die jeweilige Anzahl von Transaktionen pro Kunde ermitteln, mit dem Summarize Tool ist das schnell erledigt. Mit Count Distinct zählen wir die unterschiedlichen Einträge der Spalte [Datum] je Kunde (Group By).

 

A022.jpg

 

Die Anzahl Transaktionen (Kaufhäufigkeit) wird jetzt absteigend sortiert – hier sollen höhere Werte natürlich zu einer besseren Punktbewertung führen.

 

A023.jpg

 

Die folgenden Schritte entsprechen dem Ablauf bei der Bewertung der „Recency“, also schauen wir uns hier gleich den kompletten Bereich an:

 

A024.jpg

 

Wir können die Ergebnisse wieder mit einem Browse Tool prüfen. Hier sehen wir dann auch den Fall gleicher Basiswerte, die zu gleichem Rang und einer Anpassung der Gruppengröße führen. Da K005, K013 und K025 die gleiche Anzahl Transaktionen haben, landen alle auf Rang 14 und werden mit 3 Punkten bewertet – zu dieser Gruppe gehören damit statt der eigentlich vorgesehen 5 Kunden nun 6. Das gleiche wiederholt sich bei K002, K008 und K023, so dass auch die nächste Gruppe aus 6 Kunden besteht, während die letzte (1 Punkt) nur 3 Kunden enthält. In der Praxis wird dieser Fall sicherlich auch auftreten, aufgrund der vermutlich größeren Kundenzahl zumeist aber nicht so stark ins Gewicht fallen.

 

A025.jpg

 

 

Kriterium 3: Monetary Value

 

Auch für das dritte Kriterium kann der gleiche Ablauf verwendet werden – diesmal ist der erste Schritt allerdings die Summierung der Umsätze pro Kunde.

 

A026.jpg

 

Die folgenden Schritte sind wieder die gleichen, die schon bei den anderen Kriterien benutzt wurden – das Ergebnis sieht so aus:

 

A027.jpg

 

 

Auch für Monetary Value erhalten wir ein Punktbewertung nach dem bekannten Muster – diesmal ohne gleiche Basiswerte und Gruppenverschiebungen.

 

A028.jpg

 

 

Zusammenfassung der Kriterien

 

Nachdem jetzt die Einzelwerte zur Verfügung stehen, können wir die Ergebnisse zusammenfassen. Hier hilft ein Join Multiple Tool, um über die Kundennummer als gemeinsames Feld die Einzelergebnisse zu verbinden:

 

A029.jpg

 

Die Kundennummer wird als Feld für den Join verwendet, im Ergebnis wird dann die Kundennummer nur einmal aufgenommen (der Fall, dass ein Kunde nur für eins der Kriterien vorhanden ist und in den anderen Inputs fehlt, kann nicht auftreten). Da wir das Feld [Rang] für alle drei Kriterien gleich benannt haben, müssen wir es hier noch entsprechend umbenennen.

 

Jetzt können wir die „RFM-Klasse“ ermitteln, indem wir die drei Einzelbewertungen verketten; dazu verwenden wir ein Formula Tool. Da es sich um drei numerische Werte handelt, müssen diese in Strings umgewandelt werden – die Funktion ToString erledigt das.

 

A030.jpg

 

 

Das Ergebnis sortieren wir dann absteigend nach dem neu erstellten Feld „RFM-Klasse“ und schauen es uns über ein Browse Tool an.

 

A031.jpg

 

Besonders auffällig ist hier, dass die Kunden mit den höchsten Gesamtumsätzen sehr weit hinten in der Tabelle zu finden sind, also bereits sehr viel Zeit seit dem letzten Einkauf vergangen ist – dies kann ein Indikator für einen drohenden Kundenverlust sein, so dass gerade bei derart wichtigen Kunden dringend etwas unternommen werden sollte.

  

Und jetzt bilden wir Segmente!

 

Die „RFM-Klassen“ sind ja sehr differenziert, also fassen wir sie nach einer der oben vorgestellten Methoden zusammen. Dazu wird zunächst in einem Formula Tool mit der Average Funktion ein Durchschnitt aus den Scores für Kaufhäufigkeit und Umsatz gebildet:

 

A032.jpg

 

 

Neben der Recency-Bewertung und dem Durchschnitt von Frequency und Monetary Value benötigen wir aber auch noch eine entsprechende Zuordnungstabelle – in welchem Wert soll welches Segment zugewiesen werden. Die Segmentbezeichnungen und die entsprechenden Bereiche packen wir in ein Text Input Tool (wir könnten hier auch eine weitere Datei anlegen, es gibt ja oftmals verschiedene Möglichkeiten, wie ein Aufgabe gelöst werden kann):

 

A033.jpg

 

Jetzt muss für jeden Kunden geprüft werden, ob die entsprechenden Scores im jeweiligen Bereich liegen, und dann das Segment entsprechend zugeordnet werden. Aber halt – es gibt da ja einige Überschneidungen. Wenn der Wert für „R“ und „F/M“ zwischen 4 und 5 liegt, soll das Segment „Top-Kunde“ sein, bei 3 bis 5 „Treuer Bestandskunde“ (3 für „R“ und 5 für „F/M“ oder 5 für „R“ und 3 für „F/M“ wäre der „Treue Bestandskunde“, 4 für „R“ und „F/M“ ein Top-Kunde) – die Top-Kunden sind also eine Teilgruppe, bei ihnen sind beide Bedingungen erfüllt. Da brauchen wir noch eine zusätzliche Regel – wir müssen entscheiden, welche der Bedingungen Vorrang hat. Dazu fügen wir einfach eine Spalte „Priorität“ ein – falls mehrere Bedingungen zutreffen, gilt die mit der höchsten Priorität (in dem Fall, dem niedrigsten Wert).

 

A034.jpg

 

Diese Tabelle verknüpfen wir nun über ein Append Fields Tool mit den Kundenscores:

 

A035.jpg

 

Das Tool stellt eine Verknüpfung zwischen jedem Kunden-Datensatz und allen Datensätzen aus der Tabelle her. Das schauen wir uns für einen Kunden vielleicht noch mal über ein Browse Tool an:

 

A036.jpg

 

Jetzt müssen wir nur noch prüfen, welche Bedingungen zutreffen. Das lässt sich über ein Filter Tool regeln, mit dem wir prüfen ob „R-Bewertung“ und „FM-Bewertung“ in den jeweils angegebenen Bereichen liegen.

 

A037.jpg

 

Von den ursprünglich 9 Kombinationen, die für den Kunden K001 durch das Append Fields Tool entstanden sind, bleiben jetzt noch zwei übrig;

 

A038.jpg

 

Die verbliebenen Datensätze sortieren wir jetzt mit einem Sort Tool nach Kunde und Priorität:

 

A039.jpg

 

Danach können wir über ein Sample Tool für jeden Kunden den ersten Datensatz behalten:

 

A040.jpg

 

Jetzt bleibt für jeden Kunden genau eine Segmentzuordnung übrig – Ziel erreicht. Wir können jetzt mit einem Select Tool die wesentlichen Spalten für die weitere Analyse auswählen.

 

A041.jpg

 

Wir sehen für unser Beispiel dann ein ausgesprochen interessantes Ergebnis:

 

A042.jpg

 

Akute Verlustgefahr besteht ausgerechnet bei unserem umsatzstärksten Kunden, hier müssen wir auf jeden Fall aktiv werden – hoffen wir mal, dass es noch nicht zu spät ist. Darüber hinaus ist eine ganze Reihe weiterer umsatzstarker Kunden gefährdet, auch das sollten wir uns näher anschauen. Um derart bedrohliche Ergebnisse zu verhindern, kann eine regelmäßig Durchführung einer RFM-Analyse hilfreich sein. Und wie wir gesehen haben, ist die Umsetzung mit Alteryx kein Problem.

 

Den Workflow sehen wir hier noch einmal im Überblick:

 

A043.jpg

 

 

 

 

Beschriftungen