Pipedream control flow → n8n If, Switch and Merge nodes
Updated 2026-10-21 · 2 min read
Conceptually, Pipedream's control flow operators have direct n8n counterparts: If/Else corresponds to the n8n If node, Switch to the Switch node, and Parallel branches join again with a Merge node. Converting them automatically is less certain: branch steps are stored separately from the main step list in the export, a converter that ignores them silently drops part of the workflow, and branch conditions always need a check by hand after import.
Mapping
| Pipedream operator | n8n node | Notes |
|---|---|---|
| If/Else | If | Two outputs: true and false |
| Switch | Switch | Multiple outputs, Rules or Expression mode |
| Parallel | Several connections from one node, then Merge | Merge waits until all inputs have data |
| Filter (continue / exit on condition) | Filter | Items that fail the condition are dropped |
End Workflow / $.flow.exit() |
No node needed: a branch with no further nodes ends; or a Code node returning [] |
|
Delay / $.flow.delay |
Wait | Resume after an interval, at a time, or on a webhook call |
| Loop in code | Loop Over Items | Often unnecessary: most n8n nodes already run once per item |
Pipedream's operators are documented under control flow; If/Else is marked beta there, and Switch and Parallel have their own pages.
Where branches live in the export
Each workflow file in the Pipedream export has a steps list and a deployments field. deployments holds the steps inside if/else and switch branches. A converter that reads only steps and wires nodes in a straight line produces a workflow that imports fine but skips everything inside the branches. Check this on any conversion tool before trusting the output.
Our converter reads deployments and tries to rebuild the branches as If and Switch nodes, joining parallel paths with Merge. Pipedream documents deployments only in prose, and we haven't yet seen a real export with branches (none of the public workflows we checked used them). So every workflow with branches is marked yellow in the report: check each branch condition by hand after import. If the converter can't read a branch at all, the workflow is marked red instead of silently dropping steps.
Conditions
Pipedream conditions compare a value from an earlier step with an operator. n8n's If and Switch nodes do the same with typed comparisons (string, number, date, boolean, array, object) and expressions such as {{ $json.amount }}. Check every condition by hand after conversion, in particular:
- References:
steps.charge.$return_value.amountbecomes$('charge').first().json.amount. - Types: n8n compares by the type you choose. A number arriving as the string
"10"may need conversion, or the Less Strict Type Validation option documented for the Switch and Filter nodes.
Segments and billing
Pipedream timed and billed each linear segment between operators separately. n8n Cloud counts one execution per workflow run, however many branches and nodes it passes through (n8n pricing). A workflow you split up in Pipedream to save credits can usually be one workflow in n8n.
Next steps
- See which of your workflows use branches: free report
- Errors inside branches: Pipedream errors to n8n
- Full guide: migrate Pipedream to n8n
Not affiliated with Pipedream or n8n.
FAQ
- What is the n8n equivalent of Pipedream If/Else?
- The If node. It splits the workflow into a true and a false output based on conditions.
- How do I branch to more than two paths in n8n?
- Use the Switch node. It works like the If node but supports multiple output routes, with rules or an expression.
- How do I join branches again in n8n?
- Use the Merge node. It combines data from several inputs once all of them have data.
- Does the Pipedream export include steps inside branches?
- Yes. The steps inside if/else and switch branches are in the deployments field of each workflow file, not in the main steps list.
Related
Sources
- https://pipedream.com/docs/workflows/building-workflows/control-flow
- https://pipedream.com/docs/workflows/building-workflows/control-flow/switch
- https://pipedream.com/docs/workflows/building-workflows/control-flow/parallel
- https://pipedream.com/docs/workflows/building-workflows/control-flow/filter
- https://pipedream.com/docs/workflows/building-workflows/control-flow/end-workflow
- https://pipedream.com/docs/workflows/export-workflows
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.merge
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.filter
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait
- https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches
- https://n8n.io/pricing/