Why Firebase Hosting?
I've used Netlify, Vercel, GitHub Pages, and S3 + CloudFront. Firebase Hosting wins for static sites because it combines a generous free tier, Google's CDN (fast globally), automatic SSL, and dead-simple CLI deployment — all in one place with no credit card required to start.
Step-by-Step Setup
1. Install Firebase CLI
npm install -g firebase-tools
firebase login
2. Initialize Your Project
cd your-project
firebase init hosting
Select your project, set public as the hosting directory (or your root folder), and choose "No" for single-page app rewrites.
3. Deploy
firebase deploy --only hosting
That's it. Your site is live at your-project.web.app with HTTPS in under a minute.
GitHub Actions Auto-Deploy
Add this to .github/workflows/deploy.yml for push-to-deploy:
name: Deploy to Firebase
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- run: python scripts/build_blog_index.py
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: ${{ secrets.GITHUB_TOKEN }}
firebaseServiceAccount: ${{ secrets.FIREBASE_SERVICE_ACCOUNT }}
channelId: live
✅ What I Love
- Free tier: 10 GB storage, 360 MB/day transfer — more than enough for a content site
- Deploy previews for every PR (like Netlify, but free)
- Custom domain with auto SSL in minutes
- Zero cold starts — pure CDN, no serverless functions needed for static sites
❌ Limitations
- No built-in form handling — use FormSubmit or Netlify Forms instead
- Firebase console UI is cluttered with non-hosting features
Free Tier Limits
The Spark (free) plan gives you: 10 GB hosting storage, 360 MB/day transfer, custom domains, and SSL. For a content site getting under 50K monthly visits, you'll never hit these limits.
Firebase Hosting is my default for every static site project. The free tier is genuinely production-ready.
Final Verdict
If you're building a static site, blog, or portfolio, Firebase Hosting is hard to beat. Free, fast, and integrates perfectly with GitHub Actions. This very site is hosted on it.