NNeXsoft
EngineeringAIConversion

Wie wir aus einem Chat-Widget einen Conversion-Funnel gemacht haben

Floating-Button öffnet, User scrollt rum, schließt. So sah unser AI-Chat aus, bevor wir 6 konkrete Pattern nachgebaut haben. Hier sind die Architektur-Entscheidungen.

29. Mai 2026·9 min Lesezeit

Wir haben heute den NeXsoft-AI-Chat von Nice-Toy zu Measurable-Conversion-Tool umgebaut. Sechs Pattern, alle bei uns selbst im Production-Code, alle messbar in Vercel Analytics.

Das Problem: ein Chat ohne Story

Der erste Wurf war ein Floating-Button mit Sparkles-Icon. User klickt, Chat-Sheet öffnet, leerer Eingabe-State, generisches Fragen Sie uns alles. Wirklich passiert: User klickt, sieht nichts Konkretes zum Fragen, schließt wieder, nie wieder gesehen.

Das hat zwei Probleme:

  • Kein Intent-Signal: der Chat weiß nicht warum der User gerade auf /preise ist.
  • Kein nächster Schritt: selbst wenn die AI brauchbar antwortet, gibt es keinen Path zur Buchung.

Pattern 1: Page-aware Initial-Suggestions

Der erste Tap im Chat ist das wichtigste Signal — und gleichzeitig dort, wo wir am meisten Kontext haben: die URL. Jemand auf /preise hat vermutlich Pricing-Fragen, jemand auf /cases/tele-health evaluiert ein konkretes Projekt.

10 Pfade, je 4 Chips. Lift: ein Tap statt Tippen.

Pattern 2: URL-Trigger (?chat=...) — das Killer-Feature

Der Floating-Button ist passiv. Das URL-Trigger-Pattern macht den Chat aktiv aufrufbar von jeder Stelle:

  • ?chat=open öffnet den Chat leer
  • ?chat=Was+kostet+ein+MVP%3F öffnet und pre-fillt die Frage
  • ?chat=ask:Was+kostet+ein+MVP%3F öffnet und sendet sofort an die AI

Implementierung: useEffect liest window.location.search beim Mount, handelt den Param, history.replaceState entfernt ihn aus der URL damit kein Refresh-Loop entsteht.

Dann auf jeder relevanten Seite ein unaufdringlicher Link: oder fragen Sie den Assistenten: Was gehört zu so einem Vorhaben? Antippen → der Assistent öffnet mit vorbelegter Frage → Antwort → Übergabe zur Terminvereinbarung. Drei Klicks von der Frage zum Erstgespräch.

Muster 3: Übergabekarte nach zwei Nachrichten

Wann soll man den User zur Buchung schicken? Nicht sofort (zu pushy). Nicht erst nach 10 Messages (verloren). Sweet Spot: nach 2 User-Messages. Da hat der User schon investiert, und das lieber direkt sprechen?-Prompt fühlt sich hilfreich an statt aufdringlich.

Die Karte ist visuell distinct von Message-Bubbles — gradient border, calendar icon, prominenter Button. Liest sich als CTA, nicht als Chat-Text.

Pattern 4: Stage-aware Follow-up Chips

Nach jeder AI-Antwort: 3 kontextuelle Chips. Aber welche? Zähle die User-Messages und cycle durch:

  • Early (1 msg): Zeig mir konkrete Cases · Was kostet ein MVP? · Welcher Stack?
  • Mid (2-3): Wie entsteht das Angebot? · Wie lange dauert das? · Wie sichert ihr KI-Funktionen ab?
  • Late (4+): Erstgespräch vereinbaren · Beispielsysteme ansehen · Sicherheit und Datenschutz

Die Late-Chips bypassen die AI komplett: Erstgespräch buchenrouter.push("/contact"). Schnellere Conversion, gespartes Token-Budget.

Pattern 5: Email-Fallback wenn AI offline

Was wenn der AI-Gateway-Key fehlt oder die API timeout't? Statt eine kalte AI gerade offline-Message zu zeigen und den User zu verlieren, rendern wir inline eine Mini-Email-Form. POST geht an /api/newsletter (das eh BotID-protected ist und Resend nutzt). On Success ersetzt sich die Form durch ein Häkchen-Bestätigungs-Element. Sub-Conversion gerettet.

Pattern 6: Analytics-Events für jeden Schritt

Ohne Messung ist alles oben Tribal Knowledge. Sechs Vercel-Analytics-Events vom Open bis zum Klick:

  • chat_opened mit path und ggf. via:"url_trigger"
  • chat_first_message mit 50-char Preview (PII-safer als full text)
  • chat_chip_used mit stage und chip
  • chat_handoff_click wenn die Übergabekarte geklickt wird
  • chat_conversion_route route'd zu /contact oder /blueprints
  • chat_email_submitted wenn die Fallback-Form abgeschickt wird

Alle Calls sind cookie-consent-gated: ohne Einwilligung wird der Analytics-Provider gar nicht geladen, track() wird zum No-op. DSGVO-konform per Default.

Das große Ganze

Jedes einzelne Pattern ist klein. Zusammen formen sie eine geführte User-Journey:

  1. User landet auf /preise, sieht den AI-Hook
  2. Tap → Chat öffnet → Frage vorbefüllt → User schickt
  3. AI antwortet mit Markdown und Link auf /cases
  4. 3 mid-stage Chips erscheinen, User tappt einen weiter
  5. Nach der zweiten Nachricht: die Übergabekarte erscheint
  6. Besucher tippt Termin buchen/contact mit dem Terminblock
  7. Booking. Conversion.

Was sich davon nachbauen lässt

Die Patterns sind AI-Service-agnostisch. Tauschen Sie streamText gegen eine vorgefertigte FAQ-Mapping, und der gleiche Funnel funktioniert. Was bleibt:

  • Page-Pfad → kontextuelle Initial-Suggestions
  • URL-Param → tiefer Link in den Chat
  • Stage-Counting → progressive Disclosure von Conversion-Optionen
  • Hand-off-Card als visuell distinkte Component
  • Inline-Email-Fallback wenn der Primary-Path failt
  • Strukturierte Analytics-Events pro Schritt

Wenn Sie gerade selbst an einem Chat-Widget bauen und sich fragen warum konvertiert das nichts — das hier ist der Grund. Setzen Sie die sechs Pattern um, dann entsteht der Funnel.

Fachbeiträge per E-Mail

Wie technische Entscheidungen zustande kommen — unregelmäßig und nur dann, wenn es etwas zu berichten gibt. Jederzeit abbestellbar. Sie erhalten zuerst eine Mail mit Bestätigungslink.

Hilft das Ihrem Vorhaben weiter?

Sprechen wir 30 Minuten darüber — konkret zu Ihrem Vorhaben.

NX
NeXsoft
Geschäftsleitung
Koblenz·Antwort < 24 h werktags
Direkt mit der Geschäftsleitung sprechen

Ohne Zwischenstationen. Sie sprechen direkt mit der Geschäftsleitung.

Wir hören Ihnen 30 Minuten zu, stellen ein paar gezielte Fragen und sagen Ihnen am Ende offen, ob — und wie — wir Ihnen helfen können. Wenn nicht, erhalten Sie mindestens zwei Empfehlungen, wer es könnte.

  • 30 Minuten, ohne Verkaufsgespräch
  • Konkrete Einschätzung Ihres Vorhabens
  • Klare Einordnung, welcher Projektrahmen passt
Lieber per Mail schreiben →