Free (limited)
| Service | What it hosts | Free tier limits |
|---|---|---|
| Vercel | React frontend | Unlimited static deploys |
| Railway | Express API + BullMQ worker | 500 hrs/mo, $5 credit |
| MongoDB Atlas | MongoDB | 512MB, shared cluster (M0) |
| Upstash | Redis (BullMQ) | 10k commands/day |
| GitHub Actions | CI/CD | 2,000 min/mo |
Railway's free credits reset monthly. The API server will sleep after inactivity — acceptable for a portfolio project. If credits run dry, migrate to Render (free tier with sleep) or Fly.io (free allowance). MongoDB Atlas M0 clusters do not sleep and have no time limit — your data is always available.