Resources · n8n integration

n8n Execute Sub-workflow nodeConfigure Execute Sub-workflow in n8n.

One workflow can call another, and that is the whole job of the n8n Execute Sub-workflow node. It loads a saved workflow from 4 possible sources, sends the current items into it, and waits for the result when you want it to. Handy once the same block of steps shows up in three workflows.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the n8n Execute Sub-workflow node do?

The n8n Execute Sub-workflow node treats a second workflow as a single step inside the current one. You point it at a workflow, it passes the items arriving on its input into that workflow, and the parent workflow carries on. The official description is blunt about the goal: modularize your workflows and keep a single source of truth for a series of actions you perform often.

The node runs on the host machine that runs n8n, so the called workflow is not a remote call. That matters for the first scenario people hit: a block of steps that already exists in three places. Cleaning a phone number, looking up a customer record, formatting a message body. Move it into its own workflow once, and every parent calls it with this node instead of keeping three copies that slowly drift apart.

The second scenario is a shared routine behind several entry points. A form, a schedule and an inbound message all end up needing the same handling. Each parent has its own trigger, and all three finish with a call to the same sub-workflow. When the handling changes, one workflow changes. The parents stay untouched.

The third scenario is a long job you do not want to sit and wait for. Turn Wait For Sub-Workflow Completion off and the parent moves to its next step while the sub-workflow keeps running. Useful when the parent has to answer something quickly and the heavy part can finish on its own.

Choosing between this node and a plain HTTP call is simple enough. If the work lives in another n8n workflow on the same instance, this node calls it directly. If the work lives behind an API, the HTTP Request node is the one that calls any HTTP endpoint, and it is also the fallback when a dedicated node misses an API operation. Sending a message or writing a row is not a job for a sub-workflow either: Slack, Gmail and Google Sheets have their own nodes, and a sub-workflow only earns its place when it wraps several of those steps together.

Two limits are worth knowing before you build on it. This node does not start a workflow on its own, so a trigger still has to sit in front of it (Schedule Trigger, Webhook, or the trigger of a tool). And when Source is set to database with an expression in Workflow ID, running once with all items sends every item to the same workflow: the ID comes from evaluating the expression on the first input item only. If each item needs a different sub-workflow, that is what Mode is for. If you are still weighing the platform itself, the n8n review goes through it in detail.

Actions

How do you set up the node?

The Execute Sub-workflow node exposes one operation. For each one: the node as you configure it in n8n, the required fields, and our field notes.

01

Execute a Sub-Workflow

call_workflow

What you see in n8n

Notes & use cases

This operation loads another workflow, runs it with the items on the node's input, then hands control back to the parent.

Key parameters

  • Source: where the workflow comes from, database by ID, localFile from a saved JSON file, parameter from JSON you paste, or url from a remote address.
  • Workflow ID: required with database, read in the URL of that workflow, often as {{ $json.field }}.
  • Mode: once passes all items into one execution, each calls the sub-workflow separately for every item.
  • Wait For Sub-Workflow Completion: on, the parent waits for the result; off, it continues straight away.
Use cases
a parent that enriches a batch of contacts, then calls one shared sub-workflow to store the cleaned records.
Need help

Need help automating Execute Sub-workflow with n8n?

A person reads every message.

FAQ

Questions people ask next

01Is the Execute Sub-workflow node free in n8n?
Yes. It is a core node shipped with n8n, so there is nothing to install and no extra cost on the n8n side. It works the same on n8n Cloud, the hosted offer run by n8n, and on a self-hosted instance installed with Docker or npm under the Community Edition and its Sustainable Use licence. A workflow built in one place behaves the same in the other. The only thing that changes between setups is where the sub-workflow you call happens to live, since the node runs workflows on the host machine that runs n8n.
02What credentials does the n8n Execute Sub-workflow node need?
None. This node has nothing to authenticate: no credential to create, no Authentication selector in the panel. There is no account to connect before you use it. What it does need is a workflow to call, and the way you point at it depends on Source. With Database you give a Workflow ID, which you read in the URL of that workflow. With Local File you give a Workflow Path such as /data/workflow.json. With Parameter you paste the Workflow JSON itself, and with URL you give the Workflow URL to load it from.
03What are the limits of the Execute Sub-workflow node?
It does not start anything by itself. Like any node that is not a trigger, it runs on items that reach it, so a Schedule Trigger, a Webhook or a tool trigger has to open the parent workflow first. It also has a single option, Wait For Sub-Workflow Completion, so anything beyond waiting or not waiting is handled by the sub-workflow itself. The page describes version 1 of the node, the highest version in the catalog: an older workflow can still show an earlier version with fewer options, and a node never changes version on its own.
04When should you call a sub-workflow instead of using HTTP Request?
It depends on where the work lives. If the steps you want to reuse are already a workflow on the same n8n instance, this node calls it directly and passes your items across, with no URL and no authentication in between. If the work sits behind an API, HTTP Request is the node for it, since it calls any HTTP endpoint and covers the operations a dedicated node leaves out. A rough rule: reuse inside n8n goes through a sub-workflow, anything outside n8n goes through HTTP Request or the dedicated node for that tool.
05n8n or Make for splitting a process into sub-workflows?
Both let you break a long process into pieces, so the choice lands on other criteria. Make is a hosted automation platform with no self-hosting option, billed per operation, which keeps the setup light and makes the cost follow volume. n8n runs on n8n Cloud or on your own server, so the data stays where you put it and the cost follows the hosting rather than the number of steps. If a shared routine gets called on every item of every run, that difference in billing model is usually what settles it.
Hack'celeration Lab

Get our weekly integration tips.

No spam. Unsubscribe anytime.