Node.js VPS HostingLong-Running Apps, No Platform Limits
Run Node.js as a long-lived process, with WebSockets, background workers and the Node version you choose. We install Node.js, PM2 and an NGINX reverse proxy with HTTPS, then hand you root SSH.
Full root & SSH NVMe storage Daily backups Anti-DDoS 99.9% uptime SLA 11 locations
-
Root and SSH access
Any Node version, native modules and system libraries.
-
Reserved vCores and RAM
No sleeping instances or cold starts: your process stays up.
-
NVMe storage
Fast npm installs, builds and local databases.
-
Dedicated IPv4 and IPv6
Open the ports your app needs, WebSockets included.
Why Host Node.js on a VPS
App platforms are quick to start but charge per instance and limit what a process may do. A VPS is a plain Linux server where Node runs for as long as you want.
-
Persistent processes and WebSockets
Socket.IO servers, live dashboards and chat stay connected, without platform idle timeouts or per-connection pricing.
-
Workers next to your API
Run BullMQ or Agenda workers, scheduled jobs and the API on one server, sharing one Redis and one database.
-
Your Node.js version, your native modules
Pin an LTS release per app with a version manager, and compile native modules such as sharp or bcrypt against the server's own libraries.
-
A flat monthly price
Reserved CPU and RAM for one price, however many processes, workers and services you run on them.
How a Node.js Server Is Laid Out
NGINX faces the internet. Your Node processes listen only on localhost, kept alive by a process manager.
Request from a browser or app (HTTPS)
-
Reverse proxy
NGINX
Terminates HTTPS, serves static assets and forwards requests and WebSocket upgrades to Node on a local port.
-
Process manager
PM2 or systemd
Starts your app on boot, restarts it after a crash and can run one process per vCore in cluster mode.
-
Application
Node.js LTS
Express, Fastify, NestJS, Koa or your own server, listening on 127.0.0.1.
-
Data
MongoDB, PostgreSQL, MySQL or Redis
On the same VPS or a separate one, reachable only from your app.
-
OS
Ubuntu LTS (or Debian, AlmaLinux, Rocky)
Firewall, Fail2ban and automatic security updates run here.
Worth knowing
- Run apps as a non-root user; only NGINX needs ports 80 and 443.
- PM2 cluster mode spreads a stateless HTTP app across all vCores without code changes.
- WebSockets need the Upgrade and Connection headers passed through by NGINX.
- pm2 reload restarts cluster processes one at a time, so deploys do not drop requests.
What Teams Run on a Node.js VPS
-
REST and GraphQL APIs
Express, Fastify or NestJS backends for web and mobile apps, with the database on the same server or next to it.
-
Real-time apps
Chat, notifications, live dashboards and multiplayer features over WebSockets or Socket.IO.
-
Server-rendered front ends
Next.js, Nuxt, Remix or Astro in server mode, running as a Node process behind NGINX.
-
Bots and integrations
Discord, Telegram and Slack bots, webhook receivers and sync jobs that must run around the clock.
-
Queues and background jobs
BullMQ or Agenda workers for email, image processing and imports, separate from the web process.
-
Headless CMS and internal tools
Strapi or Directus, admin panels and self-hosted Node apps such as n8n.
VPS Plans for Node.js
VPS-1 runs a small API or bot comfortably. Production apps with a database on the same server usually start on VPS-2. Upgrade in place when traffic grows.
VPS-1
Small websites, APIs, bots and development servers.
- 2 vCores
- 4 GB RAM
- 40 GB NVMe
- 500 Mbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-2
Production apps, WordPress and online stores.
- 4 vCores
- 8 GB RAM
- 75 GB NVMe
- 1 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-3
Busy stores, SaaS products and several projects.
- 6 vCores
- 12 GB RAM
- 100 GB NVMe
- 2 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-4
High-traffic apps, large databases and agencies.
- 8 vCores
- 24 GB RAM
- 200 GB NVMe
- 3 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
* Unlimited traffic in Europe and North America. In Mumbai, Singapore and Sydney a monthly allowance applies (VPS-1 500 GB, VPS-2/VPS-3 1 TB, VPS-4 3 TB), then speed is limited to 10 Mbps until the next month.
Which Plan for Your Node.js App
Each Node process runs JavaScript on one core. Scale vCores for cluster mode and RAM for the processes and anything beside them.
| Workload | Start with | Why |
|---|---|---|
| Bot, webhook receiver or small API | VPS-1 2 vCores · 4 GB RAM | A few processes and NGINX, with room to spare. |
| Production API with a database | VPS-2 4 vCores · 8 GB RAM | Cluster mode on 4 vCores plus room for the database. |
| Real-time app with many WebSocket connections | VPS-3 6 vCores · 12 GB RAM | More vCores and RAM for connections and workers. |
| Several apps or heavy workers | VPS-4 8 vCores · 24 GB RAM | 8 vCores and 24 GB RAM. |
A starting point, not a limit: every plan upgrades in place, keeping your data, IP address and configuration.
Node.js on an App Platform or a VPS?
Platforms trade control for convenience. A VPS trades a little setup for full control and a flat price.
| Feature | App platform (PaaS) | Node.js VPS |
|---|---|---|
| Pricing | Per instance, often plus add-ons | Flat monthly plan |
| Long-running processes and WebSockets | Allowed within platform limits | Unrestricted |
| Background workers | Extra instances | Same server |
| Node version and native modules | Platform build images | Anything you install |
| Deployment | git push built in | SSH or your own CI |
| Server administration | Handled by the provider | Yours, after our free setup |
| See Plans |
Your First Node.js Deploy
From a fresh handover to a running app behind NGINX in four steps.
-
Clone your app
Into the app user's home directory.
-
Install and build
Reproducible installs from your lockfile.
-
Start it under PM2
Cluster mode runs one process per vCore.
-
Ship updates without downtime
Pull, rebuild and reload process by process.
# 1. Clone your app
git clone [email protected]:you/api.git ~/api && cd ~/api
# 2. Install and build
npm ci
npm run build
# 3. Start it under PM2
pm2 start dist/server.js --name api -i max
pm2 save
# 4. Ship updates without downtime
git pull && npm ci && npm run build && pm2 reload api
Example commands; adjust names, paths and versions to your project. Deploying and maintaining your application is yours to do (or ask us for a quote).
Installed and Secured Before You Log In
The VPS is unmanaged: after handover the server is yours to run. Before that, our engineers do the first setup once, free, so you start from a hardened server with Node.js in place.
-
Choose a plan and location
Pick the resources you need and the datacentre closest to your users.
-
Tell us your Node.js setup
Versions, database and domain: at order or right after.
-
We install and secure it
Server hardened, Node.js installed and tested, HTTPS on your domain.
-
You take over with root
SSH access to a working server, ready for your code and data.
Your Node.js stack
- Node.js LTS, or the version you specify
- PM2 with startup on boot, or a systemd service if you prefer
- NGINX reverse proxy with WebSocket support
- HTTPS with Let's Encrypt on your domain
- MongoDB, PostgreSQL, MySQL or Redis if you choose one at order
Yours to run after handover
- Ongoing server administration
- Application maintenance and updates
- Debugging your code
- Migrating existing sites or data
Not included in the free setup, but we can quote for it. No control panel by default: CloudPanel, HestiaCP or Virtualmin on request at no cost; cPanel and Plesk need their own licence.
Platform Specs and Locations
The same KVM platform on every plan; only the CPU, RAM, storage and port speed change.
| Virtualisation | KVM with reserved vCores and RAM |
|---|---|
| Storage | NVMe SSD on every plan |
| Network | Dedicated IPv4 and IPv6, 500 Mbps to 3 Gbps per plan |
| Operating systems | Ubuntu 26.04, 24.04 and 22.04 LTS · Debian 13, 12 and 11 · AlmaLinux · Rocky Linux · Fedora · FreeBSD |
| Access | Full root over SSH, key-based login |
| Backups | Automatic daily backup of the previous 24 hours; snapshots and longer retention on request |
| Protection | Always-on anti-DDoS mitigation |
| Availability | 99.9% uptime SLA |
Secured before we hand it over
- Non-root sudo user created for daily work
- SSH key login, password login for root disabled
- Firewall (UFW) open only for the ports you use
- Fail2ban blocking repeated login attempts
- Automatic security updates enabled
- Free Let's Encrypt SSL on your domain
- Timezone, swap and hostname configured
Asia-Pacific
- Mumbai
- Singapore
- Sydney
Europe
- London
- Limburg
- Roubaix
- Gravelines
- Strasbourg
- Milan
- Warsaw
North America
- Beauharnois
Availability per location changes with demand; we confirm your location before setup. In Mumbai, Singapore and Sydney each plan includes a monthly traffic allowance (VPS-1 500 GB, VPS-2 and VPS-3 1 TB, VPS-4 3 TB); beyond it, speed is limited to 10 Mbps until the next month.
Who a Node.js VPS Suits
-
Teams leaving app platforms
Apps that have outgrown per-instance pricing, sleeping dynos or request timeouts and need a plain server.
-
Developers who deploy over SSH
Comfortable with git pull, npm ci and pm2 reload, or with pointing your own CI at the server.
-
Products with real-time features
Anything that keeps WebSocket connections open or runs workers beside the API.
Running Node.js Safely and Fast
Security
- Bind app ports to 127.0.0.1; only NGINX listens publicly.
- Keep secrets in an environment file readable only by the app user, never in the repository.
- Stay on a supported LTS line and run npm audit; end-of-life versions get no security fixes.
- Rate-limit login and API endpoints in NGINX or in the app.
Performance
- A single Node process runs JavaScript on one core: use cluster mode or several instances to use every vCore.
- Let NGINX serve static files and compress responses so Node only handles dynamic requests.
- Set the V8 heap limit (--max-old-space-size) to fit the plan, leaving room for the database.
- Move slow work such as email, image resizing and reports to a queue worker.
Questions Before You Deploy
Not covered here? Ask an engineer before you order.
Run Your Node.js App on Your Own Server
Pick a plan, tell us your Node version and database, and get a secured server with NGINX and PM2 ready for your code.