Learn how to update n8n to the latest version safely and easily with step-by-step instructions for smooth, reliable workflow automation.

Book a call with an Expert
Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.
To update n8n to the latest version, you normally just update the Docker image (if you're running n8n in Docker, which is what most production setups use) and then restart the container. If you're on n8n Cloud, you don’t update anything — it auto‑updates. If you're running a manual install (like npm on a VM), you upgrade the package. The key is: pull the newest version, restart cleanly, and make sure your environment variables and data folder stay intact.
If you run n8n in Docker, update by pulling the latest Docker image, stopping your current container, and starting a new one using the same volume that holds your data. On n8n Cloud, nothing to do — it updates automatically. For a non-Docker install, update via your package manager (for example: npm update -g n8n).
Below I’ll break down the update process depending on how you installed n8n. n8n is a Node.js app, but in production we almost always run it inside Docker because it’s safer, more consistent, and easier to upgrade. Every n8n installation has two important things:
When updating, you must replace the application but keep your data untouched. Docker makes this clean.
This is the safe, standard way most teams upgrade:
Here’s the exact sequence:
// Stop the container
docker stop n8n
// Remove the old container (your data is safe if it’s in a volume)
docker rm n8n
// Pull the newest n8n version
docker pull docker.n8n.io/n8nio/n8n:latest
// Restart using your existing environment variables + volume
docker run -d \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
docker.n8n.io/n8nio/n8n:latest
If you use Docker Compose (very common in production), update like this:
// Pull the newest version
docker compose pull
// Restart with the updated image
docker compose up -d
That’s it. Your workflows, credentials, and executions remain safe because they’re stored in your volume or database.
No update process exists on your side. n8n Cloud updates itself automatically and safely. You cannot and do not need to manually update.
This is mostly used for local development or hobby setups. To update:
// Update the global package
npm install -g n8n@latest
Then restart n8n:
n8n start
But again, npm installs are fragile for real workloads because they don’t handle restarts, logs, or environment consistency well. Use Docker for production.
That’s the real, production-grade way to update n8n safely and cleanly.
When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.