Why I’m hosting my SaaS app on an $8 VPS instead of Vercel or Cloudflare

In my quest to launch a SaaS application, I tried several different hosts, including two of the biggest players in Next.js websites. However, I opted for an unlikely alternative that costs less and offers more: a VPS. Here’s how I ditched Vercel and Cloudflare Pages for my own VPS, and why I think you should too.
Cloudflare Pages and Vercel offer generous free plans to get started
Free is my favorite number
I have a lot of business ideas. I’ve “started” many businesses in my life and I’m always trying to find a free way to test the waters before spending money.
With a new SaaS application I’m working on, I wanted to host it on a scalable platform that would allow me to start for free and progress from there. I started my journey on Cloudflare Pages because I already use Cloudflare and it was a simple deployment. Vercel, who created Next.js (the framework I use), also has a free tier that I briefly tried.
Both free plans worked pretty well. I could use my own custom domain, manage automated deployments with GitHub, and page load times were pretty fast. I really have no complaints about either company’s free plan, and I could have easily launched my SaaS with them, if it weren’t for a few limitations.
These free plans eventually run their course
Unfortunately, nothing free lasts forever
Cloudflare Pages actually offers a pretty generous free tier. You get 100,000 requests per day for free, and that’s the main limitation. At least queries are the main limitation aside from package size. With the free Cloudflare Pages plan, you can only deploy up to a 3MB website package. A paid upgrade ($5 per month) increases your requests up to 10 million per month (with a cost of $0.30 per million thereafter) and a 10MB plan.
The problem is that my SaaS website has enough dependencies to quickly exceed the 3MB limit, and even the 10MB upgrade. Once those limits were reached, I had no choice but to find another service, which is what pushed me to Vercel.
Vercel’s free plan is much more generous than Cloudflare Pages, and it’s also easier to use because no workarounds are required to use Next.js. The Hobby plan is free forever, offers up to 1 million queries per month, built-in image optimization and much more. The main limitation that kept me away from Vercel however was that you cannot use the hobby plan for any form of commercial use.
Here’s why GitHub Pages are the best option for (most) free websites
There are some drawbacks, but it’s still pretty good.
My initial goal with my SaaS was to use a free host until I had real paying users, SO upgrade. Simply installing the Stripe SDK into my web app was likely to trigger the algorithm and tell Vercel that I wasn’t just using this site for fun, and it would immediately push me towards the $20 per month plan.
Vercel is also known for adding small fees and other items to the plan, meaning the $20 per month plan could easily skyrocket well beyond that. This comes from the fact that Vercel’s billing is entirely based on usage with no real way to limit it. Whether it’s real traffic, bots, or a bug, if your site needs more resources, Vercel scales and charges for it.
A cheap VPS offers more features and costs less
I was surprised how cheap VPS was
The route I ultimately chose for production, at least for now, is to use a cheap VPS instead of Cloudflare Pages or Vercel. OVH offers fairly inexpensive VPS options. I opted for VPS-2, which includes 6 vCores, 12 GB RAM, 100 GB NVMe storage, daily backups, 1 Gbps bandwidth, and unlimited traffic, all for $6.75. I ended up paying $7.70 per month for my VPS because I chose to go monthly instead of yearly with OVH, but it’s still much cheaper than the other options.
My Next.js web app is unlikely to need 100 GB of storage, 12 GB of RAM, or 6 vCores, but it’s there if I need it. Such specifications from Vercel would cost approximately over $1,000 per month. Railway (another service I’m checking out, but not sold yet), would cost $305 per month for the same level of specs that the OVH VPS-2 gives me.
The advantage of OVH’s VPS system is that I can very easily scale without going bankrupt. VPS-6, OVH’s highest-tier VPS before moving to dedicated servers, comes with 24 vCores, 96 GB of RAM, 400 GB of NVMe SSD storage, and 3 Gbps bandwidth for around $45 per month.
By upgrading from VPS-6 to OVH, you can get a dedicated server with an AMD EPYC 4244P, 32 GB of DDR5, two 960 GB NVMe SSDs, unlimited public bandwidth of 3 Gb/s and unmetered private bandwidth of 25 Gb/s, all for $102 per month. By spending $149 per month, you get a dedicated server with the AMD EPYC 4344P, 64 GB of DDR5, and the same storage and bandwidth as the other dedicated server.
Basically, the only reason to go with a non-VPS option like Vercel is if you need to mitigate potential downtime by eliminating a single point of failure because your VPS runs on a specific server. If you need to make server updates, or if, for whatever reason, the OVH datacenter where your VPS is located encounters problems, your site goes down.
All this to say, I spend less than $8 per month for a VPS with fantastic specs, and I can easily scale up to running my own dedicated server for less than the cost of Vercel or Railway.
Coolify is the Vercel replacement I didn’t know I needed
I was worried about deployments until I found Coolify
One of the things I liked about Vercel, and one of the reasons I really didn’t want to leave it, was the simplicity of deployments. To deploy my site, I didn’t need to FTP or SCP the files to a server then build or compile, I simply pushed to GitHub and the site started building on Vercel. I wanted to be able to do this with my VPS, but I didn’t know how to do it, until I found Coolify.
The simplest way to describe Coolify is a complete backend dashboard for your server to manage Docker containers, deployments and much more. I configured Coolify on my VPS to be able to deploy via GitHub CI/CD, which means that when I make a change to GitHub, it triggers the site to be created and deployed to the VPS, just like Vercel did.
However, unlike Vercel, I can also run Docker containers from Coolify. I was able to create multiple containers for my SaaS that I should have hosted elsewhere, such as Uptime Kuma, Umami Analytics, helpdesk software, etc. Given the specifications of the VPS, I have more than enough resources to run the website. And these containers without having to worry about maximizing anything.
Ultimately, a VPS for less than $8 per month gives me more specs than I could ever want. If or when the time comes to expand it, I’ll simply move to the next VPS tier and keep climbing until I finally have what is essentially a co-located dedicated server running the application – if that ever happens.


