[{"data":1,"prerenderedAt":242},["ShallowReactive",2],{"seo-verification":3,"blog-n8n-vs-node-red-which-self-hosted-automation-tool-to-choose-ma-en":6,"promo-bar-likely":241},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-n8n-vs-node-red-which-self-hosted-automation-tool-to-choose-ma-en",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":27,"featuredImage":29,"bgImage":30,"posterImage":31,"relatedSolution":32,"intro":35,"sections":36,"ctaTitle":179,"ctaBody":180,"ctaButton":181,"ctaUrl":182,"relatedPosts":183},93,"n8n-vs-node-red-which-self-hosted-automation-tool-to-choose",{"fr":12,"en":10,"ar":13,"es":14},"n8n-vs-node-red","n8n-مقابل-node-red-أي-أداة-أتمتة-مستضافة-ذاتيا-تختار","n8n-vs-node-red-que-automatizacion-self-hosted-elegir","n8n vs Node-RED: which self-hosted automation tool to choose?","n8n or Node-RED for your VPS workflows? Complete technical comparison: license, server resources, IoT vs SaaS use cases, migration steps, and Docker deployment.",9,3,false,"2026-03-19T00:00:00+00:00","2026-11-08T01:13:15+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":25},5,"Comparison","comparatif","bg-info\u002F10 text-info",[28],{"id":23,"name":24,"slug":25,"color":26,"icon":25},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fn8n-vs-node-red-poster.svg",{"categorySlug":33,"appSlug":34},"automation-workflows","n8n","n8n and Node-RED are two open-source automation engines you can fully self-host. The first targets business workflows and SaaS API integrations; the second, lower-level, excels at IoT and stream processing. Here is how to choose between them, understand their license differences, and deploy them cleanly on your VPS.",[37,41,51,90,93,115,118,121,147,150,168,177],{"type":38,"title":39,"body":40},"h2","Why self-host your automation engine","No-code\u002Flow-code automation platforms like Zapier or Make charge per execution and impose quotas that quickly escalate. By self-hosting n8n or Node-RED on a VPS, you eliminate these limits: quota-free executions, data that never leaves your server, and full access to community nodes. n8n is oriented toward application integrations (CRM, databases, AI, webhooks) with a visual workflow logic close to Make. Node-RED, born at IBM, processes JSON messages through an event-driven flow system, perfect for connecting MQTT sensors, transforming payloads, or orchestrating hardware. Both run in containers and are managed from a browser.",{"type":42,"title":43,"items":44},"ul","What you gain with self-hosting",[45,46,47,48,49,50],"Quota-free executions with no per-task billing, unlike SaaS automation platforms.","Data and secrets (API tokens, credentials) stored exclusively on your VPS.","Access to community nodes and integrations not available in capped cloud offerings.","Ability to run custom code (JavaScript, Python) and allow the external modules it needs yourself.","Direct integration with your internal services via the private Docker network.","Full control over versions and updates, with no imposed pricing changes.",{"type":52,"title":53,"headers":54,"rows":57},"comparison","n8n vs Node-RED comparison",[55,34,56],"Criterion","Node-RED",[58,62,66,70,74,78,82,86],[59,60,61],"Primary use case","SaaS API integration, business workflows","IoT, MQTT, real-time stream processing",[63,64,65],"Execution model","Triggered workflow (cron, webhook, trigger)","Event-driven message-oriented flows",[67,68,69],"Integration catalog","400+ ready-to-use application nodes","Community node library via palette manager",[71,72,73],"Custom code","Built-in Code nodes (JS\u002FPython)","Function nodes in JavaScript",[75,76,77],"Database","SQLite by default, PostgreSQL recommended","JSON files on disk",[79,80,81],"Recommended RAM","1 to 2 GB","512 MB to 1 GB",[83,84,85],"License","Sustainable Use License (fair-code)","Apache 2.0",[87,88,89],"Learning curve","Accessible, non-developer friendly","Flow logic, more technical",{"type":38,"title":91,"body":92},"Prerequisites by tool","For n8n, plan a VPS with 2 vCPU and 2 GB of RAM, and use PostgreSQL rather than SQLite once you exceed a few active workflows: SQLite locks the database under concurrent load. Allow 5 GB of disk for the database and execution binaries. Node-RED is leaner: 1 vCPU and 1 GB of RAM are enough, as its flows are stored in simple JSON files. In both cases: Docker Compose v2, a dedicated subdomain (`n8n.yourdomain.com` or `flows.yourdomain.com`) and an HTTPS reverse proxy are mandatory, as these interfaces expose secrets and must never run over plain HTTP.",{"type":94,"title":95,"steps":96},"steps","Deploy n8n (or Node-RED) on your VPS",[97,100,103,106,109,112],{"title":98,"body":99},"Provision Docker and the network","On the VPS, create a dedicated Docker network: `docker network create automation`. It will isolate n8n\u002FNode-RED from the database and the reverse proxy.",{"title":101,"body":102},"Start PostgreSQL for n8n","In the docker-compose file, add a `postgres:16` service with a persistent volume and credentials as environment variables. For Node-RED, skip this step: a `data:\u002Fdata` volume is enough.",{"title":104,"body":105},"Configure the application container","For n8n, use the `docker.n8n.io\u002Fn8nio\u002Fn8n` image with `N8N_HOST`, `WEBHOOK_URL=https:\u002F\u002Fn8n.yourdomain.com\u002F` and `DB_TYPE=postgresdb`. For Node-RED, the `nodered\u002Fnode-red:latest` image is sufficient. Publish the ports on the loopback interface only (`127.0.0.1:5678:5678`, `127.0.0.1:1880:1880`): only the reverse proxy should reach them.",{"title":107,"body":108},"Start and verify","Run `docker compose up -d`. n8n listens on `5678`, Node-RED on `1880`. Check logs with `docker compose logs -f` and confirm the database connection for n8n.",{"title":110,"body":111},"Secure behind a reverse proxy","Route traffic via Caddy or Traefik with an automatic Let's Encrypt certificate. Enable authentication: since version 1.0, n8n requires an owner account, to be created right at first launch (the old `N8N_BASIC_AUTH_ACTIVE` no longer exists); for Node-RED, uncomment `adminAuth` in `settings.js` with a password hashed by `node-red admin hash-pw`. Without this, the Node-RED editor is publicly accessible.",{"title":113,"body":114},"Set up backups","Schedule a daily `pg_dump` for the n8n database, or a simple snapshot of the `\u002Fdata` volume for Node-RED, deposited on external storage via `cron`.",{"type":116,"body":117},"tip","For n8n in production, enable `queue` mode with Redis and separate worker containers: the main process only orchestrates while workers execute nodes in parallel. This absorbs webhook spikes without blocking the editor. On the Node-RED side, expose through `functionGlobalContext` only the modules your Function nodes strictly need, and raise their errors with `node.error` to a Catch node so a poorly written flow does not go unnoticed.",{"type":38,"title":119,"body":120},"n8n vs Node-RED: license and business model differences","The license difference is the first criterion to evaluate before any enterprise deployment. Node-RED is published under the Apache 2.0 license: you can use, modify, and integrate it into a commercial product without restriction or royalty. n8n uses the Sustainable Use License (also called fair-code): personal use and internal projects are free, but if you integrate n8n into a product or service you commercialize, or offer it to third parties as a managed service, a paid Enterprise license is required. In practice, for a team automating its own internal processes, n8n remains free. For an agency delivering n8n access as a service to clients, the line is crossed. Node-RED has no ambiguity: Apache 2.0 covers all uses, including commercial, without restrictive clauses. This license choice reflects each project's business model: n8n is a commercial company monetizing its cloud version and Enterprise licenses; Node-RED is an OpenJS Foundation project, with no commercial entity behind it, maintained by its community of contributors.",{"type":52,"title":122,"headers":123,"rows":125},"Server resources compared",[124,34,56],"Resource",[126,130,132,136,139,143],[127,128,129],"Recommended vCPU","2 vCPU (minimum viable: 1)","1 vCPU (runs on Raspberry Pi)",[79,131,81],"2 GB (1 GB possible for small usage)",[133,134,135],"Disk (application)","Image of a few hundred MB + 2-5 GB PostgreSQL","Lighter image than n8n's + a few MB JSON",[75,137,138],"PostgreSQL (prod) or SQLite (dev)","JSON files on volume",[140,141,142],"Redis (optional)","Required for multi-worker queue mode","Not needed",[144,145,146],"Edge\u002Fembedded usage","Not suitable (too heavy)","Yes — Raspberry Pi, ESP32 via MQTT",{"type":38,"title":148,"body":149},"Use cases: n8n for SaaS integrations, Node-RED for IoT\u002Fedge","The positioning of each tool reflects its internal architecture. n8n shines on SaaS integrations: Slack ↔ Notion synchronization, sending Stripe data to a CRM, triggering GitHub workflows from a webhook, enriching leads via an AI API, or orchestrating data pipelines between Airtable and PostgreSQL. It embeds 400+ nodes with managed OAuth authentication, reusable sub-workflows, and a browsable execution history. Node-RED is designed for low-level stream processing and IoT: connecting to MQTT brokers to receive sensor data, transforming payloads to feed a time-series database like InfluxDB, home automation via Home Assistant, or routing hardware events in real time. Its flow logic (message in → processing → message out) directly mirrors the publish\u002Fsubscribe model. Both tools can coexist: Node-RED collects and normalizes hardware data, n8n consumes it via webhook to trigger SaaS actions (support ticket, email alert, CRM update). This combination is common in connected industrial projects.",{"type":94,"title":151,"steps":152},"Migrating from Node-RED to n8n (or vice versa)",[153,156,159,162,165],{"title":154,"body":155},"Export existing flows","In Node-RED, export flows via the hamburger menu → Export → Clipboard (JSON format). For n8n, download each workflow from its menu (⋯) → Download, or export them all from the command line with `n8n export:workflow --all --output=workflows.json`. These exports are the only portable artifacts between the two tools.",{"title":157,"body":158},"Identify equivalent nodes","List the nodes in use and find their equivalent in the other tool. Node-RED MQTT nodes correspond to n8n MQTT nodes; HTTP Request nodes are present on both sides. Specialized nodes (InfluxDB, OPC-UA) don't always have a direct equivalent in n8n: you'll need an HTTP Request node or custom code.",{"title":160,"body":161},"Recreate manually on staging","There is no automatic converter between the two formats. Recreate workflows manually on an isolated staging environment. Start with the simplest flows to validate logic before tackling critical ones.",{"title":163,"body":164},"Validate webhooks and triggers","n8n webhooks use a `\u002Fwebhook\u002F\u003Cuuid>` URL format different from Node-RED's (`\u002Fendpoint`). Update all systems calling these URLs. For MQTT triggers, verify that the client ID and topics are carried over identically.",{"title":166,"body":167},"Switch traffic and monitor","Once validated on staging, switch source webhooks one by one to the new tool. Keep the old one active in parallel for a few days to compare execution volumes. Tear down the old environment only after confirming parity.",{"type":42,"title":169,"items":170},"When to choose Node-RED over n8n",[171,172,173,174,175,176],"Your project involves connected hardware: MQTT sensors, GPIO, industrial protocols (OPC-UA, Modbus) — Node-RED is built for that.","You need a 100% open source license with no commercial use clause: Apache 2.0 has no restrictions.","Your resources are constrained: Raspberry Pi, 512 MB VPS, or edge device — Node-RED runs where n8n cannot.","Your stack already includes an MQTT broker (Mosquitto, EMQX) and a time-series database (InfluxDB): Node-RED integrates natively.","Your team is technical and comfortable with the flow\u002Fmessage model: Node-RED has a steeper learning curve but is more flexible for low-level flows.","You want to avoid dependency on a commercial entity: Node-RED is governed by the OpenJS Foundation, not by a commercial company.",{"type":116,"body":178},"You can deploy both n8n and Node-RED on the same VPS using Docker Compose, assigning them different ports, published on 127.0.0.1 only (5678 for n8n, 1880 for Node-RED) and isolating them on separate Docker networks. Create an `automation-n8n` network for n8n + PostgreSQL + Redis, and an `automation-nodered` network for Node-RED + Mosquitto. The reverse proxy (Caddy or Traefik) is the only contact point between the two subnets and the outside. This architecture lets you use Node-RED for IoT collection and n8n for SaaS actions on the same machine, without the two runtimes communicating directly — a Node-RED flow sends its data via HTTP webhook to n8n, maintaining loose coupling and simplifying future migration.","Automate without limits on your VPS","A ServOrbit Cloud VPS with pre-configured Docker lets you deploy n8n or Node-RED in minutes. PostgreSQL, backups, and scalable resources for your critical workflows.","Deploy my automation VPS","\u002Fvps-cloud",[184,203,223],{"id":185,"slug":186,"slugs":187,"title":191,"excerpt":192,"readTime":193,"views":18,"isPinned":19,"noindex":19,"publishedAt":194,"updatedAt":195,"category":196,"categories":197,"featuredImage":29,"bgImage":30,"posterImage":199,"relatedSolution":200},4,"coolify-vs-dokploy-which-tool-to-deploy-on-a-vps",{"fr":188,"en":186,"ar":189,"es":190},"coolify-vs-dokploy","coolify-مقابل-dokploy-أي-أداة-للنشر-على-vps","coolify-vs-dokploy-que-herramienta-elegir-para-su-vps","Coolify vs Dokploy: which tool to deploy on a VPS?","Coolify or Dokploy for your VPS? A binary comparison on idle RAM, license, templates and multi-node support to make the right choice once and for all.",7,"2026-06-07T00:00:00+00:00","2026-09-18T02:05:20+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":25},[198],{"id":23,"name":24,"slug":25,"color":26,"icon":25},"\u002Fblog\u002Fcovers\u002Fcoolify-vs-dokploy-poster.svg",{"categorySlug":201,"appSlug":202},"application-deployment-devops","coolify",{"id":204,"slug":205,"slugs":206,"title":210,"excerpt":211,"readTime":212,"views":213,"isPinned":19,"noindex":19,"publishedAt":214,"updatedAt":215,"category":216,"categories":217,"featuredImage":29,"bgImage":30,"posterImage":219,"relatedSolution":220},94,"supabase-vs-appwrite-which-self-hosted-backend-for-your-vps",{"fr":207,"en":205,"ar":208,"es":209},"supabase-vs-appwrite","supabase-مقابل-appwrite-أي-خلفية-مستضافة-ذاتيا-لـ-vps","supabase-vs-appwrite-que-backend-self-hosted-para-vps","Supabase vs Appwrite: Choosing Your Open-Source BaaS on a VPS","Full comparison of Supabase vs Appwrite: Docker deployment, RAM requirements, auth, serverless functions, realtime, and a decision guide for your VPS.",14,0,"2026-03-18T00:00:00+00:00","2026-11-08T01:13:16+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":25},[218],{"id":23,"name":24,"slug":25,"color":26,"icon":25},"\u002Fblog\u002Fcovers\u002Fsupabase-vs-appwrite-poster.svg",{"categorySlug":221,"appSlug":222},"databases","supabase",{"id":224,"slug":225,"slugs":226,"title":230,"excerpt":231,"readTime":185,"views":213,"isPinned":19,"noindex":19,"publishedAt":232,"updatedAt":233,"category":234,"categories":235,"featuredImage":29,"bgImage":30,"posterImage":237,"relatedSolution":238},95,"nextcloud-vs-owncloud-which-private-cloud-to-host",{"fr":227,"en":225,"ar":228,"es":229},"nextcloud-vs-owncloud","nextcloud-مقابل-owncloud-أي-سحابة-خاصة-تستضيف","nextcloud-vs-owncloud-que-nube-privada-alojar","Nextcloud vs ownCloud: which private cloud to host?","Nextcloud or ownCloud for your private cloud on a VPS? Comparison of features, performance, prerequisites and Docker deployment guide.","2026-03-17T00:00:00+00:00","2026-11-08T01:13:13+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":25},[236],{"id":23,"name":24,"slug":25,"color":26,"icon":25},"\u002Fblog\u002Fcovers\u002Fnextcloud-vs-owncloud-poster.svg",{"categorySlug":239,"appSlug":240},"self-hosting","nextcloud",true,1794270456632]