Am Anfang ist ein Workflow überschaubar: ein Auslöser, ein paar Schritte, fertig. Mit der Zeit kommen Sonderfälle, Benachrichtigungen und Abgleiche dazu – und irgendwann ist aus dem sauberen Ablauf ein unübersichtliches Geflecht geworden, das niemand mehr gefahrlos anfasst. Ich zeige, wie Sie große Automatisierungen in n8n mit Sub-Workflows in wiederverwendbare Bausteine zerlegen: wann sich das lohnt, wie die Daten zwischen den Teilen fließen und wo die Grenzen liegen.
Woran Sie merken, dass ein Workflow zu groß wird
Ein Workflow ist reif für die Aufteilung, wenn drei Symptome auftauchen – meist gemeinsam. Erstens: Dieselbe Logik steht an mehreren Stellen. Der Abgleich mit dem CRM, das Formatieren einer Adresse, das Verschicken einer Benachrichtigung – kopiert in drei Workflows, und bei jeder Regeländerung müssen Sie an alle drei denken. Zweitens: Eine kleine Änderung fühlt sich riskant an, weil ein einziger Ablauf zwanzig Aufgaben auf einmal erledigt und Sie nie sicher sind, was Sie mit einem Handgriff mit anreißen. Drittens: Neue Kollegen brauchen eine halbe Stunde, nur um zu verstehen, wo dieser eine Ast eigentlich hinführt.
Es gibt noch ein technisches Symptom: Sehr große Workflows, die viele Datensätze gleichzeitig durch den Speicher schieben, können an Speichergrenzen stoßen. Auch dagegen hilft das Aufteilen, weil jeder Teil für sich läuft. Der häufigste Grund bleibt aber der menschliche: Ein Ablauf, den keiner mehr überblickt, ist teuer in der Wartung und fehleranfällig im Betrieb.
Was ein Sub-Workflow ist
Ein Sub-Workflow ist technisch nichts Besonderes: ein ganz normaler n8n-Workflow, der aber nicht selbst startet, sondern von einem anderen aufgerufen wird. Zwei Knoten spielen zusammen. Im Hauptworkflow steht der Execute Sub-workflow-Node, der den anderen Workflow anstößt. Im Sub-Workflow steht als allererster Knoten der Execute Sub-workflow Trigger – in der Oberfläche auch „When Executed by Another Workflow“ genannt. Er ist die Eingangstür, durch die die Daten hereinkommen.
Ein Sub-Workflow ist ein eigenständiger n8n-Workflow, den ein anderer Workflow wie einen Baustein aufruft. Statt dieselbe Logik – etwa den CRM-Abgleich oder den Versand einer Benachrichtigung – in jeden Ablauf zu kopieren, bauen Sie sie einmal und rufen sie überall auf. Ändert sich die Regel, pflegen Sie sie an einer einzigen Stelle statt an fünf.
Derselbe Sub-Workflow lässt sich übrigens auch von einem KI-Agenten als Werkzeug aufrufen. Für diesen Artikel bleibe ich aber beim klassischen Fall: ein Hauptworkflow ruft einen Baustein auf.
Wie die Daten zwischen Haupt- und Sub-Workflow fließen
Der Datenfluss ist eine gerade Linie: Der Execute Sub-workflow-Node übergibt seine Eingangsdaten an den Trigger des Sub-Workflows, dort laufen die Schritte durch, und was der letzte Knoten ausgibt, kommt an den aufrufenden Node zurück. Zwei Einstellungen bestimmen das Verhalten.
Im Hauptworkflow legen Sie beim Execute Sub-workflow-Node fest, welchen Workflow Sie aufrufen (per Auswahlliste, Workflow-ID, lokaler Datei oder URL) und in welchem Mode er läuft: Run once with all items reicht alle Datensätze auf einen Schlag hinüber, Run once for each item ruft den Sub-Workflow einmal pro Datensatz auf. Die Option Wait for Sub-Workflow Completion entscheidet, ob der Hauptworkflow auf das Ergebnis wartet (eingeschaltet) oder den Baustein nur anstößt und sofort weiterläuft (ausgeschaltet).
Im Sub-Workflow bestimmt der Trigger über den Input data mode, wie streng die Eingabe ist. Define using fields below legt benannte Felder mit Datentypen fest – der aufrufende Node zeigt diese Felder dann automatisch zum Ausfüllen an. Define using JSON example leitet die erwartete Struktur aus einem Beispiel ab. Accept all data nimmt alles ungeprüft entgegen; dann liegt es am Sub-Workflow, mit fehlenden oder unpassenden Werten umzugehen.
| Ihr Ziel | Einstellung |
|---|---|
| Jeden Datensatz einzeln behandeln | Mode Run once for each item |
| Alle Datensätze zusammen übergeben | Mode Run once with all items |
| Das Ergebnis zurückbekommen | Wait for Sub-Workflow Completion an |
| Nur anstoßen und weiterlaufen | Wait for Sub-Workflow Completion aus |
| Feste Eingabefelder erzwingen | Trigger auf Define using fields below |
| Beliebige Daten durchlassen | Trigger auf Accept all data |
Mein Rat: Für Bausteine, die Sie ernsthaft wiederverwenden wollen, lohnen sich definierte Felder. Sie sind die Schnittstelle des Bausteins – wie die Parameterliste einer Funktion. Accept all data ist bequem für den schnellen Anfang, rächt sich aber, sobald drei verschiedene Workflows den Baustein mit leicht unterschiedlichen Daten füttern.
Wann sich das Aufteilen lohnt – und wann nicht
Der stärkste Grund ist die Wiederverwendung: Logik, die in mehreren Workflows identisch vorkommt, gehört in einen Baustein. Danach kommt die Wartbarkeit – ein Ablauf, der in klar benannte Teile zerfällt, lässt sich einzeln verstehen, ändern und testen, ohne den Rest zu gefährden. Und schließlich die Entlastung des Speichers bei sehr datenintensiven Workflows.
Aufteilen ist aber kein Selbstzweck. Jeder Sub-Workflow ist ein zusätzlicher Sprung, den Sie beim Nachvollziehen und Debuggen mitgehen müssen. Einen kleinen, linearen Workflow in fünf Häppchen zu zerlegen, macht ihn nicht wartbarer, sondern nur zerstreuter. Die Faustregel, die sich in Gesprächen mit Betrieben bewährt: Zerlegen Sie entlang echter Fugen – dort, wo ein abgeschlossener Teilschritt sitzt, den Sie benennen können („Kunde im CRM anlegen“, „Rechnung archivieren“) und den Sie potenziell woanders wieder brauchen. Nicht dort, wo einfach viele Knoten stehen. Wo die Grenze zwischen Konfigurieren und echtem Programmieren verläuft, habe ich in Low-Code oder Eigenentwicklung beschrieben – dieselbe Denke gilt für den Zuschnitt der Bausteine.
Einen bestehenden Workflow aufteilen
Sie müssen Bausteine nicht am Reißbrett planen. n8n kann einen Teil eines bestehenden Workflows für Sie herauslösen. Sie markieren die betreffenden Knoten, klicken mit der rechten Maustaste auf die Arbeitsfläche und wählen Convert to sub-workflow. n8n legt daraufhin einen neuen Workflow mit passendem Trigger an und ersetzt die Auswahl im Original durch einen Execute Sub-workflow-Node.
Damit das sauber funktioniert, muss die Auswahl ein paar Regeln erfüllen: Sie muss zusammenhängend sein, darf keinen Trigger-Knoten enthalten, und nur ein Knoten darf Verbindungen von außerhalb hereinbekommen und nur einer nach außen abgeben. Praktisch heißt das: ein Eingang, ein Ausgang, kein Ast, der quer in die Auswahl hineinragt. n8n aktualisiert dabei sogar Ausdrücke, die auf Knoten außerhalb der Auswahl verweisen, und macht daraus Eingabeparameter. Eines nimmt Ihnen das Werkzeug nicht ab: Die Datentypen für Ein- und Ausgabe stehen zunächst auf „alles erlaubt“. Wer eine belastbare Schnittstelle will, setzt sie im Trigger und im abschließenden Set-Node von Hand.
Grenzen und Stolperfallen
Drei Dinge sollten Sie vorher wissen. Erstens: Enthält der Sub-Workflow selbst einen Fehler, kann der Hauptworkflow ihn nicht aufrufen – ein kaputter Baustein legt also den ganzen Aufruf lahm. Behandeln Sie einen Sub-Workflow deshalb wie produktiven Code und testen Sie ihn eigenständig, bevor Sie ihn in mehrere Abläufe einhängen.
Zweitens: Die Ausführung verteilt sich auf zwei Protokolle. Wenn etwas schiefgeht, springen Sie über den Link View sub-execution am aufrufenden Node in die Ausführung des Bausteins – sonst suchen Sie den Fehler im falschen Log. Ein sauberes Fehler- und Monitoring-Konzept wird mit Sub-Workflows also nicht unwichtiger, sondern wichtiger, weil ein Ausfall zwischen zwei Workflows leicht durchrutscht.
Drittens: Steht Wait for Sub-Workflow Completion auf aus, bekommt der Hauptworkflow kein Ergebnis zurück – das ist gewollt, wenn Sie nur etwas anstoßen wollen, aber eine böse Überraschung, wenn Sie mit dem Rückgabewert weiterrechnen wollten. Ein Detail am Rande für Cloud-Nutzer: Laut n8n-Dokumentation zählt bei den Tarif-Limits nur die übergeordnete Ausführung, nicht jeder einzelne Sub-Workflow-Aufruf.
Fazit
Sub-Workflows sind das Werkzeug gegen den einen Riesen-Workflow, den keiner mehr anfassen will. Wiederkehrende Logik bauen Sie einmal als Baustein, definieren mit dem Trigger eine klare Eingabe und rufen ihn überall auf – Änderungen pflegen Sie danach an einer Stelle statt an fünf. Der Gewinn ist Wartbarkeit; der Preis sind zusätzliche Sprünge, die Sie nur dort eingehen sollten, wo eine echte Fuge im Prozess sitzt.
Wenn Ihr Automatisierungs-Setup gewachsen ist und sich unübersichtlich anfühlt, schauen wir gemeinsam, wo sich ein Schnitt lohnt und wo er nur Verwirrung stiftet. In einem kostenlosen Prozess-Check gehen wir Ihre Abläufe durch; tiefer in die Möglichkeiten von n8n geht meine n8n-Beratung.