← Use cases

Ship a Postgres-Backed SaaS Under $5/Month in 2026

Database, auth, hosting, and a real domain for a serious side project. The cheap stack that actually works.

  1. STEP 1

    Use Supabase free tier for Postgres + Auth

    Supabase free gives 500 MB Postgres + 50,000 monthly active users on Auth + 5 GB egress. The two limits to plan around: the 7-day inactivity pause (mitigate with a daily cron ping), and the 5 GB egress (serve any media from Cloudflare R2 instead). Supabase is open source, so if you outgrow free tier, self-hosting on a $5 Hetzner VPS is a real escape hatch.

  2. STEP 2

    Host the frontend on Cloudflare Pages

    Unlimited bandwidth + 500 builds/month + 100K Worker requests/day for free is the most generous frontend tier you can get. SSR with Next.js works for static + RSC pages; for fully dynamic API routes, point your fetch calls at a separate Worker or at Supabase Edge Functions. The 500 builds/month is the constraint , deploy locally via cf-deploy.mjs or Direct Upload API to bypass it for high-frequency repos.

  3. STEP 3

    Add a $5 Hetzner box for any always-on workers

    If you need a long-running process , webhook receiver, background job runner, websocket server , none of the free tiers handle this well. Render free spins down. Supabase Edge Functions time out. Cloudflare Workers max out at 30 seconds. A $5 Hetzner CX22 (2 vCPU, 4 GB RAM) gives you an always-on Linux box for less than the cost of a coffee. Run your worker as a systemd service and forget about it.

  4. STEP 4

    Domain at $9/year, total monthly under $5

    Cloudflare Registrar sells .com domains at cost ($9.77/year as of 2026), no upsells, no renewal price hike. That is $0.81/month spread out. Add to that the optional $5 Hetzner box if you need it, and you have a real production stack , auth, database, hosting, custom domain, optional always-on worker , under $6/month total. The Vercel Pro alternative starts at $20.

Recommended tools