Blogartikel

17min. Lesezeit

Feature Toggles: Ein Überblick & unsere Best Practices

Feature Toggles zählen zu den leistungsfähigsten Methoden, wenn es um die Unterstützung von Continuous Integration und Continuous Delivery (CI/CD) geht. Feature Toggles – auch Feature Flags genannt – sind eine Methode, mit der Features während der Laufzeit geändert werden können, ohne dabei den Code zu ändern.

Entwickler können zum Erstellen von Features Toggles einen „Decision Point“ coden, an dem das System ein bestimmtes Feature ausführt, abhängig davon, ob bestimmte Bedingungen erfüllt werden oder nicht. Mit anderen Worten, mit Feature Toggles können Sie kontextsensitive Software schnell und effizient ausliefern.

Feature Toggles haben viele Einsatzmöglichkeiten, von der Unterstützung der agilen Entwicklung bis hin zu Markttests und zur Optimierung laufender Operationen. Hinter dieser Fähigkeit steckt aber auch die Gefahr, dass Ihr Code unnötig komplexer wird. Sie müssen mit Feature Toggles richtig umgehen können, um das Beste aus ihnen herauszuholen.

In diesem Artikel bieten wir Ihnen einen Überblick darüber, was Feature Toggles bewirken und wie Sie sie in Ihren Entwicklungs- und Produktionsumgebungen implementieren können. Darüber hinaus stellen wir Ihnen einige Best Practices vor, die wir zur Verwendung dieser Toggles empfehlen.

 

[toc content=“.entry-content“]

 

Was genau ist ein Feature Toggle?

Einfach gesagt ist ein Feature Toggle ein leistungsstarkes „If“-Statement, ab dem während der Laufzeit mindestens einem oder zwei verschiedenen Codepfaden abhängig von einer oder mehreren Bedingungen gefolgt wird. Hier ein konkretes Beispiel:

normalFeature = {
‚id‘: 1,
‚description‘: u’basic service‘,
’newstuff‘: False
}

testFeature = {
‚id‘: 2,
‚description‘: u’much better service‘,
’newstuff‘: True
}

@app.route(‚/ourapp/api/v1.1/storefront‘, methods=[‚GET‘])
def get_tasks():
if internalTester == True:
return jsonify({‚feature‘: testFeature})
else:
return jsonify({‚feature‘: normalFeature})

 

Hier haben wir zwei verschiedene generische Features definiert: normalFeature und testFeature. Während der Laufzeit prüft die Applikation in der Konfiguration, ob das Feature von einem oder einer interne(n) Test-UserIn geladen wird. Wenn ja, lädt die Applikation das Test-Feature, das sich in der Entwicklung befindet. Wenn nicht, sieht der oder die „normale“ KundIn das aktuelle Feature.

Feature Toggles Testing
Beispiel eines Feature Toggle, das zwei Codepfade steuert (Quelle)

 

Feature Toggles können alles sein, ein einfaches „If“-Statement oder komplexe Entscheidungsbäume, die auf viele verschiedene Variablen einwirken. Um festzulegen, welche Richtung ein Toggle nehmen soll, können zahlreiche Bedingungen verwendet werden, u. a. Ergebnisse von Tauglichkeitstests aus anderen Features in der Codebase, eine Einstellung in der Feature Management Software oder eine Variable aus einer Konfig-Datei.

 

Verschiedene Feature Toggles für verschiedene Aufgaben

Gehen Sie mit Feature Toggles jeweils unterschiedlich um, je nachdem, wie Sie sie bereitstellen möchten. Es kann nützlich sein, Toggles in Kategorien nach zwei Aspekten zu unterteilen: wie lange Toggles in der Entwicklung sind bzw. live geschaltet bleiben und wie dynamisch ihre Funktion ist. Demzufolge können wir Feature Toggles in vier verschiedene Kategorien unterteilen:

  • Release Toggles
  • Experiment Toggles
  • Ops Toggles
  • Permission Toggles

Diagramm der Feature Toggles-Kategorien

Ein Diagramm der vier Kategorien der Feature Toggles (Quelle)

 

Release Toggles

Diese Toggles unterstützen Entwicklerteams, wenn sie neue Features schreiben. Statt einen Zweig zu erstellen, in dem das Team das neue Feature schreibt, generiert es ein Release Toggle in der Master Codebase, wobei der Code inaktiv bleibt, während an ihm gearbeitet wird. Die Entwickler können den Trunk Code nach wie vor in die Produktion geben, um ihre Auslieferungsziele zu erfüllen.

Release Toggles sollen in der Regel kein fester Bestandteil Ihrer Codebase sein. Sobald das zugehörige Feature endgültig ist, sollten die Toggles entfernt werden. In der Praxis bedeutet dies in der Regel, dass diese Toggles einen Lebenszyklus von einigen Tagen bis zu einigen Wochen durchlaufen und sich in puncto Langlebigkeit somit auf einer Skala im unteren Bereich befinden. Release Toggles sind auch nicht besonders dynamisch. Entweder steht das Feature zur Freigabe bereit oder nicht.

Beispiel für ein Release Toggle

Ein e-Commerce-Unternehmen entwickelt auf Anfrage eines hochkarätigen Kunden eine neue Konfiguratorfunktion. Der Konfigurator überwacht Artikel, die der Kunde bereits zusätzlich ausgewählt hat, und schlägt Artikel-Sets vor, um seine Bestellung abzurunden.

Das Unternehmen möchte dieses Feature im Endeffekt allen Kunden anbieten. Aber derzeit funktioniert der Konfigurator nur nach den Vorgaben dieses einen Kunden. Das Entwicklerteam dieses Konfigurators aktiviert für dieses neue Feature ein Release Toggle, das es inaktiv lässt.

 

Experiment Toggles

Diese Toggles werden verwendet, um A/B-Tests oder multivariable Tests einfacher zu machen. Sie erstellen einen Toggle Point, hinter dem zwei oder mehrere Codepfade mit den zu testenden Features liegen. Während der Laufzeit teilt das System – oder das Toggle selbst – Nutzer in verschiedene Kohorten auf, an denen diese Features getestet werden.

Durch die Verfolgung aggregierter Experience-Daten bei jeder Kohorte können Sie die Wirkung der verschiedenen Features vergleichen. Experiment Toggles sind eine beliebte Methode für die Optimierung von Marketing-Initiativen, User Experiences und anderer Features für UserInnen.

In der Regel sollten Experiment Toggles nur so lange existieren, bis keine Daten zum Feature-Testing mehr gesammelt werden müssen. Der exakte Zeitrahmen hängt vom Traffic-Volumen bei diesem Feature ab, beläuft sich aber in der Regel auf mehrere Wochen bis mehrere Monate. Diese Einschränkung bezieht sich eher auf den Test selbst als auf das Toggle. Der Nutzen der gesammelten Daten verliert sich im Laufe der Zeit, wenn andere Feature- und Code-Updates Vergleiche mit zuvor gesammelten Nutzerdaten entkräften.

Beispiel für ein Experiment Toggle

Unser e-Commerce-Unternehmen hat die Fehler in seinem neuen Konfigurator beseitigt. Aber es wird darüber diskutiert, welcher der beiden Vorschlagsalgorithmen die beste Experience bietet. Man entschließt sich für einen A/B-Test, um Daten aus der realen Welt zu erhalten.

Das Unternehmen fügt ein Experiment Toggle zum Produktionskonfigurator mit zwei verschiedenen Vorschlagsalgorithmen dahinter hinzu. Das Toggle teilt die UserInnen in zwei Kohorten mit einem Modulo auf, wenn sie versuchen, den Konfigurator zu laden. Nach drei Wochen ist das Team der Meinung, endgültige Daten zu haben, die zeigen, dass mehr UserInnen ihre Bestellungen mit dem Algorithmus B abschließen. Das e-Commerce-Unternehmen entfernt das Experiment Toggle und der Algorithmus B wird für alle UserInnen live geschaltet.

 

A/B Testing
A/B Test Beispiel (Quelle)

 

Ops Toggles

Ops Toggles werden zum Abschalten von Features verwendet – wie ein „Kill Switch“ – oder um die Performance der Features anzupassen. Wenn zum Beispiel bestimmte Bedingungen nicht erfüllt werden und etwa KPI-Ziele unter einem Schwellenwert liegen, schaltet das Toggle das betreffende Feature ab, bis sich die Bedingungen verbessern. Ops Toggles sind für die Programmierung neuer Features kurz nach dem Testing oder bei ressourcenintensiven Features nützlich.

Die Langlebigkeit von Ops Toggles hängt von den jeweiligen Anwendungsfällen ab. Wenn Sie ein Ops Toggle zum Einstellen eines neuen Features kurz nach der Entwicklung verwenden, dann brauchen Sie das Toggle wahrscheinlich nur ein paar Monate. Ein Kill Switch-Toggle wird in der Regel jedoch als permanenter Bestandteil des Codes erstellt. Ops Toggles sind in der Regel genauso statisch oder dynamisch wie die Bedingungen, unter denen das kontrollierte Feature genutzt wird. Beispielsweise sind Ops Toggles tendenziell relativ statisch, wenn sie nur mit einer Leistungskennzahl verbunden sind.

Beispiel für ein Ops Toggle

Unser e-Commerce-Unternehmen bereitet sich auf eine Traffic-Spitze für den jährlichen Schlussverkauf vor. Das ist der erste Sale, bei dem der Konfigurator in der Produktion ist. Während der Tests haben die Entwickler festgestellt, dass der vom User bevorzugte B-Algorithmus Systemressourcen stark beansprucht.

Die Operators verlangten einen Kill Switch für den Konfigurator, bevor die Sales-Angebote live geschaltet wurden. Sie wollten nur ein einziges Toggle, auf das sie in der Release Management Software klicken mussten, falls die Performance nachlassen sollte. Und siehe da, am ersten Tag des Schlussverkaufs begann die Performance beim Konfigurator zu fallen. Und das Ops-Team konnte das Feature schnell abschalten, bevor es von zu vielen UserInnen wahrgenommen wurde.

 

Permission Toggles

Permission Toggles sollen langlebiger sein oder sogar ein fester Bestandteil in Ihrem Code. Sie werden als Methode verwendet, um einem bestimmten Teil von UserInnen Features anzuzeigen. Beispielsweise können Sie ein Permission Toggle verwenden, um ausschließlich Premium UserInnen auf Ihrer Website Premium Inhalte anzubieten. Permission Toggles sind generell die dynamischsten Toggles unter den vier hier definierten Kategorien, da sie in der Regel für eine oder einen UserIn getriggert werden.

Beispiel für ein Permission Toggle

Das einfache Beispiel am Anfang dieses Artikels lässt sich praktisch mit einem Permission Toggle vergleichen. Nach dem jährlichen Schlussverkauf ist unser e-Commerce-Unternehmen der Meinung, Algorithmus B sei zu ressourcenintensiv, um das Feature allen UserInnen anzuzeigen. Stattdessen entscheidet sich das Unternehmen, ein Premium Feature zu erstellen. Das Permission Toggle kann sich wie folgt darstellen:

normalFeature = {
‚id‘: 1,
‚description‘: u’basic service‘,
‚configurator‘: False
}

premiumFeature = {
‚id‘: 2,
‚description‘: u’the better configurator‘,
‚configurator‘: True
}

@app.route(‚/ourapp/api/v1.1/storefront‘, methods=[‚GET‘])
def get_tasks():
if premiumUser == True:
return jsonify({‚feature‘: premiumFeature})
else:
return jsonify({‚feature‘: normalFeature})

 

Feature Toggles vs. Feature Flags

Eine kleine Randbemerkung: Es gibt einige Diskussionen über den Begriff Feature Toggle verglichen zum Begriff Feature Flag. „Toggle“ trifft eher zu, wenn der Code bei mehreren Hauptzweigen des Codes ein- oder ausgeschaltet ist. „Flag“ trifft eher zu, wenn auf einen Entscheidungspunkt multikonditionale oder eine große Anzahl an Codepfaden folgen.

 

Feature Toggles in Ihre Roadmap zur Unterstützung agiler Workflows integrieren

Mit Feature Toggles in Ihrem Entwicklungsprozess werden neuere agile Ansätze unterstützt. Sie können eine Software veröffentlichen, während noch Code Sprints für neue Features bearbeitet werden. Diese Features müssen lediglich hinter Toggles verborgen werden, bis sie für die Veröffentlichung, Marketingtests oder den nächsten Schritt im Entwicklungsprozess tauglich sind.

In der Regel würden Sie die kürzlich vom User oder von der Userin gewünschten Features auf Code-Verzweigungen unter einem eher herkömmlichen Wasserfallmodell schreiben. Diese Features würden im Anschluss einen langen Test- und QA-Prozess durchlaufen, bevor Ihr Team die Features wieder in den Trunk Code zurückführen kann. Mit Feature Toggles können Sie den gesamten Entwicklungs- und Testprozess direkt auf dem Trunk Code durchführen.

 

Unsere Best Practices für die Verwendung von Feature Toggles

Wie bereits erwähnt, stehen Feature Toggles für eine leistungsstarke und flexible Entwicklungsmethode. Wenn Sie Ihre Toggles nicht sorgfältig implementieren und managen, können sie schnell eine chaotische Codebase erhalten.

Es wurden viele verschiedene Best Practices zum Coden von Feature Toggles  vorgeschlagen, aber wir wollten Ihnen einige unserer eigenen Toggles anbieten. Sobald ein unsauberer Entscheidungspunkt in Ihre Codebase geschrieben wird, scheinen viele weitere zu folgen. Wenn diese Best Practices von Anfang an befolgt werden, können Sie solche Probleme in Schach halten.

Website Code

 

Verwenden Sie Feature Toggles, um langsam zur agilen Entwicklung zu wechseln

Wenn Ihr Team agile Entwicklungs- und Testmethoden ausprobieren möchte, ohne sich völlig in eine neue Entwicklungsmethode stürzen zu müssen, dann sind Feature Toggles in Ihrer Roadmap ein ausgezeichnetes Mittel für den Anfang. Die Kosten für diese Versuche sind gering. So könnte zum Beispiel zunächst nur ein Team ein Experiment Toggle für einen ersten Canary Release verwenden.

Wenn der Versuch gelingt, können Sie das Experiment Toggle durch ein Ops Toggle ersetzen, wenn das Feature in die Produktion geht. Dann weiten Sie die Nutzung des Toggles auf andere Teams oder Prozesse aus. Führen Sie dieses Toggle früher in die Entwicklungszyklen ein als Release Toggles. Dann sind Sie langsam aber sicher auf dem Weg zur völlig agilen Entwicklung.

 

Verwenden Sie Toggles sowohl für interne als auch externe Features

Jetzt müsste klar sein: Feature Toggles haben während des gesamten Entwicklungs- und Produktionslebenszyklus Ihrer Software Ihren Zweck. Schränken Sie die Toggle-Nutzung nicht auf Features ein, die nur von KundInnen gesehen werden. Sie können Release und Ops Toggles auch für Backend-Features verwenden. Die Toggles bieten DevOps Teams eine besonders granulare Stufe beim Kontroll- und Risikomanagement des Codes, was wichtig sein kann, wenn Backend-Features geändert werden, die einen entscheidenden Einfluss darauf haben, wie Ihr System performt.

 

Lassen Sie die Toggle-Planung in Ihre Design-Phase einfließen

Vom Toggle-Namen und den Konfigurationseinstellungen bis zum Entfernen der Toggles und der Zugangskontrolle – alles hängt davon ab, wie Sie neue Features gleich zu Beginn entwerfen. Bauen Sie diese Toggle-Planung in Ihren Designprozess ein und die nächsten sechs Monate Ihres Feature Managements werden um einiges einfacher sein.

 

Verwenden Sie ein standardisiertes Toggle Namensschema

Viele Unternehmen verwenden einen Style Guide für Entwickler, der festlegt, wie sie Code schreiben und organisieren sollen, wie sie zum Beispiel Abstände, Reihenfolge und Klammern beim Naming anwenden. Wenn Sie Feature Toggles verwenden wollen, sollten Sie auch den Naming-Stil schon frühzeitig im Einführungsprozess Ihrer Toggles standardisieren.

Kurz und bündig zu sein, ist beim Coden für andere Aspekte wichtig. Wenn es aber um Toggle-Namen geht, seien Sie ausführlich. Details bedeuten Klarheit. Ausführliche Toggle Namen helfen Entwicklern und Ops Teams außerhalb Ihres Kernteams zu verstehen, was sie prüfen, wenn ihr einziger Bezug der Toggle Name ist, den Sie sechs Monate zuvor aus einer Laune heraus gewählt haben.

Einige weitere Toggle-Namenskonventionen, die wir vorschlagen:

  • Binden Sie den Namen des Teams oder Projekts ein.
  • Binden Sie das Datum ein, an dem das Toggle erstellt wurde.
  • Identifizieren Sie die Kategorie des Flags.
  • Beschreiben Sie das tatsächliche Toggle-Verhalten.

 

Hier ein Beispiel: algteam_10-12-2021_Ops_configurator-killswitch

Dieser Name bietet einige nützliche Informationen, aus denen jeder oder jede in einem Team ableiten kann, worum es sich handelt, wenn ein Toggle in einer Fehlermeldung genannt wird. Sie wissen, wer das Toggle geschrieben hat, wie lange es in der Codebase war und was das Toggle bewirkt.

Unterschiedliche Toggles unterschiedlich handhaben

Es scheint selbstverständlich, ist aber ein wichtiger Punkt, den es hervorzuheben gilt. Wie wir bereits oben erwähnt haben, können Feature Toggles in vier allgemeine Kategorien unterteilt werden. Sie sollten die einzelnen Kategorien unterschiedlich handhaben.

Denken Sie an den oben erwähnten Konfigurator, als er die Entwicklungsphase, dann Markttests und anschließend den laufenden Betrieb durchlief. Der Konfiguratorcode befand sich die gesamte Zeit hinter einem dieser Features Toggles. Aber die Art und Weise, wie die Entwicklungs- und Produktteams mit diesem Toggle interagieren, muss in jedem Stadium geändert werden.

Zu Beginn der Entwicklung kann das Toggle einfach in der Versionskontrolle konfiguriert werden. Während das e-Commerce-Unternehmen A/B-Tests durchführt, kann das Toggle auf einer Feature Management-Plattform sein. Wenn das Ops-Team einen Kill Switch hinzufügt, kann es sich entscheiden, es in derselben Feature Management-Plattform, aber auf einem anderen Dashboard zu lassen.

Feature Management Plattform Dashboard

AB Tasty Flagship Dashboard (Source)

Feature Toggle-Konfigurationen immer darlegen

Wie bei jedem anderen Codeobjekt auch, ist es besser, Feature Toggle-Konfigurationen als Metadaten zu dokumentieren, damit andere Entwickler, Tester und Produktionsteams ein Dokument in Papierform haben, dem sie folgen können, um genau zu verstehen, wie Ihr Feature Toggle in einer bestimmten Umgebung läuft. Am besten, Sie speichern Ihre Toggle-Konfiguration in einem für Menschen lesbaren Format, damit auch andere außerhalb Ihres Teams verstehen, was ein Toggle bewirkt.

Diese Best Practice ist für die Features nützlich, bei denen längerfristig Toggles verwendet werden sollen. Denken Sie wieder an unser Konfiguratorbeispiel. Ein völlig neuer Product Operator, der versucht, einen plötzlichen, unerwarteten Performance-Rückgang zu verstehen, würde sehr dankbar für eine Datei sein, die für Menschen lesbar ist und ihm erklärt, dass der B-Algorithmus bei Tests ein Jahr zuvor plötzlich ressourcenintensiv wurde.

 

Behalten Sie die Haltekosten für Feature Toggles im Auge

Wenn Sie Feature Toggles zum ersten Mal benutzen, sollten Sie sich nicht hinreißen lassen, alle auf einmal überall im Code zu verwenden. Feature Toggles lassen sich zwar einfach erstellen, müssen aber richtig gehandhabt und getestet werden, um einen wirklichen Nutzen zu ziehen. Setzen Sie nach und nach mehr Feature Toggles ein oder ziehen Sie die Integration einer Feature Management-Plattform in Ihre Entwicklungs- und Ihre Testumgebung in Betracht.

Stellen Sie Feature Toggles strategisch bereit und halten Sie Ihren Toggle-Bestand so niedrig wie möglich. Verwenden Sie sie, wenn es notwendig ist. Aber überprüfen Sie, ob Toggles die angemessene Methode für die Lösung eines bestimmten Problems sind.

Lassen Sie keine alten Toggles in Ihrem Code. Streichen Sie die Toggles zusammen, sobald sie ausgedient haben. Je mehr inaktive Toggles im Code, desto größer der Mehraufwand für Ihr Team, diese Toggles zu managen. Sie können Toggles entfernen, wenn Sie Code Cleanups auf die To-Do-Liste Ihrer Teams setzen oder diesen Prozess in Ihre Management-Plattform integrieren.

Developer von Features Toggles
Entwickler bei der Arbeit (Quelle)

 

Halten Sie den Toggle Scope möglichst klein

Aufgrund der Wirkung der Toggles neigt man dazu, große Codeabschnitte von einer komplexen Toggle-Reihe zu steuern. Bleiben Sie „standhaft“ und halten Sie den Toggle Scope bei jeder Aufgabe möglichst klein.

Sollte ein Toggle auf mehrere Features übergreifen, kann es für den Rest des Teams zum Albtraum werden, Bugs zu beheben, die Wochen oder Monate zurückliegen und sich jetzt auf die Arbeit des Teams auswirken.

Nehmen wir noch einmal unser Konfiguratorbeispiel. Unser Dev-Team erstellt vier separate Widgets, die der oder die UserIn im Konfiguratortool benutzt. In diesem Szenario würden wir fünf Toggles empfehlen: eins für den Konfigurator selbst und eins für jedes einzelne Widget. Coden Sie die Widget Toggles abhängig vom Konfigurator-Toggle. Wenn in diesem Framework eines der Widgets nicht richtig lädt, werden die anderen dem oder der UserIn angezeigt.

Feature Toggles können den gesamten Entwicklungsprozess verändern

Feature Toggles sind für die Entwicklung, Tests und Steuerung von Code Features im Framework der Continuous Integration und Continuous Delivery eine wirkungsvolle Methode. Sie stehen für eine einfache Methode, mit der Ihr Team einen stabileren Code höherer Qualität nach agilen Prinzipien ausliefern kann.

In diesem Artikel haben wir erklärt, wie Feature Toggles funktionieren, welche Toggles Sie erstellen und wie Sie diese Toggles in Ihrem agilen Prozess verwenden – oder sie in einem Entwicklungsprozess ausprobieren können. Darüber hinaus haben wir Ihnen einige unserer empfohlenen Best Practices vorgestellt, damit Ihr Unternehmen das Beste aus Feature Toggles herausholen kann.

 

Fangen Sie klein an, um im größeren Rahmen fortzufahren

Es gibt keinen Grund, nicht schon heute Feature Toggles zu nutzen. Fangen Sie klein an und nutzen Sie zunehmend mehr Features Toggles, wenn Ihr Team sich daran gewöhnt und verstanden hat, wie diese Toggles funktionieren. Wenn Sie gerade beginnen, ein vollkommen neues Feature zu coden, richten Sie ein Release Toggle im Trunk Code ein. So brauchen Sie keine Verzweigung. Wenn Sie mit Markttests beginnen, richten Sie ein Experiment Toggle für Split Testings ein.

Wenn Ihr Team sich im Klaren ist, wie es Feature Toggles verwenden möchte, ziehen Sie eventuell eine Feature Management-Plattform für eine optimierte Administration der Toggles in Betracht. Die Optimierung von Entwicklung und Testing war genau das, woran wir gedacht hatten, als wir Flagship, unsere Release- und Feature Management-Plattform, entwickelt haben.

Mit Flagship hat Ihr Team das richtige Tool zur Hand, um Toggle Workflows und Kommunikation zu optimieren. Unabhängig von den Aufgaben oder dem Fokus eines Teams bringt Flagship, unser Feature Management-Tool, alle Voraussetzungen mit, um die richtigen Features auf richtige Weise bereitzustellen.

Abonniere
unseren Newsletter

bloc Newsletter DE

Wir verarbeiten und speichern deine persönlichen Daten, um deine Anfrage zu beantworten. Siehe dir unsere Datenschutzerklärung an.

Blogartikel

15min. Lesezeit

Conversion Funnels: Alles, was Sie wissen müssen

Jedes Unternehmen, das Produkte oder Services online verkauft, hat einen Conversion Funnel – aber nicht jeder weiß es. Wenn Sie sich nicht sicher sind, was eine Conversion ist oder wie Sie Ihre Conversion für einen höheren Online-Umsatz verfeinern können, sind Sie hier genau richtig. In diesem Beitrag erfahren Sie alles, was Sie über Conversion Funnels wissen müssen. Wir beginnen mit den Basics: Was sind Conversion Funnels und welche drei wichtigen Phasen beinhalten sie? Anschließend gehen wir auf einige der effektivsten Strategien ein, um Ihre Funnels zu verbessern und den Umsatz zu steigern. Los geht‘s!

In diesem Artikel greifen wir folgende Punkte auf:

[toc]

 

Was ist ein Conversion Funnel?

Ein Conversion Funnel ist ein Prozess, der potenzielle KundInnen durch den Kauf Ihrer Produkte oder Services führt. Ein Conversion Funnel ist der Grundstein aller Geschäftsmodelle im E-Commerce und führt potenzielle KundInnen durch den gesamten Prozess: ab dem Zeitpunkt, an dem sie zum ersten Mal auf Ihre Marke aufmerksam werden, bis sie einen Kauf tätigen und darüber hinaus.

Conversion Funnel Schema
Conversion Funnel – Schema (Quelle)

 

Wenn Ihnen Conversion Funnels nicht vertraut sind, denken Sie an die Form eines Trichters – oben breit und unten schmaler. Er steht für den Besucherstrom, der sich durch Ihre Marketingstrategie bewegt. Nicht jeder, der auf Ihr Unternehmen aufmerksam wird, wird auch zu einem oder einer zahlenden KundIn. Es ist, als würde man Filterkaffee aufbrühen – oben bleibt jede Menge Kaffeesatz und unten tropft dann der hochwertige Kaffee durch den Trichter in Ihre Tasse. Ein Verkaufstrichter funktioniert genauso. Ziel ist, möglichst viele relevante Leads in den oberen Teil des Trichters zu bekommen und ungeeignete Interessenten herauszufiltern, sodass die idealen KundInnen übrig bleiben, die bei Ihnen kaufen möchten.

Wenn Sie Ihren Conversion Funnel optimieren, maximieren Sie die Wirkung Ihrer Online-Marketingstrategie und steigern den Umsatz. Dies ist keine Aufgabe, die ein für alle Mal erledigt wird, sondern die Sie im Laufe Ihres Geschäftslebens ständig verfeinern müssen. Möchten Sie wissen, wie?

Kaffeetrichter als Funnel
Kaffeetrichter (Quelle)

 

Was ist der Unterschied zwischen einem Conversion Funnel und einem Sales Funnel?

Die Begriffe „Conversion Funnel“ und „Sales Funnel“ werden oft wie Synonyme gebraucht. Aber bedeuten sie wirklich dasselbe? Die Antwort auf diese Frage lautet nein, obwohl sie eng miteinander verbunden sind. Ein Sales Funnel beginnt in der Regel mit einer oder einem potenziellen KundIn, die oder der in die Verkaufspipeline eintritt. Das kann sowohl online (in einer E-Commerce-Umgebung) als auch offline geschehen. Potenzielle KundInnen treten jedoch in der Regel erst dann in Ihren Sales Funnel, wenn sie bereits mit Ihrer Marke und Ihren Produkten oder Services vertraut sind.

Online kann es eine Weile dauern, bis dieser Moment erreicht ist. Vor allem, wenn Sie Personen ansprechen, die noch nie von Ihrer Marke gehört haben. Es braucht Zeit, eine Verbindung und Vertrauen zu Ihrer Zielgruppe aufzubauen.

Genau hier kommt der Conversion Funnel ins Spiel. Hier geht es nicht nur um Verkaufen, sondern darum, eine Verbindung zu Ihrer Zielgruppe aufzubauen, Leads zu generieren und diese Leads dann bei einer Journey zu Ihrem Unternehmen zu führen. Potenzielle KundInnen kommen vielleicht „kalt“ in Ihren Trichter, ohne viel darüber zu wissen, wer Sie sind oder was Sie eigentlich machen. Mit der Zeit wird Ihr Trichter sie „aufwärmen“, Vertrauen in Ihr Angebot aufbauen und sie „kaufwillig“ machen. Der Trichter umfasst den gesamten Prozess – vom ersten Kontakt bis zum Kauf.

Die drei Phasen des Conversion Funnels

Es gibt viele verschiedene Conversion Funnel-Modelle. Alle schlagen im Großen und Ganzen dasselbe vor: die Unterteilung des Prozesses in mehrere Phasen des Conversion Funnels, die KundInnen vor einem Kauf durchlaufen müssen. Ein(e) KundIn kann den Trichter in jeder Phase betreten oder verlassen, aber Ihr personalisiertes Modell legt fest, wie KundInnen mit Ihrem Unternehmen in Kontakt treten sollen.

Das genaue Modell stellt sich bei jedem Unternehmen anders dar. Im Folgenden aber die drei Phasen, die wir Ihnen empfehlen.

 

Phase 1: Bewusstsein am oberen Ende des Trichters aufbauen

Am oberen Ende des Trichters geht es darum, auf Ihre Marke aufmerksam zu machen und die Aufmerksamkeit von Leads zu wecken. Diese Phase ist u. U. die Wichtigste. Denn wie wollen Sie jemandem etwas verkaufen, wenn Sie ihn nicht in Ihren Trichter bekommen? Dieser kritische Schritt wird oft als Awareness- bzw. Bewusstseinsphase bezeichnet. Die genaue Strategie, um dies zu erreichen, hängt von Ihrer oder Ihrem KundIn ab. Wer sind diese KundInnen? Wo halten sie sich auf? Welche grundlegenden Probleme haben sie und mit welchen Herausforderungen sind sie konfrontiert? Warum sollten sie sich für das interessieren, was Sie ihnen anbieten? Die Antworten auf diese Fragen können in der Bewusstseinsphase nützliche Hinweise liefern. Vergessen Sie nicht: Es geht nicht um Sie, es geht um den oder die KundIn. Hier einige Dinge, die am oberen Ende des Trichters geschehen sollten.

 

Content Marketing

Um online Aufmerksamkeit zu erregen, brauchen Sie Content. Dieser Content kann viele Formen annehmen. Daher sollten Sie sich Gedanken über die Arten von Content machen, die Ihre Zielgruppe am ehesten konsumiert. Zum Beispiel sprechen TikTok-Videos 18- bis 24-Jährige an, sind dann aber eventuell nicht die beste Option für eine ältere Zielgruppe.

Beim Erstellen Ihrer Content Marketing-Strategie sollten Sie sowohl Onsite- als auch Offsite-Content in Betracht ziehen. Ein effektiver Conversion Funnel braucht beides. Offsite-Content trägt dazu bei, Aufmerksamkeit zu erregen und UserInnen auf Ihre Website zu locken. Im Gegensatz dazu binden Onsite-Contents Ihre Zielgruppe ein und veranlassen sie, den nächsten Schritt zu gehen und sich z. B. in Ihre Mailingliste einzutragen.

 

Marketing-Kampagnen

Neben Ihrer Content Marketing-Strategie sollten Sie sich auch Gedanken zu den Marketingkampagnen machen, mit denen Sie die Menschen dazu bewegen, sich mit diesen Contents zu beschäftigen. Wie kann es Ihnen gelingen, dass Ihr Content gesehen wird? Wie werden Sie die Aufmerksamkeit der UserInnen gewinnen? Sind Sie nur online tätig oder werden Sie auf Offline-Marketing zurückgreifen, um Leads zu generieren?

E-Commerce-Unternehmen betrachten Offline-Marketingkampagnen als irrelevant und lehnen sie schnell ab. Dabei können besonders gezielte Offline-Kampagnen äußerst nützlich sein. Der Online-Marktplatz ist überfüllt! Innovative Möglichkeiten, um Ihre Zielgruppe offline zu erreichen und sie auf Ihren Online-Content zu lenken, kann eine kostengünstige Lösung sein, um Leads für Ihren Conversion Funnel zu generieren.

Sie könnten sich auch überlegen, wie Sie einige Ihrer Marketingkampagnen automatisieren können. Die Erstellung von Evergreen-Kampagnen, die im Hintergrund laufen können, während Sie und Ihre Mitarbeiter sich auf andere Aufgaben konzentrieren, ist für eine Gewinnmaximierung nützlich. Im Wesentlichen bedeutet dies, dass Sie Leads für Ihr Unternehmen generieren können, während Sie schlafen.

Leads erfassen

Die Erfassung von Leads ist der letzte Schritt der Awareness-Phase. Hier verschieben Sie Ihre potenziellen KundInnen vom oberen Ende Ihres Conversion Funnels in die Mitte. Sobald Sie eine(n) potenzielle(n) KundIn auf Ihre Website gelenkt und sie oder ihn dazu angeregt haben, sich mit Ihrem Content zu befassen, stellt sich die Frage, wie es weitergehen soll. Jeder Content auf Ihrer Website, mit dem sich Ihre Zielgruppe beschäftigt, sollte einen Call-To-Action enthalten – etwas, das ihnen sagt, welche Handlung sie als nächstes ausführen sollen.

Dazu sollten Sie einen Lead-Magneten in Betracht ziehen. Zum Beispiel einen Rabatt-Code. Aber um maximale Ergebnisse zu erzielen, könnten Sie etwas entwickeln, das zur Lösung eines Problems beiträgt und in direktem Zusammenhang mit dem angebotenen Produkt oder Service steht.

So stellen Sie nicht nur sicher, hochqualifizierte Leads zu erfassen, sondern auch, dass sich UserInnen anmelden, wenn sie noch nicht zu einem Kauf bereit sind. Da ein Conversion Funnel KundInnen dazu zu bringen soll, bei Ihnen zu kaufen, ist dieser Punkt beim Erstellen Ihrer Content Marketing-Strategie äußerst wichtig und sollte berücksichtigt werden.

Sobald Sie die E-Mail-Adresse erhalten haben, ist es an der Zeit, zur zweiten Phase des Conversion Funnels zu gehen: die Pflege Ihrer Zielgruppe, um das Interesse an Ihren Produkten oder Services zu wecken.

Business Dashboard
Business Dashboard (Quelle)

 

Die besten Wege, Bewusstsein aufzubauen

Um die Anzahl der Leads zu maximieren, sollten Sie Ihre Aktivitäten in der ersten Phase auf mehrere digitale Marketingkanäle konzentrieren. Hier einige der beliebtesten Optionen:

 

Social Media

Angesichts der rund 4 Milliarden Social Media-UserInnen weltweit (mehr als die Hälfte der Weltbevölkerung) überrascht es nicht, dass Social Media-Marketing eine der beliebtesten Methoden zur Lead-Generierung ist. Dennoch ist es wichtig zu wissen, dass dies keine einfache Option ist! Viele Geschäftsinhaber betrachten Social Media als schnelle und kostengünstige Lösung, die ihre Zielgruppe anwachsen lässt. Doch auch hier sind Zeit und Mühe gefragt, um Ergebnisse zu erzielen – wie bei jeder anderen Marketingstrategie auch.

Arbeiten Sie mit einem Experten zusammen, um einen Social Media-Marketingplan zu entwickeln, der Ihnen hilft, sich von der Masse abzuheben. Viele Unternehmen nutzen Social Media, um Menschen in ihren Conversion Funnel zu bringen, aber nur wenige machen es richtig.

 

Paid Search

Wohin wenden Sie sich als Erstes, wenn Sie Informationen brauchen? Schätzungen zufolge werden jedes Jahr rund 2 Billionen Suchanfragen bei Google gestellt – Werbung für Ihren Content bei Google könnte also sehr lukrativ sein! Im Gegensatz zum Social Media-Marketing suchen UserInnen von Suchmaschinen aktiv nach den Informationen, die Sie anbieten. Um die beste Click-Through-Rate zu erzielen, sollten die ins Auge gefassten Suchbegriffe für den Inhalt direkt relevant sein. Und testen Sie Kampagnen mit einem kleinen Budget, bevor Sie weitere Ausgaben tätigen.

 

Organische Suche

Eine gute Idee wäre auch, Ihren Content für die organische Suche zu optimieren. Keine kurzfristige Strategie, aber durch die Suchmaschinenoptimierung (SEO) können auf Ihre Website im Laufe der Zeit höhere Traffic-Volumen generiert werden. Legen Sie den Fokus auf die Erstellung von Evergreen Content, ein Inhalt, der nicht irrelevant wird oder veraltet und noch viele Jahre lang in organischen Suchanfragen erscheinen kann. Wenn Sie Website-BesucherInnen organisch über Suchmaschinen gewinnen, sind Sie besser in der Lage, eine Liste qualifizierter Leads zu erhalten und die Qualität der BesucherInnen zu verbessern, die in Ihren Conversion Funnel treten.

 

Phase 2: Ihre Zielgruppe pflegen

Viele Online-Unternehmen machen den grundlegenden Fehler, zu früh auf einen Kauf zu drängen. Zwar können (und sollten) Sie potenziellen KundInnen immer die Möglichkeit bieten, zu ihren Bedingungen bei Ihnen zu kaufen, doch sollten Sie Ihren Conversion Funnel so gestalten, dass Sie Ihre Leads pflegen und Vertrauen zu Ihrer Marke aufbauen, bevor Sie sie in die Verkaufspipeline führen.

 

In Kontakt bleiben

Sobald ein(e) potenzielle(r) KundIn Ihnen mitgeteilt hat, dass sie oder er mehr von Ihnen hören möchte, ist es wichtig, mit ihr oder ihm in Kontakt zu bleiben. Dazu sollten Sie möglichst mehrere Kanäle nutzen. Fordern Sie die KundInnen auf, Ihnen in den sozialen Medien zu folgen. Sprechen Sie sie mit einem relevanten Online-Content erneut an und senden Sie ihnen regelmäßig E-Mails. Recherchen zeigen immer wieder: Je mehr Gelegenheiten potenzielle KundInnen haben, sich online mit Ihrer Marke zu beschäftigen, desto wahrscheinlicher ist es, dass sie bei Ihnen kaufen. (Vgl. auch Funnel Online Marketing)

Kurz gesagt, es reicht nicht aus, nur zu wissen, dass es Sie gibt. Wenn Sie etwas verkaufen wollen, müssen Sie auch dafür sorgen, dass man sich mit Ihnen beschäftigt!

 

Ihre Produkte und Services positionieren

Wenn Sie mit Ihrer Zielgruppe in Kontakt bleiben und sie pflegen, sollten Sie auch sicherstellen, dass jeder Lead mit Ihren Produkten und Services vertraut ist. In diesem Schritt geht es nicht darum, den Verkauf zu forcieren – darauf kommen wir in der nächsten Phase zurück. Sie sollten hingegen Ihr Angebot interessant und ansprechend präsentieren. Im Grunde genommen müssen Ihre Leads zu einem Kauf bereit sein, wenn Sie Ihren Sales Pitch präsentieren. Um diese Phase zu erreichen, müssen die Leads wissen, was Sie verkaufen.

 

Den Kaufwunsch wecken

Und zu guter Letzt sollten Sie Ihre Zielgruppe während der gesamten Pflege-Phase darauf vorbereiten, die gewünschte Aktion durchzuführen. In den meisten Fällen ist dies der Abschluss eines Kaufs. Wie Sie das erreichen können? Mit Emotionen.

Der Mensch ist ein emotionales Wesen. Erinnern Sie sich noch, wie wir vorhin über die Probleme und Herausforderungen gesprochen haben, die Ihr Produkt oder Ihr Service für Ihre KundInnen lösen kann? Welche Emotionen stecken hinter diesem Problem? Sprechen Sie diese Emotionen an, wenn Sie mit Ihrer Zielgruppe in Kontakt treten, und machen Sie deutlich, dass Sie ihr helfen wollen, diese Gefühle zu bewältigen, um positivere und wünschenswerte Emotionen zu wecken. Welche Gefühle werden durch Ihr Produkt oder Ihren Service ausgelöst? Können Sie einige dieser Gefühle mit Ihrem Inhalt vermitteln?

Menschen haben nicht nur Gefühle, sondern auch den angeborenen Wunsch, verstanden zu werden. Je mehr Sie ihnen zeigen, dass Sie sie verstehen, desto mehr werden sich diese BesucherInnen mit Ihrer Marke identifizieren und Lust haben, mit Ihnen Geschäfte zu machen.

Bei diesem Schritt sollten Sie auch Ihre Mitbewerber im Auge behalten, vor allem, wenn Sie auf einem wettbewerbsfähigen Nischenmarkt vertreten sind. Warum sollte sich Ihre Zielgruppe für Sie entscheiden und nicht für Ihre Mitbewerber?

 

Phase 3: Potenzielle KundInnen in zahlende KundInnen umwandeln

In Phase drei geht es darum, den Verkauf zu sichern. Ohne diese Phase ist Ihr Unternehmen nichts – ohne zahlende KundInnen erzielen Sie keine Gewinne. Hoffentlich verstehen Sie jetzt, weshalb es wichtig ist, Ihre Zielgruppe bei dieser Journey durch die vorherigen Phasen zu führen, bevor Sie versuchen, sie zu konvertieren. Wenn Sie Ihren Trichter optimiert haben, sind Ihre Leads jetzt bereit, bei Ihnen zu kaufen.

 

 

Pflegen Sie Leads weiter

Es ist wichtig, sich über Folgendes im Klaren zu sein: Bleiben Sie dabei und pflegen Sie auch weiterhin Ihre potenziellen KundInnen, sobald sie das Ende des Trichters erreicht haben. Diese Phase sollte fortgesetzt werden, solange Ihre Leads – und späteren KundInnen – mit Ihrem Unternehmen in Kontakt sind.

 

Arbeiten Sie im Rhythmus Ihrer oder Ihres potenziellen KundIn

Es ist ebenfalls wichtig, nicht zu vergessen, dass Ihre potenziellen KundInnen alle nach ihrem eigenen Rhythmus vorangehen. Einige sind eher zu einem Kauf bereit als andere. Deshalb sollten Sie Ihren Conversion Funnel als Prozess betrachten. Es geht nicht darum, Leads an einem Ende „einzuwerfen“ und sie am anderen Ende herauszuholen, sondern darum, Kontakte zu fördern, die Ihrem Unternehmen langfristig zum Erfolg verhelfen.

Wenn Sie versuchen, einen Verkauf auszulösen, Ihre KundInnen aber noch nicht bereit sind, sollten Sie sie weiter ansprechen und pflegen und später einen neuen Versuch starten. Wenn keiner Ihrer potenziellen KundInnen in dieser Phase des Conversion Funnels bei Ihnen kauft, ist das ebenso ein Zeichen, dass Sie etwas ändern müssen. Mehr dazu an späterer Stelle.

 

Lösen Sie einen Verkauf aus

Jetzt ist es an der Zeit, Ihre Leads zu zahlenden KundInnen zu machen, aber wie? Wie immer gibt es auch hier zahlreiche Möglichkeiten. Um die richtige Lösung zu finden, müssen Sie wahrscheinlich einiges ausprobieren. Eine gute Idee wäre, einige Verkaufstaktiken zu testen und zu sehen, welche funktioniert. Bei manchen Unternehmen reicht eine einfache E-Mail oder eine Retargeting-Kampagne in den sozialen Medien aus. Aber bei anderen müssen Sie sich vielleicht etwas Persönlicheres oder Kreativeres einfallen lassen.

 

Was macht einen guten Call-to-Action aus?

Calls-to-Action sind der Kern eines jeden effektiven Conversion Funnels. Aber wie stellen Sie sicher, dass CTAs effektiv sind? Hier einige Tipps für den Anfang.

 

Seien Sie klar und präzise

Ihr Call-to-Action sollte nicht zu weitschweifig sein. Am besten drücken Sie sich direkt aus, mit kurzen Sätzen. Sagen Sie Ihrer Zielgruppe genau, was sie tun soll. Verwenden Sie Verben wie „kaufen“, „einkaufen“ oder „herunterladen“. Mit „die neue Kollektion kaufen“ steigt der Umsatz wahrscheinlich eher als mit Aussagen wie „unsere neue Kollektion ist jetzt auf unserer Website verfügbar“.

 

Fragen Sie nach dem Warum

Versetzen Sie sich bei der Entwicklung Ihrer CTA in die Lage Ihrer oder Ihres potenziellen KundIn. Warum sollten sie Ihrer Bitte nachkommen? Genau hier kommt der Text in Ihrem Sales Pitch ins Spiel. Der Call-to-Action ist das letzte Puzzleteil. Wenn Ihr Lead zu diesem Teil Ihres Contents gelangt, sollte er bereits kurz davor sein, die Schaltfläche zu drücken. Es sollte selbstverständlich für ihn sein.

 

Die Rolle des Warenkorbs

Der Warenkorb auf Ihrer Website kann einer Ihrer größten Assets sein, um die Verkaufszahlen in die Höhe zu treiben. Wussten Sie, dass Sie Warenkorbabbrüche mit Ihren E-Mail-Abonnenten nachverfolgen können? Wenn nicht, verpassen Sie eines der effizientesten Conversion Tools, die Unternehmen im Bereich E-Commerce zur Verfügung stehen. Recherchen zufolge kommt es im Online-Handel in 70 % der Fälle zum Warenkorbabbruch. Denn vergessen Sie nicht: Diese BesucherInnen sind Leads, die den Conversion Funnel durchlaufen haben und kurz vor einem Kauf stehen. Was hat sie daran gehindert? Etwas so Einfaches wie eine Unterbrechung? Setzen Sie sich wieder mit ihnen in Verbindung und fragen Sie nach, ob sie ihren Kauf abschließen möchten. Wahrscheinlich werden Sie von den Ergebnissen überrascht sein.

 

Ihren Trichter mit Kennzahlen von Conversion Funnels bewerten

Wie bereits zu Beginn dieses Beitrags erwähnt, können Sie einen Conversion Funnel nicht einfach erstellen und dann links liegen lassen. Es geht hier um einen fortlaufenden, interaktiven Prozess, den Sie im Laufe der Zeit verfeinern müssen. Digitales Marketing ist dynamisch und verändert sich ständig – und Ihr Conversion Funnel muss sich mit den Trends der Branche und technologischen Fortschritten weiterentwickeln. Ihren Trichter zu bewerten ist für diesen Prozess ein wesentlicher Bestandteil und ermöglicht, jede Phase des Prozesses zu verbessern, um mehr qualifizierte Leads zu generieren und mehr dieser Leads in zahlende KundInnen zu verwandeln.

Als Erstes sollten Sie Google Analytics einrichten, um Ihren Conversion Funnel zu verfolgen. Sie können dann einen Lead verfolgen, sobald er in Ihren Trichter tritt. Und das bis zum Kauf. So erhalten Sie einen Überblick über die Performance Ihres Trichters und Zugriff auf einige der wichtigsten Kennzahlen des Conversion Funnels, die Ihnen bei der Entscheidung helfen, worauf Sie als Nächstes den Fokus setzen sollten, wie z. B.:

 

Cost per Acquisition (CPA)

Marketing kostet Geld. Und die mit Ihrem Conversion Funnel verbundenen Ausgaben können sich schnell summieren. Es ist äußerst wichtig, den Nutzen dieser Investitionen zu verstehen. Wie hoch ist der Return on Investment (ROI) für Ihren Conversion Funnel? Um die Antwort zu erhalten, müssen Sie Ihre Cost per Acquisition berechnen. Dazu teilen Sie die mit Ihrem Conversion Funnel verbundenen Kosten durch die Anzahl der zahlenden KundInnen, die der Trichter im gleichen Zeitraum generiert hat. Wenn Sie z. B. 500 US-Dollar investiert und 10 zahlende KundInnen generiert haben, beträgt Ihr CPA 50 US-Dollar.

Anschließend können Sie diese Zahl dann mit den durchschnittlichen Ausgaben vergleichen und herausfinden, ob Ihre Conversion gewinnbringend ist oder nicht. Wenn die oder der durchschnittliche KundIn wie im Beispiel oben 200 US-Dollar ausgibt, ist Ihr Trichter gewinnbringend. Liegt die durchschnittliche Lebenszeitausgabe hingegen bei 20 US-Dollar, fährt der Trichter einen Verlust ein.

 

Conversion Rate

Google Analytics berechnet die Conversion Rate Ihres Trichters danach, wie viele der BesucherInnen sowohl die Zielseite (z. B. „Danke für Ihren Kauf“) als auch eine der Seiten besucht haben, die mit den früheren Phasen Ihres Conversion Trichters verknüpft sind. So erhalten Sie nützliche Informationen darüber, wie gut Ihr Trichter im Laufe der Zeit funktioniert, was Ihnen bei der Bewertung aller Änderungen im Hinblick auf die Optimierung Ihres Trichters helfen kann.

 

Sind Sie bereit für die Optimierung Ihres Trichters?

Zusammenfassend lässt sich sagen, dass Conversion Funnels für alle Unternehmen im Online-Handel ein unerlässliches Asset sind. Wenn Sie Ihren Umsatz steigern möchten, ist die Optimierung Ihres Trichters oft der beste Ausgangspunkt. Welche Schritte werden Sie nach dem Lesen dieses Beitrags unternehmen?