Where to Deploy Your App: A No-Nonsense Guide

Decision Frameworks

Vercel, Netlify, Railway, Fly.io, AWS — a practical comparison of deployment platforms based on what you're actually building and how much you want to manage.

7 min readPublished February 20, 2025

Match the platform to your architecture

If you're building a Next.js or React app, Vercel is the path of least resistance — it's built by the same team and handles SSR, ISR, and edge functions natively. If you need a full-stack platform with databases, queues, and cron jobs, Railway gives you a PaaS experience without vendor lock-in. If you need containers with geographic distribution, Fly.io places your app close to users worldwide. AWS/GCP are overkill for most startups but necessary when compliance or specific cloud services are required.

The free tier trap

Every deployment platform offers a free tier, and every one has catches. Vercel's free tier limits serverless function execution time. Netlify caps bandwidth at 100GB. Railway gives you $5/month in credits. The real cost isn't the hosting itself — it's the database, blob storage, and bandwidth charges that come with a real application. Model your expected usage before assuming "free" will last.

Platform lock-in is real but manageable

Vercel's edge functions, Netlify's serverless functions, and Cloudflare Workers all have slightly different APIs and constraints. The more platform-specific features you use, the harder it is to migrate. The mitigation strategy: use standard Node.js where possible, containerize your application for portability, and keep platform-specific code in thin adapter layers rather than spreading it throughout your codebase.

When you need a VPS instead

Sometimes the best deployment option is a $5-20/month VPS on Hetzner, DigitalOcean, or Linode. This makes sense when: your app needs persistent processes (WebSocket servers, background workers), you want full control over the runtime, or you need to run specific system-level dependencies. The tradeoff is that you own the operations — SSL, monitoring, deployments, and uptime.

The CI/CD non-negotiable

Regardless of where you deploy, automated deployments are non-negotiable. Every platform listed here supports Git-push deploys (connect your repo, push to main, deploy automatically). If you're still deploying via FTP or manual SSH, switching to any of these platforms will be a productivity leap. Preview deployments (automatic deploys of pull requests) are equally valuable and supported by Vercel, Netlify, and Railway.

Tools Mentioned

Related Comparisons

More Guides

Ready to decide?

Tell us about your project and constraints, and we'll recommend specific tools based on your situation.

Get a Personalized Recommendation