Option to Retain Upstream Data Across Conditional Branches

The idea is:

Add an option or built-in behavior in n8n to retain key data (e.g. from a Webhook node) when workflows branch after an If or Switch node. Currently, only the directly preceding node’s data is available downstream, which causes context loss — especially for essential fields like chat_id in Telegram or Slack flows.


My use case:

In bot workflows, messages pass through Webhook → If → OpenAI → Telegram nodes. But because OpenAI doesn’t retain chat_id, the Telegram node fails unless a workaround (like a Set node) is added after Webhook. This complicates flows and adds friction.


I think it would be beneficial to add this because:

  • Avoids unnecessary Set nodes just to retain critical values
  • Keeps workflows cleaner and easier to debug
  • Reduces execution errors due to missing context
  • Improves logic portability across branches

Any resources to support this?

See community examples of bots that drop context across multiple nodes unless fields are manually preserved.


Are you willing to work on this?

I’m open to providing flow examples and testing. Would love to see it integrated into core behavior!