Choosing the right tech stack is a huge decision that shapes the future of your project. Especially in the enterprise world, you’re often locking yourself in for years. That choice casts out to everything: how fast you can build, the quality of what you ship, what your roadmap looks like, and even how easy it is to keep a happy team.
Fact 1: no official support for serverless
If you follow the official rules self-hosting Next.js app, you have to run it as a standard server that stays on all the time. This works, but it becomes a pain for big sites where one server isn’t enough to handle the traffic.
Ideally, you want a system that scales automatically so it adds more power when lots of users arrive and shuts down when nobody is visiting to save money. This is really important for things like Server Components. Because the code on the user’s browser and the code on the server are so connected, older versions of your site can break if the old server code isn’t available anymore.
The best answer for this is „serverless.” Even the Next.js team agrees. Their docs say serverless is more reliable, handles growth better, and is cheaper because you only pay for what you use.
This is exactly how Vercel runs Next.js. Since Next.js is open source, you would expect that you could use this same serverless method on any cloud provider you want. Sadly, it’s not that easy.
Next.js actually used to have a „serverless” setting. But they removed it in October 2022 without explaining why, and they never added a replacement.
The React docs say you can put Next.js on „any serverless hosting,” but there are no official guides on how to do it.
This means if another hosting company wants to support Next.js the way it was meant to be run, they have to figure it out on their own by taking the code apart to see how it works.
Fact 2: pricing for Vercel grows exponentially
Since hosting it yourself is such a hassle, most teams just take the easy route and host on Vercel. To be honest, their platform feels like magic. It works perfectly right out of the box, and the developer experience is top-tier. It feels like the way Next.js is supposed to be used.
But that convenience has a steep price. While it’s cheap or free for small side projects, the costs ramp up fast once you have real users. Things like bandwidth and serverless function limits can surprise you. A bill that started small can suddenly turn into tens of thousands of dollars just because your site got popular.
A terrifying example of this is the recent „Jmail” incident. A developer built a site to make the released Epstein files searchable, designing it to look just like Gmail. The project went viral instantly, getting over 450 million hits.
The result wasn’t a crashed server; it was a bill for nearly $50,000. Because serverless scales infinitely to handle traffic, Vercel kept spinning up resources to serve the millions of curious visitors. In this specific case, the Vercel CEO stepped in and offered to pay the bill himself due to the public interest nature of the project. But most businesses don’t get that kind of bailout. If that same traffic had hit a standard $30/month dedicated server, the site might have just slowed down or crashed, but the developer wouldn’t have woken up to a bill the size of a luxury car.