Yes, Cloudways can host a Next.js server-side-rendering app. The platform gives the team a managed VPS with a panel, SSH, a choice of cloud providers (DigitalOcean, Vultr, AWS, GCP, Azure), a stack installer, and PM2 for process management. The team SSHes in, installs Node, sets up PM2, configures Nginx, and runs the Next.js app. That is the “can it” answer. The “should you” answer is more interesting, and the difference is the operational work.
This post is the honest comparison. The first half is the Cloudways setup, what works, and the parts that do not. The second half is the comparison to the alternatives (Vercel, Render, Railway, the RunxBuild platform), with the cost, the operational work, and the questions to ask before signing.
The interesting thing about “can Cloudways host Next.js SSR” is that the question is not really about Cloudways. The question is “can a managed VPS host a Next.js SSR app, and is the operational work worth the cost savings?” The Cloudways answer is the same as the answer for any managed VPS: yes, with work. The “is it worth it” depends on the team’s operational capacity, the app’s scale, and what the team is paying for the PaaS alternative.
Table of contents
- The direct answer
- What Cloudways is, in one paragraph
- The Cloudways Next.js SSR setup, end to end
- The PM2 + Nginx + Node stack
- What works, what does not
- The cost: Cloudways vs the PaaS alternatives
- The operational work: what the team is signing up for
- When Cloudways is the right answer
- The opinion this post is built on
- FAQ
The direct answer
Yes, Cloudways can host a Next.js SSR app. The team SSHes into the managed VPS, installs Node 20+, sets up the Next.js build, configures PM2 to run the Node process, configures Nginx as a reverse proxy, sets up SSL with Let’s Encrypt, and deploys. The setup takes a few hours the first time, less the second time.
The “is it the right answer” depends on the team:
- Yes, if the team has operations experience, the app is large enough that the PaaS cost is significant, and the team wants full control of the server.
- No, if the team is small, the operations capacity is limited, or the cost savings are not material compared to the operational work.
The deeper answer is below. The short version: a managed VPS can host anything. The question is whether the team wants to operate the server, and most teams do not.
What Cloudways is, in one paragraph
Cloudways is a managed VPS service. The team picks a cloud provider (DigitalOcean, Vultr, AWS, GCP, Azure, Alibaba, Linode), a server size (1GB to 32GB+), and a stack (LAMP, LEMP, custom). Cloudways provisions the server, installs the OS and the stack, provides a web panel for management, and supports the team when things go wrong. The team has SSH access, root privileges, and full control of the server.
The “managed” in Cloudways is the server, the OS, the stack, the security patches, the backups, and the support. The “managed” is not the application. The team is responsible for the application code, the build, the deploy, the process supervision, the reverse proxy, the SSL, the database, and the monitoring.
The price is between a raw VPS ($5-10/month for 1GB) and a full PaaS ($25-100/month for 1GB). The price reflects the operational work the team is saving (the server provisioning, the OS patches, the backups) and the operational work the team is taking on (the application, the build, the deploy, the monitoring).
The Cloudways Next.js SSR setup, end to end
The setup the team runs:
-
Provision a server. Cloudways panel → New Server → pick the cloud provider, the size (at least 2GB for a Next.js SSR app), the location, the stack. Cloudways takes 5-10 minutes to provision.
-
SSH into the server. The team gets the SSH credentials from the Cloudways panel. SSH in.
-
Install Node 20+. Cloudways stacks ship with a specific Node version or no Node at all. The team installs Node 20 via nvm or the system’s package manager:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
nvm install 20
nvm use 20
- Pull the Next.js code. Clone the repo, or use git to pull from the team’s Git host:
git clone [email protected]:my-team/my-nextjs-app.git /var/www/my-app
cd /var/www/my-app
npm ci
npm run build
- Set up PM2. PM2 is the process manager that keeps the Node process running, restarts it on crash, and starts it on server boot. Cloudways stacks sometimes have PM2 preinstalled; if not:
npm install -g pm2
pm2 start npm --name my-app -- start
pm2 save
pm2 startup
The pm2 startup command outputs a systemd command that the team runs once to set up the boot script.
- Configure Nginx. Nginx is the reverse proxy that forwards incoming HTTPS traffic to the Node process. The team edits the Nginx config (
/etc/nginx/sites-available/my-appor similar):
server {
listen 80;
server_name my-app.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
-
Set up SSL. Let’s Encrypt via the Cloudways panel or
certbot. The Cloudways panel has a one-click Let’s Encrypt button. Thecertbotcommand-line tool is the alternative. -
Set up the deploy. The team’s deploy is a
git pull && npm ci && npm run build && pm2 restart my-appscript. The team can wire it up to a webhook (GitHub, GitLab, Bitbucket) that runs on push.
That is the working setup. The first time takes 2-4 hours, including the mistakes. The second time takes 30 minutes.
The PM2 + Nginx + Node stack
The PM2 + Nginx + Node stack is the standard managed-VPS setup for Node apps. Each piece has a job:
- Node is the runtime. It runs the Next.js app. It listens on port 3000 (or whatever the team picks).
- PM2 is the process manager. It starts the Node process, restarts it on crash, restarts it on server boot, and exposes logs and metrics.
- Nginx is the reverse proxy. It receives incoming HTTPS traffic, terminates SSL, forwards the traffic to the Node process, and serves static files directly (faster than Node can).
The stack works. The stack has been the standard for a decade. The stack is what the team gets when they choose a managed VPS over a PaaS.
The trade: the team is responsible for all three pieces. The Node process can crash; PM2 restarts it, but the team has to notice when it keeps crashing. The Nginx config can have a typo; the site goes down, the team has to find the typo. The SSL certificate can expire; the site is unreachable over HTTPS, the team has to renew.
For a typical Next.js SSR app with 1000 daily users, the operational work is a few hours per month. For a high-traffic app with multiple servers, the operational work is a few hours per week. The trade is real, and the team should weigh it.
What works, what does not
What works on Cloudways:
- Standard Next.js SSR apps. The build is
next build, the start isnext start, the process listens on port 3000, PM2 keeps it running, Nginx forwards traffic. The whole thing is 100 lines of config and 30 minutes of work. - Static generation (
next export). The team can pre-render the pages at build time and serve them as static files. Nginx serves them directly, no Node process needed. Cheaper, faster, simpler. - API routes. The Next.js API routes run in the same Node process as the SSR pages. PM2 + Nginx + Node handles them.
- Image optimization. Next.js image optimization runs in the Node process. The team configures
images.remotePatternsfor the external image domains. The optimization uses CPU and memory; the team should size the server accordingly. - Multiple environments. The team can provision separate servers for staging and production. Or the team can use Cloudways’s “application” feature to deploy multiple apps on the same server (with separate PM2 processes).
What does not work as smoothly:
- Serverless functions. Next.js API routes can be deployed as serverless functions (AWS Lambda, Vercel Functions). Cloudways does not have a serverless runtime. The team runs everything as a long-lived Node process.
- Edge runtime. Next.js’s experimental edge runtime is not available on Cloudways. The team runs everything on a single region.
- ISR (Incremental Static Regeneration). Next.js’s ISR revalidates pages on a schedule. Cloudways can support it (the team runs the revalidation in the Node process), but the experience is not as smooth as Vercel’s.
- Automatic scaling. Cloudways does not auto-scale. The team can manually scale up the server, or the team can set up multiple servers behind a load balancer. The cost is the team’s time.
- Preview deployments. Cloudways does not have a one-click preview deploy per pull request. The team has to set up a manual workflow.
The “does not work as smoothly” list is the list of features a PaaS like Vercel, Render, or the RunxBuild platform provides out of the box. The trade is the trade: operational work for cost savings.
The cost: Cloudways vs the PaaS alternatives
A 2GB server on Cloudways (DigitalOcean provider, no add-ons) is around $22/month. The same server on Render is $25/month. On Railway, the same resources are around $20/month. On Vercel, the equivalent is the Pro plan at $20/month plus usage.
The price difference is small. The cost difference is in the operational work. The team that runs Cloudways spends a few hours per month on server management, deploy scripts, SSL renewals, and monitoring. The team that runs a PaaS spends those hours on the product instead.
A useful comparison:
| Cloudways 2GB | Render 2GB | Vercel Pro | |
|---|---|---|---|
| Server cost | $22/mo | $25/mo | $20/mo + usage |
| SSL | Free (Let’s Encrypt) | Free | Free |
| Backups | $2/mo extra | Included | N/A |
| Monitoring | DIY | Included | Included |
| Auto-scaling | No | Yes | Yes |
| Operational work | Hours per month | Minutes per month | Minutes per month |
The Cloudways cost is lower by $3-5/month. The operational work is higher by hours per month. The trade is real, and the team should weigh it.
For a sanity check on the cost of the PaaS alternative, the hosting cost calculator gives a real number to compare against. The cheapest platform is rarely the one that respects the team’s time.
The operational work: what the team is signing up for
The operational work on Cloudways, itemized:
- Server provisioning and management. The team is responsible for the server’s lifecycle: provisioning, scaling, decommissioning. The Cloudways panel helps, but the team is in charge.
- OS updates and security patches. Cloudways applies major patches; the team is responsible for application-level updates (Node, PM2, Nginx configs).
- Backups. The team can configure Cloudways backups ($2/month for daily backups). The team is responsible for verifying the backups work and for testing the restore.
- SSL certificates. Let’s Encrypt via the panel or
certbot. The team is responsible for renewal, for the DNS validation, and for the Nginx config. - Database management. The team can install MySQL, MariaDB, or Postgres on the server (Cloudways stacks include them). The team is responsible for backups, for performance tuning, for security.
- Process supervision. PM2 keeps the Node process running. The team is responsible for monitoring PM2, for the deploy script, and for the logs.
- Reverse proxy. Nginx forwards traffic. The team is responsible for the Nginx config, for the static file serving, and for the rate limiting.
- Monitoring and alerting. The team sets up the monitoring (UptimeRobot, Datadog, Prometheus, or a custom solution). The team configures the alerts.
- Scaling. The team scales by upgrading the server or by adding servers. The team is responsible for the load balancer config, for the DNS, and for the session affinity.
For a small team, the operational work is a few hours per month. For a growing team, the work scales linearly with the number of services. For a team with multiple services, the work is a full-time job.
When Cloudways is the right answer
Cloudways is the right answer when:
- The team has operations experience. The team knows Nginx, PM2, the command line, and the standard managed-VPS stack. The team can debug a 502 by reading the Nginx error log and the PM2 status.
- The app is large enough that the cost matters. A 32GB server on Cloudways is $200/month. The same on Render is $250/month. The savings add up at scale.
- The team needs full control of the server. The team has a custom runtime requirement (a specific Node version, a custom system library, a custom build step) that a PaaS cannot satisfy.
- The app is a single region. The team does not need edge functions, multi-region deployment, or the modern serverless features.
- The team is comfortable with the operational work. The team is willing to spend a few hours per month on server management. The trade is the trade.
Cloudways is the wrong answer when:
- The team is small and operations is a tax. The team has fewer than three engineers, and the operational work would consume a meaningful fraction of one engineer’s time.
- The app is small and the cost savings are not material. A 1GB Next.js SSR app can run on Render for $7/month. The cost savings on Cloudways are $1-2/month. The operational work is not worth the savings.
- The team needs serverless features. The team needs edge functions, ISR, or auto-scaling. A PaaS is the right answer.
- The team needs preview deployments. A PaaS with one-click preview deploys is the right answer.
For most teams, the PaaS is the right answer. The cost savings on a managed VPS are real, but the operational work is the larger cost. The team that values its time picks the PaaS. The team that values its budget and has the operations capacity picks the managed VPS.
The opinion this post is built on
“Can Cloudways host Next.js SSR” is a yes/no question, and the yes is the easy part. The interesting question is “should you use Cloudways for Next.js SSR,” and the answer is “it depends on the team’s operations capacity and the app’s scale.”
The team with a strong operations background and a large app picks Cloudways. The cost savings are real, the operational work is something the team does anyway, and the full control is a feature. The team with a small team and a small app picks a PaaS. The cost savings are not worth the operational work, the team does not have the operations capacity, and the PaaS handles the parts the team would otherwise operate.
The PaaS is not a luxury. The PaaS is the boring answer for a team that wants to focus on the product. The Cloudways setup is the boring answer for a team that wants to focus on the infrastructure. The right answer depends on which focus the team has.
The RunxBuild platform is the PaaS answer. It handles the build, the deploy, the SSL, the scaling, the database, and the monitoring. The team writes the code, the platform handles the rest. For most teams, that is the right answer. For teams that need full control, the managed VPS is the right answer. The choice is the team’s, and the trade is the trade.
FAQ
Can Cloudways host a Next.js SSR app?
Yes. SSH in, install Node 20+, pull the code, build it, run it under PM2, put Nginx in front, and set up SSL. The setup takes a few hours the first time, less the second time. The trade is the operational work — the team is responsible for the server, the build, the deploy, the SSL, the database, and the monitoring.
What is the difference between Cloudways and Vercel for Next.js?
Vercel is the team that built Next.js. Vercel provides serverless functions, edge runtime, ISR, auto-scaling, and preview deployments out of the box. Cloudways is a managed VPS that gives the team full control of the server. Vercel is the right answer for teams that want the modern Next.js features. Cloudways is the right answer for teams that need full control and are willing to operate the server.
Is Cloudways cheaper than Render or Vercel?
Slightly. A 2GB server on Cloudways is around $22/month; the same on Render is $25/month. The cost savings are real but small. The bigger difference is the operational work — Cloudways requires the team to manage the server, the build, the deploy, and the SSL; the PaaS handles all of that.
Can Cloudways handle high-traffic Next.js apps?
Yes, with work. The team can provision larger servers, set up multiple servers behind a load balancer, configure the database for the load, and tune the Nginx and Node configs. The trade is the operational work. A PaaS like Render or the RunxBuild platform handles the scaling automatically; Cloudways requires the team to do it.
What is the Cloudways alternative for teams that want less operational work?
Render, Vercel, Railway, Fly.io, the RunxBuild platform, and any modern PaaS that handles Next.js SSR out of the box. The trade is cost (slightly higher than Cloudways) for operational simplicity (the team does not manage the server).
When should I pick Cloudways over a PaaS?
When the team has operations experience, the app is large enough that the cost matters, the team needs full control of the server, and the team is willing to spend time on server management. For most teams, the PaaS is the right answer. The cost savings on Cloudways are real, but the operational work is the larger cost.