Skip to main content

n8n vs Node-RED (2026): Which Flow Tool Fits Your Project

n8n vs Node-RED by job: device and IoT edge flows versus SaaS business automation, a Node-RED to n8n node map, licences and prices checked October 2026.

Founder of IImagined.ai

Published
Oct 11, 2026
Reading time
11 min read
Quick answer

n8n vs Node-RED is decided by what the flow talks to. Pick Node-RED for flows that sit next to devices and speak MQTT, Modbus, TCP or serial on a Raspberry Pi or gateway; it is Apache 2.0 and free. Pick n8n for flows that connect business apps, APIs and AI agents, with saved executions and stored credentials. Many setups run both: Node-RED at the edge, n8n behind it, joined by MQTT or a webhook.

n8n vs Node-RED comes down to what the flow talks to: pick Node-RED when it sits next to devices and speaks MQTT, Modbus, TCP or serial, and pick n8n when it connects business apps, APIs and AI models. They overlap on HTTP, webhooks and MQTT, which is why plenty of setups run both: Node-RED at the edge, n8n behind it.

A documentation-based comparison, not a benchmark: nothing here was speed-tested. Versions, licences, node lists and prices were checked on 11 October 2026 against nodered.org and its docs on supported Node.js versions, security and context, the Node-RED 5.0.8 release and its source, the npm registry entries for the packages named below, FlowFuse pricing, the n8n pricing page, n8n's licence FAQ and docs, and the node list in the source of n8n 2.42.6.

Both tools draw a flow as boxes joined by wires, and that resemblance hides how different they are. Node-RED is a small always-on program that pushes messages between nodes as events arrive. n8n is a workflow engine that starts a run when a trigger fires, saves what happened, and bills or counts by the run. This page gives you a decision table by job, the head-to-head facts, a map from the Node-RED palette to n8n nodes, and the places where Node-RED still wins. It is part of our n8n hub.

n8n vs Node-RED: which one for which job?

Find the job in the first column. If your project spans two rows with different answers, read that as a sign you need both tools, not a compromise.

The jobPickWhy
Read sensors or PLCs over Modbus, OPC UA, serial or raw TCP and UDPNode-REDTCP, UDP and WebSocket nodes are in its core; Modbus, OPC UA, Siemens S7 and serial are community packages. n8n 2.42.6 has no core node for any of them
Run on a Raspberry Pi or gateway inside the buildingNode-REDInstalls straight onto Node.js with a script for Debian-based systems and keeps running with no internet
React to every message on a busy MQTT topicNode-REDMessages pass through an always-on flow. In n8n each message starts a full execution, which Cloud plans meter
Show an operator live gauges, charts and buttonsNode-REDFlowFuse Dashboard adds UI nodes. n8n offers forms and a chat window, not dashboards
Sync a CRM, a spreadsheet, an inbox and a chat tooln8nApp nodes with stored credentials and OAuth. In Node-RED each app is a community node or a raw HTTP call
Build an AI agent that calls tools and remembers a chatn8nAI Agent node with model, memory and tool sub-nodes, plus MCP client and server nodes
Scheduled reports, approvals and waits that last daysn8nSchedule Trigger, a Wait node that parks the execution in the database, and a saved history of every run
Ship the engine inside a product you sellNode-REDApache 2.0. The n8n licence does not let end users build workflows through your product without a commercial agreement
Turn a machine alarm into a ticket, a row and a messageBothNode-RED filters at the edge and hands one event to n8n over MQTT or a webhook
Where each tool sits
Runs on a server or in the cloud
Either. Node-RED on a server for a fleet over MQTT, or n8n with the MQTT Trigger for low-rate events.
n8n. Its home ground: app nodes, credentials, AI agents and execution history.
Runs at the edge
Node-RED. Its home ground: a Pi or gateway reading sensors and PLCs.
Rare. If an edge box must call a SaaS API, Node-RED can do it with an HTTP request node.
Talks to devices and protocols
Talks to business apps and APIs

Placement follows from each project's own documentation, checked October 2026.

Node-RED vs n8n head to head

The rows that decide most projects are the unit of work, the protocols in core and the licence. Price rarely does: both can be run for the cost of a server.

n8nNode-RED
Built forBusiness workflows across apps, APIs and AI modelsEvent-driven flows next to devices and services
LicenceSustainable Use License (source-available, fair-code)Apache 2.0 (open source)
Stewardn8n, a commercial companyOpenJS Foundation; started at IBM in 2013
Latest stable release2.42.6, released 9 October 20265.0.8, released 8 October 2026
How you run itn8n Cloud, or self-hosted with DockerNode.js 22 or later on a PC, server, Raspberry Pi or in Docker
Unit of workAn execution: one trigger firing, one full run, saved in historyA message moving through a flow that is always on
Device protocols in coreMQTT, plus AMQP, Kafka, RabbitMQ and Redis triggersMQTT, HTTP, WebSocket, TCP and UDP
Business appsHundreds of built-in app nodes with stored credentialsCommunity nodes from the Node-RED library, or HTTP requests
Custom codeCode node (JavaScript or Python)Function node (JavaScript)
State between runsData tables; workflow static dataNode, flow and global context; in memory unless you enable file storage
Access controlUser accounts built in; projects, roles and SSO on paid plansEditor open by default; users and permissions set in the settings file
Price (checked October 2026)Community Edition free to self-host; Cloud from €20 a month billed annually for 2,500 executionsFree. Managed hosting through FlowFuse is priced by quote

A note on the version row. n8n's 3.0 breaking-changes page already describes 3.0 as released and says self-hosted n8n needs a Docker-based deployment, with npm installs no longer supported. On 11 October 2026 the newest stable release on GitHub, npm and Docker Hub was still 2.42.6, so that is the version compared here.

What Node-RED is built for

Node-RED calls itself "low-code programming for event-driven applications". It began as a side project at IBM in 2013, was open-sourced the same year, and is now an OpenJS Foundation project under Apache 2.0. Version 5.0.8 shipped on 8 October 2026; the 5.x line needs Node.js 22 or later and the project recommends Node 24.

A Node-RED flow is deployed once and then stays live. A message arrives from an MQTT topic, an HTTP endpoint or a timer, and passes from node to node as a msg object. There is no run to count and no quota to meter. That model suits device work, where readings arrive constantly and most of them need nothing more than a unit conversion and a threshold check.

  • Protocols in the box. The 5.0.8 core palette has MQTT, HTTP, WebSocket, TCP and UDP nodes, next to function, switch, change, template, delay, trigger, filter and exec.
  • Industrial and hardware packages. The Node-RED library, which nodered.org puts at over 5,000 nodes and flows, includes node-red-contrib-modbus (Modbus TCP, UDP and serial), node-red-contrib-opcua, node-red-contrib-s7 for Siemens PLCs, node-red-node-serialport and node-red-node-pi-gpio.
  • Runs on small hardware. The Raspberry Pi guide installs it with one script on any Debian-based system and registers it as a service on port 1880. The same page notes that Node 24 has no 32-bit builds, so the oldest ARMv6 boards are out.
  • Dashboards. FlowFuse Dashboard (the @flowfuse/node-red-dashboard package, Apache 2.0) adds forms, buttons, gauges and charts. The older node-red-dashboard package is marked as no longer maintained on npm.

Its limits are the other side of being small. The docs say plainly that the editor is not secured by default, which "is only suitable if you are running on a trusted network"; you add users and permissions in the settings file. Context data lives in memory and is cleared on restart unless you switch on file storage. Git-backed projects have to be enabled in settings. And because there is no run, there is no list of past runs to open: you watch a flow through the Debug sidebar and node status.

Price, checked October 2026: Node-RED itself is free. If you want it hosted and managed for a team or a fleet, FlowFuse lists three plans (Edge, Hub and Fleet), each with a "Contact Us" button instead of a price.

What n8n is built for

n8n is workflow automation for the business side. Every workflow begins with a trigger, each firing is one execution, and each execution is saved with the data every node received and returned. You can open a failed run, see which node broke and retry it, and point every workflow at an error workflow that alerts you.

  • Apps with stored credentials. The core package for 2.42.6 registers 444 nodes and triggers, most of them business apps, plus 125 AI nodes. Logins and API keys are saved once as credentials and reused.
  • AI built in. The AI Agent node takes a chat model, memory and tools as sub-nodes, and MCP client and server nodes connect it to outside tools.
  • Some device reach. The MQTT Trigger and MQTT nodes cover the broker; AMQP, Kafka, RabbitMQ and Redis triggers cover queues; a Home Assistant node covers smart-home hubs. There is no core TCP, UDP, WebSocket, serial or Modbus node.
  • Locked down by default. Since n8n 2.0 the Execute Command and Local File Trigger nodes are disabled unless you turn them on, per the 2.0 breaking changes. Good for a shared server, awkward for a box that is meant to run shell commands.

Price, checked October 2026: the self-hosted Community Edition has no licence fee and no execution cap. n8n Cloud Starter is €20 a month billed annually for 2,500 executions and Pro is €50 for 10,000; the trial gives 1,000 executions with no card. Our n8n pricing guide has every tier, and what self-hosted n8n really costs covers the server side.

Pick n8n if, pick Node-RED if

The short version
Pick n8n if
  • The flow connects SaaS apps, databases and APIs
  • You want AI agents, chat memory and MCP tools
  • You need a saved history of runs and failure alerts
  • Approvals or waits can last hours or days
  • Volume is events per day, not readings per second
  • Non-developers must reconnect an app without code
Pick Node-RED if
  • The flow reads sensors, PLCs or serial devices
  • It must run on a Pi or gateway with no internet
  • Messages arrive many times a second
  • An operator needs a live dashboard
  • You want an Apache 2.0 engine inside your product
  • You are comfortable editing a settings file

n8n vs Node-RED for IoT: use both, in this order

For IoT the honest answer is rarely one or the other. Node-RED belongs beside the devices and n8n belongs beside the people. The join is an MQTT broker or a webhook, and the rule is that Node-RED sends events, not readings.

A device event on its way to a business tool
  1. 01
    Device or PLC

    Publishes readings over MQTT, or exposes Modbus or OPC UA registers.

  2. 02
    MQTT broker

    The meeting point. Both tools can subscribe to it.

  3. 03
    Node-RED at the edge

    Polls registers, converts units, drops repeats and decides locally, with no round trip to the cloud.

  4. 04
    Hand-off

    One MQTT publish or HTTP POST per event worth acting on, not per reading.

  5. 05
    n8n workflow

    The MQTT Trigger or a Webhook starts an execution with the event as JSON.

  6. 06
    Business tools

    A ticket, a spreadsheet row, a CRM note, a chat alert, or an AI summary of the shift.

On the n8n side, the MQTT Trigger takes a list of topics and has three options worth knowing: JSON Parse Body turns the payload into an object, Only Message drops the topic wrapper, and Parallel Processing is on by default. If you hand off by webhook instead, protect the URL; our n8n webhook guide covers header auth. For the wider picture, with Home Assistant, protocols and priced starter setups, see IoT automation in 2026.

Migration map: Node-RED palette to n8n nodes

If a Node-RED flow has drifted into business automation, calling CRMs and sending emails through HTTP nodes, it is a candidate for a move. This is the map. The left column is the Node-RED 5.0.8 core palette; the middle column uses the node names in n8n 2.42.6.

Node-RED noden8n equivalentWhat changes
injectSchedule Trigger, or Manual Trigger for a button pressA trigger starts a new execution; it cannot sit in the middle of a flow
http in + http responseWebhook + Respond to WebhookTest and production URLs are separate; the production URL works once the workflow is published
http requestHTTP RequestSame job. Logins are stored once as credentials and reused
mqtt in / mqtt outMQTT Trigger / MQTTBroker details move into an MQTT credential; one execution per message received
functionCode (JavaScript or Python)Return an array of items shaped { json: … } instead of a msg object
changeEdit Fields (Set)Set, rename or drop fields, with expressions for computed values
switchSwitch, or If for two branchesRules read fields on the item, not msg.payload
templateEdit Fields with an expression, or HTML (Generate HTML Template)Mustache placeholders become n8n expressions
delayWaitPauses for an interval, until a set time, or until a webhook call or form submission
filter (report by exception)Remove DuplicatesIts Remove Items Processed in Previous Executions mode remembers values between runs
split / join / batchSplit Out / Aggregate / Loop Over ItemsItems already travel as a list, so many loops disappear
csv, json, xml, htmlExtract from File, Convert to File, XML, HTMLOne node per format; JSON is native
file, file in, watchRead/Write Files from Disk, Local File TriggerSelf-hosted only. Local File Trigger is disabled by default since n8n 2.0
execExecute CommandSelf-hosted only, and disabled by default since n8n 2.0
catchError Trigger in an error workflowFailures are handled per workflow, with the failed execution linked
link nodes and subflowsExecute Sub-workflow and its triggerShared logic lives in its own workflow
flow and global contextData table, or workflow static data in a Code nodeStatic data is saved only by published, triggered runs, not test runs
debugNo node neededEvery node shows its input and output; past runs are in the Executions list
tcp, udp, websocket, serial, Modbus, OPC UANo core node in n8n 2.42.6Keep these in Node-RED and hand off over MQTT or a webhook
Dashboard nodesNonen8n has the Form Trigger and Chat Trigger, not gauges and charts

The mental shift is from one msg to a list of items. A Node-RED Function node receives a message and returns a message. An n8n Code node receives every item from the previous node and returns an array of items, each with its data under json. Most rewrites are a few lines:

// Node-RED Function node
msg.payload = { celsius: (msg.payload.f - 32) * 5 / 9 };
return msg;

// n8n Code node, mode: Run Once for All Items
return $input.all().map(item => ({
  json: { celsius: (item.json.f - 32) * 5 / 9 },
}));

Both snippets follow each project's documented pattern; they were checked against the docs and not executed for this article.

Move one flow without breaking the device
  1. 1
    Pick a flow that is all HTTP, MQTT and timers

    Leave anything with TCP, serial or Modbus nodes where it is.

  2. 2
    List its nodes against the map

    Expected result: every node has an n8n equivalent, or you stop here.

  3. 3
    Create the credentials first

    Broker, API keys and OAuth logins, so nodes can select them as you build.

  4. 4
    Rebuild from the trigger outward

    Run each node as you add it and compare its output with the Debug sidebar in Node-RED.

  5. 5
    Run both side by side

    Point n8n at a test topic or sheet. Expected result: the same output for a full day.

  6. 6
    Publish, then disable the old flow

    Add an error workflow before you publish, and keep the exported Node-RED JSON as your rollback.

Where Node-RED still wins

A move to n8n is not an upgrade in every direction. These are the cases where staying put is the right call:

Keep the flow in Node-RED if any of these is true
  • It uses TCP, UDP, WebSocket, serial, Modbus, OPC UA or GPIO nodes
  • It must keep working when the internet connection drops
  • It handles several messages a second from one topic
  • An operator relies on a FlowFuse Dashboard page
  • It runs on a small board where you do not want to run Docker
  • You redistribute it, or your customers edit flows inside your product
  • It keeps fast-changing state in flow or global context

The licence item deserves a second look if you build for clients. Apache 2.0 places no limits on how Node-RED is used or resold. n8n's licence FAQ allows building and maintaining automations for clients on your own instance, and using n8n behind the scenes in your product, but not hosting it as a service where clients build workflows, white-labelling it, or letting end users configure workflows through your product.

Alternatives worth a look

  • Home Assistant automations. For a home or a small shop, its own rules may cover the device side without Node-RED at all.
  • Apache NiFi. When the job is moving large volumes of data between systems with back pressure and provenance, see n8n vs NiFi.
  • Power Automate. If the business tools are Microsoft 365, read n8n vs Power Automate before choosing the n8n half of the pair.
  • Other workflow tools. n8n alternatives compares twelve options, Node-RED included, on licence, hosting and price.

One more route opens up when the thing you are wiring together is something customers would log in to: a monitoring portal, an alert service, a small dashboard product. That is application work. Our AI SaaS Builder program has no Node-RED or n8n lessons; it covers the app itself, with Supabase for data, auth and realtime subscriptions, the Claude API for the AI feature, deployment on Vercel and Stripe billing.

n8n vs Node-RED: FAQ

Is Node-RED better than n8n?

Neither is better across the board. Node-RED is the stronger tool next to devices: its core palette has MQTT, TCP, UDP and WebSocket nodes, community packages add Modbus, OPC UA and serial, and it runs directly on a Raspberry Pi. n8n is the stronger tool for business automation: app nodes with stored credentials, an AI Agent node, saved execution history and error workflows. Choose by what the flow talks to.

Is n8n or Node-RED better for IoT?

Node-RED for the device side, n8n for what happens after. Node-RED reads sensors and PLCs, translates protocols and makes local decisions on an edge computer. n8n takes the events that matter, through its MQTT Trigger or a webhook, and turns them into tickets, spreadsheet rows, CRM notes and chat alerts. Most working IoT setups that reach business tools use both, joined by MQTT.

Can n8n replace Node-RED?

Only for flows built on HTTP, webhooks, schedules and MQTT. Those nodes exist on both sides and map one to one. Flows that use TCP, UDP, WebSocket, serial, Modbus or OPC UA have no core equivalent in n8n 2.42.6, and n8n has no dashboard nodes for gauges and charts. For those, keep Node-RED at the edge and pass events to n8n. Checked October 2026.

Is Node-RED free and open source?

Yes. Node-RED is released under the Apache 2.0 licence and is a project of the OpenJS Foundation, so you can run it, change it and ship it inside a product without a fee. n8n is source-available under its own Sustainable Use License: free to self-host for your own business, with limits on offering it to others as a service. Managed Node-RED from FlowFuse is priced by quote.

Does n8n support MQTT?

Yes. n8n has an MQTT Trigger node that starts a workflow when a message arrives on the topics you list, and an MQTT node that publishes a message to a topic with a chosen quality-of-service level and an optional retain flag. Both use an MQTT credential holding the protocol, host, port, client ID and SSL settings. Every message received starts one workflow execution.

Can I import a Node-RED flow into n8n?

No. Both tools save flows as JSON, but the formats are unrelated, and neither project documents an importer for the other. Plan to rebuild: map each Node-RED node to its n8n counterpart, move connection details into n8n credentials, and rewrite Function nodes as Code nodes that return items. Run the old flow and the new workflow side by side before you switch the device over.

All Access · all four programs · $99/mo

Flows wired up? Build the product they feed.

When device events and automations turn into something customers log in to, AI SaaS Builder, included in All Access, covers the app side: a Supabase database with auth and realtime subscriptions, the Claude API for the part that explains the data, Vercel to deploy and Stripe to bill. It does not teach Node-RED or n8n. The other three programs, weekly coaching and the community come with the same subscription.

Start All Access — $99/mo →30-day money-back guarantee
Free

Not sure which side of the line your flow sits on?

Post the trigger, the devices and the apps it has to reach in the free Discord, and compare notes with people running n8n and Node-RED together.