Architecture n8n

n8n 3.0 Beta: What Changes and When to Upgrade

n8n 3.0 beta shipped on Oct 27, 2026, with stable due in early December. npm installs and legacy nodes are gone. What changes and how to prepare.

The RoamerHost Team 10 min read
Ready to start? Managed n8n hosting, set up in 60 seconds Workflow automation platform. From avg. NT$499/mo (billed yearly). Subscribe to n8n
On this page

n8n released 3.0.0 as a beta on October 27, 2026, followed by a 3.0.1 bug-fix release the next day, and the stable release is planned for early December. Version 3.0 adds no big features. It gathers a year of breaking changes into one release: self-hosting no longer supports npm installs and moves to Docker, a batch of legacy nodes is removed, and several security defaults get stricter. Production instances don't need to jump today. Run the built-in Migration Report, fix what it flags and upgrade once the stable release lands. Two groups should act now, though: anyone still on 1.x (support ends December 31, 2026, and there is no direct path from 1.x to 3.0) and anyone running n8n from npm.

If you would rather not deal with Docker and every major upgrade yourself, managed n8n hosting leaves the server and containers to someone else while you work on your workflows. Below: the 3.0 timeline, the changes most likely to hit you, what to check before upgrading, and the options if you installed from npm.

Compiled from n8n's official blog, documentation and GitHub releases as of October 30, 2026. 3.0 is still in beta, so n8n's latest notes are the reference for the change list and the stable date.

The 3.0 timeline: beta, stable and support for older versions

n8n previewed the release on its community forum on October 23, published Introducing n8n 3.0 and shipped the 3.0.0 beta on October 27, and released 3.0.1 with bug fixes on October 28. The security bulletin published that same day lists 3.0.1 as the fixed version for the 3.0 line. The stable release is planned for early December; there is no exact date yet, and it will be announced in the release notes.

n8n follows semantic versioning, so breaking changes only arrive with a new major version, and a year of them has piled up in 3.0. n8n says it has shipped more than 45 releases since 2.0 came out in December 2025, roughly one a week. Once 3.0 is stable, new features go to 3.x only, and 2.x keeps receiving security and critical bug fixes for 12 months. Support for 1.x ends on December 31, 2026, and n8n states there is no direct upgrade from 1.x to 3.0: move to 2.x first. The changes apply to self-hosted Community, n8n Cloud and Enterprise alike.

Your versionOfficial statusWhat to do
1.x (the 1.123 series)Support ends December 31, 2026; no direct upgrade to 3.0Patch within 1.x to 1.123.89 or later (the October 28 bulletin), then schedule the move to 2.x
2.x stableSecurity and critical fixes for 12 months after 3.0 goes stableStay on the latest 2.x (the October 28 fixed version is 2.45.5), run the Migration Report and upgrade after stable ships
3.0 betaBeta since October 27, stable planned for early DecemberTry it in a test environment; if you already run it, move to 3.0.1 or later

The changes most likely to affect you

For self-hosters, the biggest one is installation. 3.0 no longer publishes a runnable n8n package to npm, so instances installed with npm or started with npx n8n cannot move to 3.0. Docker is the self-hosting path from here on; Kubernetes and Helm deployments are not affected. Whether you run npx on a laptop to experiment or npm on a server for real workflows, you need to switch to Docker before upgrading.

The second is legacy nodes. Function, Function Item, Item Lists, Cron, Interval, the legacy OpenAI node, version 1 of the AI Agent node and its older agent modes are gone, along with Read PDF, Workflow Trigger, OpenAI Assistant, OpenAI Model, the legacy HTTP Request Tool, Manual Chat Trigger and Chat Messages Retriever. Most have a direct replacement, listed one by one in the official breaking-changes page. Old Function code usually lives in the Code node today, and schedules once built on Cron or Interval are set up with the Schedule Trigger; see our n8n Schedule Trigger guide. The HTTP Request node itself stays; only the legacy HTTP Request Tool used by AI agents is removed.

The third group touches the Code node and workflow behavior. JavaScript in the Code node loses $evaluateExpression(), $getPairedItem is removed, and the Ask AI tab in the Code node is gone. The Execute Sub-workflow node drops the Local File and URL source options, and Edit Image node versions 1 and 1.1 are no longer supported. With Always Output Data turned on, nodes with several outputs such as If and Switch now add an empty item only when every output is empty. Before, each empty output got one, which could run branches that shouldn't run. Workflows that relied on the old behavior may take a different path after upgrading, so run them once to check. Older Gmail Trigger versions now run as version 1.4, and Chat Trigger WebSocket messages are now JSON frames, so update any custom front end that talks to a Chat Trigger.

The fourth covers security defaults and configuration. Encryption key rotation is on by default, the Slack API credential requires a signing secret, the default SSRF block list is larger and the Compression node's decompression limits are lower. On first start, 3.0 renames ~/.n8n/binaryData to ~/.n8n/storage and drops the N8N_MIGRATE_FS_STORAGE_PATH variable; if both folders exist, n8n stops with an error instead of guessing which one to use. In queue mode, manual executions always run on workers, and the OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS and N8N_DB_PING_TIMEOUT variables are removed. Chat Hub is off by default (you can turn it back on in 3.x), and Import from URL is gone from the editor.

Four things to do before you upgrade

  1. Read the Migration Report. n8n recommends opening Settings → Migration Report before upgrading. It lists which of your workflows and settings the 3.0 changes affect, and the v3.0 Migration tool page in the docs explains how it works. Replace legacy nodes and fix the flagged settings first.
  2. Back up your data and your encryption key. With SQLite, copy the whole .n8n folder; with PostgreSQL, take a database dump. Credentials are encrypted with N8N_ENCRYPTION_KEY, and if you never set one, n8n stored a key in the config file inside .n8n. Lose it while moving servers or rebuilding the container and none of your credentials will decrypt.
  3. Upgrade a copy first. Start a separate n8n from the same backup, upgrade it to 3.0 and run your key workflows by hand: webhooks arrive, schedules fire, AI Agent and Code node results match what you had. Deactivate schedules and anything that sends email or takes payments in the copy so nothing runs twice.
  4. Pin the version in production. Use an explicit version tag instead of latest so you know exactly what to roll back to. Rolling back a major version also means restoring the database and files from your pre-upgrade backup.

Running n8n from npm? Three ways forward

The first is moving to Docker and staying self-hosted. It is the only self-hosting method n8n supports from now on, and upgrades or rollbacks become a matter of changing the image tag. Bring your existing .n8n folder (the database plus the key in its config file) into the container, or export workflows and credentials with n8n export:workflow --all and n8n export:credentials --all and import them on the new setup. This suits people who are comfortable with Docker and happy to look after a server; for what that really costs, see Is self-hosting n8n actually cheaper?

The second is n8n Cloud. The 3.0 changes apply there too, so removed nodes still need replacing, but n8n runs the servers and the upgrades. Cloud bills by workflow executions, so do the math if your workflows run often; the differences are in n8n self-hosted vs n8n Cloud.

The third is a managed service. RoamerHost's managed n8n runs in its own Docker container on its own network, with no server, Docker or reverse proxy for you to touch, plus automatic updates, automatic backups, 24/7 monitoring and auto-restart, and no caps on executions or workflows. It is NT$5,988 billed yearly (avg. NT$499/mo, billed yearly) and is ready about 60 seconds after payment. You can export your workflows as JSON at any time, so you are not locked in; see managed n8n plans and pricing. If your n8n runs on Zeabur, which has announced it will shut down at the end of the year, read our Zeabur migration guide before you move.

When to upgrade

For production, waiting for the stable release in early December is the safer call. A beta exists to shake out problems, and 2.x keeps getting security fixes for 12 months after stable, so there is plenty of time. Use it for preparation that can't break anything: move to the latest 2.x, run the Migration Report, replace legacy nodes and switch npm installs to Docker. If you are on 1.x, move sooner. Once support ends at the end of the year you stop getting security fixes, and n8n currently publishes a security bulletin about every two weeks; October's three are covered in n8n's October security updates.

If your n8n runs business workflows every day and nobody on your team looks after servers, major upgrades and routine security patches will keep coming, and RoamerHost's managed n8n lets you spend that time on the workflows instead. If you know Docker and want full control of the environment, the four steps above are all you need.

FAQ

Q: Is n8n 3.0 a stable release yet?

Not yet. What shipped on October 27 is the 3.0.0 beta, followed by 3.0.1 on October 28. n8n plans the stable release for early December; check the official release notes for the exact date.

Q: I'm on 1.x. Can I go straight to 3.0?

No. n8n states there is no direct path from 1.x to 3.0. Move to 2.x, make sure your workflows run, then go to 3.0. Official 1.x support ends on December 31, 2026; before then, at least patch 1.x to 1.123.89 or later to close October's vulnerabilities.

Q: Will my workflows break on 3.0?

That depends on the nodes and settings you use. Workflows that use removed legacy nodes, call $evaluateExpression() in the Code node, or rely on the old Always Output Data behavior will fail or take a different path. The Migration Report lists the affected workflows; fix them, then upgrade, and run everything in a test environment first.

Q: Do I need to do anything on n8n Cloud?

It depends on your workflows. n8n says the 3.0 changes apply to Cloud as well, so removed nodes still need replacing. The servers and the upgrade itself are n8n's job, and when Cloud moves to 3.0 is up to n8n's own announcements.

Q: On Docker, is upgrading just a matter of changing the tag?

Within one release line, mostly yes, but 3.0 is a major version: on first start it renames the binaryData folder to storage, and several environment variables are gone. Back up the .n8n folder and the database, read the Migration Report, then switch the image to an explicit 3.x tag.

Sources

Further reading

Ready to get started with n8n?

60 seconds after you subscribe, n8n is installed for you — an isolated container with hard resource limits you never share, and HTTPS out of the box.

Billed yearly · no cancellation fee · cancel renewal anytime

Hi, I'm Roamer! Tap me anytime with a question and I'll help you out.

Roamer

Roamer - AI assistant

Online
Roamer

Ask me anything, anytime — I'll do my best to help!

Powered by RoamerHost AI