People assume shipping a website or an app means paying for servers. It does not. The free tiers from the major platforms are now generous enough to run a real, live product on, with a real database and a real domain, for zero dollars a month. Every app and site I run, including this one, lives on free infrastructure.
Hosting the front end: Vercel, Cloudflare, Netlify #
For websites and web apps, three platforms host you for free.
Cloudflare Pages is my default. Static sites and front ends deploy free, with a global CDN, free SSL, and no bandwidth bill worth worrying about. Cloudflare also gives you free DNS and can put your whole site behind its network for nothing.
Vercel has a free hobby tier that is excellent for Next.js and other frameworks, with automatic deploys straight from your Git repo. Netlify and GitHub Pages round it out, and GitHub Pages in particular hosts any static site free, straight from a repository.
Between these, hosting a personal site or a small app is a solved, free problem.
The database: MongoDB Atlas, Supabase, Neon #
The part people assume they have to pay for, a real database, is also free at the sizes most projects need.
MongoDB Atlas has a free forever M0 cluster. It is small, but it is a genuine cloud database and plenty for a side project or an early product.
Supabase gives you a free Postgres database with authentication, storage, and APIs on top. For a lot of apps this is the entire backend, free.
Neon offers a serverless Postgres free tier that scales to zero when nothing is using it, so you pay nothing while it sits idle.
The rest of the plumbing, also free #
Cloudflare Workers and R2 run serverless functions and object storage with free tiers, and R2 famously does not charge for egress, which is where storage bills usually explode. Auth comes free with Supabase, or from other providers with free tiers. Email, analytics, and error tracking almost all have a free tier big enough for a project that is not yet making money.
The one thing worth paying for: the domain #
The single cost I do pay is a domain name, and even that is cheap. A .com from Porkbun or Cloudflare runs about ten to fifteen dollars a year. That is the whole hosting budget for a real, live product: roughly a dollar a month for the name, and free for everything else.
Watch the catch #
Free tiers change, so two rules. Read the current limits before you commit, since platforms occasionally cut or remove a free plan and you do not want your database on the one that just did. And know that free tiers throttle or sleep under load, which is fine for a project with light traffic and something to fix later if you ever get real scale. By the time you have that problem, the app is earning enough to pay its own bills.
The move #
Front end on Cloudflare Pages or Vercel, deployed from Git. Database on MongoDB Atlas, Supabase, or Neon, whichever fits your stack. Serverless bits and storage on Cloudflare Workers and R2. Then buy one cheap domain and point it at the free host.
This is exactly how I shipped the apps I have built without a hosting bill. The barrier to putting something real on the internet is not money anymore. More of the build-it-for-cheap mindset is over in Frugal SF.