Expo Push vs Firebase: I Switched After 10,000 Notifications Failed
Expo Push works until it doesn't. Here's the scale limit I hit and which one my 4 shipped apps use now.
Expo Push works until it doesn't. Here's the scale limit I hit and which one my 4 shipped apps use now.
Comparison
Expo Push worked fine until 10,000 notifications. Here's why I switched to FCM and what my 4 shipped apps use now.
Short answer: Expo Push
For most apps, ship with Expo Push. Switch to FCM (and APNs direct) when you are sending millions of pushes a day or you need advanced targeting Expo does not expose.
I shipped 4 apps in a month with Expo Push. I have also shipped a higher-volume product on raw FCM + APNs. Here is the honest trade.
https://exp.host/--/api/v2/push/send.Setup time for a first app: under 30 minutes. Real.
Setup time for a first app: 2β4 hours, plus the APNs cert setup for iOS.
google-services.json dance.Expo Push for everything up to roughly 100k daily active users. Switch to FCM direct only when I hit a reason β topic targeting, high-volume marketing, critical alerts.
Expo Push by default, with a clear swap path to FCM. The backend sender is an interface, not a hardcoded call. You swap the implementation without touching the rest of the app.
Yes, fully free. Expo runs the push service for you. No per-notification billing, no separate project setup, no Firebase dashboard. You send to an Expo push token and it delivers to iOS APNs and Android FCM under the hood.
Two scenarios. (1) High volume: beyond roughly 10K notifications in quick succession the Expo service rate-limits and retries become expensive. (2) Advanced features: if you need FCM-specific topic subscriptions, Firebase Analytics integration, or custom notification channels, you need the Firebase SDK directly.
Yes. Start with Expo Push on day one (10 minutes of setup), migrate the Android path to Firebase Cloud Messaging only when you actually hit scale. The Expo SDK has adapters so the migration is a surface-level change, not a rewrite.
No on iOS (uses APNs directly). Yes on Android (Firebase Cloud Messaging is Google's required delivery layer), but Expo handles the FCM project for you out of the box β you do not need your own Firebase project until you decide to switch to direct FCM.
Bolt.new vs Lovable: Which AI Builder Actually Ships? (2026)
Both Bolt.new and Lovable generate web apps fast. Neither ships native mobile apps. Honest comparison from someone who tested both and built an alternative.
Cursor vs Claude Code: Editor vs Terminal Agent (2026)
Cursor is an AI-first IDE. Claude Code is an agent that runs in your terminal. After 6 months on both, here is when each one wins for shipping real apps.
EAS Build vs Fastlane: I Ditched Fastlane After 2 Years. Here's Why.
Fastlane served me for 2 years. Then EAS cut my build time by 70% and killed credential hell. Real numbers inside.
Expo vs Bare React Native: Which Should You Choose? (2026)
Expo ~54 vs bare React Native in 2026. I shipped with both. Expo wins for 90% of apps now. Here's the honest breakdown from production experience.
Shippen gives you a proven stack. React Native + NestJS + Supabase + 17 AI agents. One-time purchase.