Firebase Pricing: Free Tier is Generous, But Without Budget Alerts You Could Wake Up to a $5,000 Bill
Spark plan is free. Blaze plan is pay-as-you-go. The difference between a $5/mo and $5,000/mo bill is understanding which operations cost money and setting limits before launch.
Spark vs Blaze: The Two Firebase Plans
Firebase has exactly two plans: Spark (free) and Blaze (pay-as-you-go). There are no tiers, no per-seat charges, and no enterprise pricing. The Blaze plan includes all Spark free limits as a free allocation, so you only pay for usage above the free thresholds.
Spark Plan
Free
- Firestore: 1GB storage, 50K reads/day, 20K writes/day
- Authentication: 10K MAU
- Hosting: 10GB storage, 360MB/day transfer
- Cloud Storage: 5GB, 1GB/day downloads
- Cloud Functions: Not available
- Realtime Database: 1GB stored, 10GB/mo download
Blaze Plan
Pay-as-you-go
- Includes all Spark limits free
- Firestore: $0.06/100K reads, $0.18/100K writes
- Cloud Functions: $0.40/million invocations
- Cloud Storage: $0.026/GB stored
- Authentication: Free to 50K MAU, then $0.0055/MAU
- Hosting: $0.15/GB transfer
Blaze Plan Pricing for Each Service
| Service | Unit | Price |
|---|---|---|
| Firestore reads | Per 100K documents | $0.06 |
| Firestore writes | Per 100K documents | $0.18 |
| Firestore deletes | Per 100K documents | $0.02 |
| Firestore storage | Per GB/month | $0.18 |
| Realtime Database storage | Per GB/month | $5.00 |
| Realtime Database downloads | Per GB | $1.00 |
| Cloud Functions invocations | Per million | $0.40 |
| Cloud Storage stored | Per GB/month | $0.026 |
| Cloud Storage downloads | Per GB | $0.12 |
| Hosting transfer | Per GB | $0.15 |
| Authentication (above 50K MAU) | Per MAU | $0.0055 |
The Bill Shock Scenarios
Firebase pricing is usage-based, which means costs scale linearly with traffic. Without monitoring, these real-world scenarios can create unexpected bills:
Scenario 1: Social App with 10K Daily Active Users
Each user session triggers 50 Firestore reads (feed, profiles, messages). That is 500,000 reads per day or 15 million per month. At $0.06 per 100K reads, the Firestore read cost alone is $9/day or $270/month. Add writes for posts and messages, Cloud Functions for notifications, and Cloud Storage for images, and the total easily reaches $400 to $600/month.
Scenario 2: Chat App Storing Images
Users upload 100,000 photos at 2MB each. That is 200GB in Cloud Storage at $0.026/GB = $5.20/month for storage. But every time a user views an image, it counts as a download at $0.12/GB. If each photo is viewed 10 times on average, that is 2TB of downloads = $240/month. Image-heavy apps can see storage download costs dominate the bill.
Scenario 3: Viral Moment with 1M Visitors in One Day
A Next.js app using Cloud Functions for server-side rendering goes viral. One million unique visitors trigger 1 million Cloud Function invocations ($0.40) plus Firestore reads for content. If each visit reads 5 documents, that is 5 million reads ($3). Cloud Function compute time at 256MB for 200ms each adds another $30 to $80. Total for one day: $400 to $2,000 depending on page complexity. Without rate limiting, there is nothing to stop the charges.
Budget Alerts and Spending Protection
Firebase does not have hard spending caps, but you can set up protections through Google Cloud Billing and Firebase project settings. These will not automatically stop charges, but they give you early warning to take action.
1. Google Cloud Budget Alerts
Go to Google Cloud Console, navigate to Billing, then Budgets and Alerts. Create a budget for your Firebase project with thresholds at 50%, 80%, and 100% of your target spend. Set email notifications and optionally a Pub/Sub topic for programmatic alerts. This is the most important protection and takes 5 minutes to set up.
2. Firestore Daily Usage Quotas
In the Google Cloud Console, navigate to App Engine, then Settings, then Spending. Set daily spending limits for Firestore operations. When the limit is reached, Firestore operations return errors until the next day. This is a hard cap but will cause your app to return errors, so set it above your expected peak usage.
3. Cloud Functions Rate Limiting
Set maximum instances for each Cloud Function to limit concurrent executions. A function with maxInstances set to 10 cannot scale beyond 10 simultaneous executions, which caps costs during traffic spikes. Also set a minimum instances of 0 so functions scale to zero when idle.
Firebase vs Supabase Pricing
| Feature | Firebase | Supabase |
|---|---|---|
| Free tier | Generous per-service limits | 50K MAU, 500MB DB, 1GB storage |
| Paid pricing | Pay-as-you-go (variable) | Pro $25/mo (predictable) |
| Database | Firestore (NoSQL) | PostgreSQL (relational) |
| Cost at 10K DAU | ~$100-$600/mo | $25-$50/mo |
| Cost at 100K DAU | ~$1,000-$5,000/mo | $599/mo (Team) |
| Data portability | Vendor lock-in | Standard PostgreSQL |
For a comprehensive comparison, see our Firebase vs Supabase page.
Firebase vs AWS Amplify
AWS Amplify is the closest AWS equivalent to Firebase. Both offer authentication, databases, storage, hosting, and serverless functions. Amplify's pricing is similarly usage-based but with different rate structures. Amplify Hosting charges $0.01/GB served (compared to Firebase Hosting at $0.15/GB), making it significantly cheaper for hosting-heavy apps.
Amplify uses DynamoDB or AppSync for its data layer, which has different cost dynamics than Firestore. DynamoDB charges for read/write capacity units rather than individual operations, which can be more predictable but requires understanding provisioned vs on-demand capacity modes. For teams already on AWS, Amplify is a natural choice. For teams wanting the simplest developer experience, Firebase is easier to get started with.
Firebase Monthly Cost Estimator
Estimate your Blaze plan costs. Free tier allocations are automatically subtracted.
Estimated Monthly Cost
Total monthly estimate
$1.45
Alternative comparison