CRM-Kern selbst gehostet: 28.505 Datensätze migriert — was funktioniert und was nicht

  • 5 mins read

Wer über CRM-Kosten spricht, rechnet meist die falsche Position. Die Speicherung von Kontakten ist bei HubSpot nicht das Problem — das CRM ist bis zu einer Million Datensätze kostenfrei. Teuer wird es an drei anderen Stellen: bei den Marketing-Kontakten, also den aktiv bespielten Adressen, bei den Seats und seit April 2026 bei den Breeze-Agenten, die ergebnisbasiert abgerechnet werden. Für einen Bestand in der Größenordnung von 30.000 aktiv bemarketeten Kontakten landet man erfahrungsgemäß bei 1.500 bis 2.500 Euro im Monat.

Das ist der Punkt, an dem sich die Frage stellt, ob der Datenkern zwingend dort liegen muss. Wir haben sie für den eigenen Betrieb mit Nein beantwortet und den CRM-Kern auf eine selbst gehostete Installation verlagert. Was folgt, ist der Verlauf mit Zahlen — einschließlich der Stellen, an denen es nicht trägt.

Vorweg, weil die Frage sonst mitschwingt: Das ist kein Argument gegen HubSpot. Für viele mittelständische Unternehmen ist die Plattform die richtige Wahl, gerade wegen der Integrationstiefe. Unsere Entscheidung betrifft einen konkreten Fall mit hohem Kontaktbestand, ausgeprägtem Datenschutzanspruch und vorhandener eigener Infrastruktur.

Was aufgesetzt wurde

Als CRM-Kern kommt Twenty zum Einsatz, eine quelloffene, Postgres-native Anwendung, die REST- und GraphQL-Schnittstellen automatisch erzeugt und Custom Objects über eine Metadata-API programmatisch anlegen lässt. Genau das ist die Voraussetzung für eine Migration, die nicht in Handarbeit endet.

Der Betrieb läuft in einem eigenen Container auf vorhandener Virtualisierung: vier Dienste — Anwendungsserver, Worker, PostgreSQL 16 und Redis 7 — auf 6 GB RAM und 4 vCPU. Die Version ist bewusst auf einen festen Stand gepinnt, nicht auf „latest”. Der Zugriff von außen läuft über einen Tunnel mit vorgeschalteter Zugangskontrolle; interne Dienste sprechen die REST-Schnittstelle direkt im Netz an.

Die Migration in Zahlen

Übertragen wurden an einem Tag:

  • 10.756 Unternehmen
  • 17.749 Kontakte, davon 14.582 (82 Prozent) korrekt mit ihrem Unternehmen verknüpft
  • 0 Dubletten — die Idempotenz läuft über ein Feld, das die Quell-ID mitführt, der Lauf ist dadurch wiederaufsetzbar
  • 10 Datensätze mit Fehlern in den Quelldaten, die einzeln nachgezogen wurden

Die Grenzen der Zielschnittstelle bestimmen dabei das Tempo: 100 Anfragen pro Minute, maximal 60 Datensätze je Batch. Wer das nicht von vornherein einplant, baut einen Importer, der auf halber Strecke in ein Limit läuft.

Der oft befürchtete Daten-Lock-in existierte nicht. Die Quell-API ist offen und vollständig; der Aufwand liegt nicht im Export, sondern in den Verknüpfungen und in der Historie — und im Nachbau der Automatisierungen, die vorher in der Plattform lagen.

Was danach möglich wurde

Der eigentliche Gewinn zeigte sich erst nach der Migration. Auf dem eigenen Datenbestand lässt sich ein ICP-Scoring rechnen, ohne es einem Anbieter abzukaufen. Das Ergebnis auf dem Echtbestand:

  • Tier A: 0
  • Tier B: 25
  • Tier C: 339
  • Tier D: 10.392, davon 7.163 nach den Ausschlusskriterien disqualifiziert

Dass Tier A bei null steht, ist kein Fehler im Modell, sondern dessen Bestätigung: Die höchste Stufe verlangt Assessment- und Trigger-Daten, die noch nicht migriert sind. Ein Scoring, das ohne diese Daten Bestnoten verteilt, misst nichts. Die 25 Unternehmen in Tier B sind demgegenüber plausibel — durchweg größere Häuser im deutschsprachigen Raum mit erreichbarem Buying Center.

Dazu kommen Auswertungen, die auf einer geschlossenen Plattform gar nicht möglich wären: der Kontaktbestand liegt zusätzlich in einer Vektordatenbank für semantische Suche und in einem Graphen, über den sich Warm-Intro-Pfade abfragen lassen. Beides sind schmale Anbindungsskripte, keine Produkte.

Fünf Fallen, die Zeit gekostet haben

Wer denselben Weg geht, kann sich Folgendes sparen:

  • Der Verschlüsselungsschlüssel ist unwiederbringlich. Geht er verloren, sind sämtliche in der Datenbank abgelegten Geheimnisse — Tokens, TOTP-Seeds — nicht wiederherstellbar. Er gehört vor dem ersten Start außerhalb des Systems gesichert.
  • Die konfigurierte Server-URL muss exakt der Zugriffs-URL entsprechen. Das war die häufigste Fehlerquelle im Aufbau, und die Symptome zeigen sich an ganz anderer Stelle.
  • Redis braucht eine passende Speicherstrategie. Mit der Standardeinstellung verwirft der Cache unter Druck Einträge — und damit Jobs aus der Warteschlange.
  • Batch-Updates funktionieren nicht überall. Das Anlegen im Batch geht, das Aktualisieren im Batch quittiert die API mit einem Fehler. Wer beides annimmt, merkt es erst beim zweiten Lauf.
  • Version pinnen, nicht „latest” ziehen. Bei einem System, das beim Start Datenbankmigrationen ausführt, ist ein unbeabsichtigter Versionssprung kein Update, sondern ein Ereignis.

Was nicht funktioniert hat

Drei Punkte, die in einer Erfolgsmeldung sonst fehlen würden:

Es ist ein Hybrid, kein Austausch. Die alte Plattform läuft weiter. Migriert ist der Datenkern, nicht der gesamte Betrieb; Deals und Historie stehen noch aus. Wer „abgelöst” liest und „abgeschaltet” versteht, unterschätzt den Restaufwand erheblich.

Für Anreicherung gibt es keinen quelloffenen Vollersatz. Die etablierten Dienste sind vom Markt verschwunden oder in Plattformangebote aufgegangen. Was bleibt, ist ein eigener Ansatz: Website-Auswertung mit einem lokalen Sprachmodell, dahinter europäische Registerquellen als Rückfallebene. Das ist machbar, aber es ist Arbeit und kein Haken auf einer Liste.

Die Lizenzfrage ist intern harmlos und extern relevant. Die verfügbaren quelloffenen CRM-Systeme stehen durchgehend unter starkem Copyleft. Für den Eigenbetrieb spielt das keine Rolle. Wer daraus ein Angebot für Kunden bauen will, muss die Lizenz vorher lesen, nicht nachher.

Für wen sich das rechnet

Die Verlagerung lohnt sich, wenn drei Bedingungen zusammenkommen: ein großer Bestand aktiv bespielter Kontakte, ein ernst gemeinter Anspruch, personenbezogene Daten im eigenen Haus zu halten, und vorhandene Infrastruktur samt der Fähigkeit, sie zu betreiben. Fehlt die dritte Bedingung, tauscht man eine kalkulierbare Lizenz gegen unkalkulierbaren Betriebsaufwand — das ist selten ein guter Handel.

Fehlen die ersten beiden, ist die Rechnung ohnehin eine andere: Wer 2.000 Kontakte pflegt, spart nichts und verliert Komfort.

Erstellt mit KI-Unterstützung, fachlich geprüft und redaktionell verantwortet von Achim Karpf.

Table of Contents

Marketing Automation ist weit mehr als der automatische Versand von E-Mails. Richtig eingesetzt, verbindet sie Daten, Inhalte, Kanäle und Vertriebsprozesse zu einer strukturierten Customer Journey,...

Wachsende Unternehmen stehen häufig vor derselben Herausforderung: Die Nachfrage steigt, mehr Leads kommen über verschiedene Kanäle herein, Vertriebsteams müssen schneller reagieren, und gleichzeitig erwarten potenzielle...

Wachsende Unternehmen stehen häufig vor derselben Herausforderung: Die Anzahl potenzieller Kunden steigt, die Customer Journey wird komplexer, und gleichzeitig sollen Vertrieb und Marketing effizient, personalisiert...