Execute Workflow node returns data from the previous node instead of the last sub-execution node

I have an ‘Execute Workflow’ node that contains a ‘Wait’ node with 90 seconds. When I execute it, a purple clock appears on the node, and after execution, instead of the output being the information from the last node of the sub-execution, it only provides the information from the node before the ‘Execute Workflow’ node.

Please share your workflow

Information on your n8n setup

  • n8n version: 1.76.1
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app): Docker
  • Operating system:
1 Like

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

HELP With this!

can you please share the workflow?

Dear community,

this is my first ever post here and I am not a developer by profession. So please be nice. :slight_smile:

I have the same issue - I use a telegram “send_and_wait” node that also causes a waiting state - therefore, I can share my workflow:

Mainflow:

Subflow:

When a subflow in n8n contains a “Telegram Send and Wait” node, the “Execute Subflow” node in the main workflow, which calls this subflow, fails to receive the expected output from the subflow. Instead of the subflow’s output, the “Execute Subflow” node incorrectly returns the output from a node that is located in the main workflow itself, and that is positioned before the “Execute Subflow” node.

Steps to Reproduce:

  1. Import the two workflows in n8n
  2. Configure the “Telegram Checkpoint” node in the subflow with your Telegram API credentials and a valid bot token.
  3. Run the “Main Workflow” by clicking “Test workflow”.
  4. Interact with the Telegram bot when it sends the message “TEST Question” to your Telegram chat (using the TelegramChatId defined in the “Sample input data for subflowCall” node). Send any text reply via Telegram.
  5. Observe the output of the “Execute Subflow” node in the Main Workflow execution.

Expected Behavior:

The “Execute Subflow” node in the Main Workflow should return the output of the last node in the Subflow, which is “Subflow output”. Therefore, the output of the “Execute Subflow” node in the Main Workflow should only contain data related to the “Subflow output” node and specifically the ReplyByUser field.

[
{
"ReplyByUser": "user reply via telegram"
}
]

Actual Behavior:

The “Execute Subflow” node in the Main Workflow’s output incorrectly returns the output of the “nodeJustBeforeTheSubflowCall” node from the main workflow itself. The expected output from the subflow, including the ReplyByUser field, is completely missing. This indicates a critical failure in retrieving the subflow’s output when a “Telegram Checkpoint” node is used within it.

[
{
"fieldFromMainflowNodeJustBeforeTheSubflowCall": "valueFromMainflowNodeJustBeforeTheSubflowCall"
}
]

Impact:

This bug is an issue as it completely prevents workflows from correctly receiving and processing the intended output from subflows that utilize “Telegram Send and Wait” or potentially other asynchronous “Send and Wait” nodes. This renders subflows with “Send and Wait” nodes unusable for any scenario requiring the subflow to return data back to the calling workflow. It severely impacts the ability to implement human-in-the-loop workflows and other patterns relying on asynchronous subflow interactions.

What is the error message (if any)?

No error messages are being displayed in the n8n UI or execution logs for the subflow or main workflow. The workflow executes successfully (without errors), but the output is wrong.

instance information

Debug info

core

  • n8nVersion: 1.83.2
  • platform: docker (self-hosted)
  • nodeJsVersion: 20.18.3
  • database: sqlite
  • executionMode: regular
  • concurrency: -1
  • license: enterprise (production)
  • consumerId: d9d368e2-30cb-4f86-805a-79259454591f

storage

  • success: all
  • error: all
  • progress: false
  • manual: true
  • binaryMode: memory

pruning

  • enabled: true
  • maxAge: 336 hours
  • maxCount: 10000 executions

client

  • userAgent: mozilla/5.0 (windows nt 10.0; win64; x64; rv:136.0) gecko/20100101 firefox/136.0
  • isTouchDevice: false

Generated at: 2025-03-24T13:49:24.231Z

1 Like

I have a similar issue with a Wait node in the subflow.

The Wait node pauses the subflow until the webhook call is received, then the subflow continues and the last node shows the expected output in the executions logs.

The main flow also waits until the subflow is done.

Now, when I check the execution logs of the main flow, then the output of the calling ExecuteWorkflow node is different from the output of the last node in the subflow.

Using the latest n8n-docker version.

3 Likes

Same here, guys. Can someone from the @n8n team please address this and let us know why this behavior is happening??

1 Like

I have the same issue. Correct output from last Code node in subworkflow (“message”: “Booking confirmed”) without errors, doesn’t return automatically to parent flow.
In parent flow I tried options: Execute workflow and Tool of AI agent, both do not receive output from child flow. AI chatbot writes: [No response. Make sure the last executed node outputs the content to display here]. ErrorMessage in parent workflow: "The workflow did not return a response"",

1 Like

I am not a Dev but I think that the logic needs to be changed which determines if “When Last Node Finishes” has been reached.

There should be a check if workflow status is “waiting”. I think this is an easily accessible attribute.

I have the same problem. Like yesterday my AI Agent was working fine and it could answer questions like normal but now i suddenly have the message “[No response. Make sure the last executed node outputs the content to display here]”. Even though in the “Output” section it shows what the AI should be saying:

There is no error message so i don’t know what’s going on, i tried to ask ChatGPT but it literally just made it worse, tried to use DeepSeek but it didn’t solve the problem.

Workflow:

  • n8n version: 1.97.1
  • Database (default: SQLite): Default
  • n8n EXECUTIONS_PROCESS setting (default: own, main): Default
  • Running n8n via (Docker, npm, n8n cloud, desktop app): n8n Cloud
  • Operating system: macOS

I just discovered the problem with my code—turns out, I took a scenic detour straight into the “galaxy brain but make it dumb” part of my mind. I connected the chat directly to the AI Agent… without merging it first. Peak clownery. I basically handed the AI a walkie-talkie and forgot to turn it on. :melting_face:

This is my correct version:

I had the same problem but managed to get round it by using code node with python and async await. It’s very important to use async version otherwise you “hang” the whole instanse into the waiting :laughing: