Expo logo
vs
Firebase FCM logo

Expo vs Firebase FCM

Compare Expo and Firebase FCM based on observed push API performance and features

Share:

Live performance comparison

Real-world performance data from notifications sent through Knock

Jan 22, 2026Apr 22, 2026
Updated daily
ProviderNotification volumeGrowthStatus page updates (30d)Status page updates (90d)
Expo
Expo
25M–100M
2nd of 5 26
Firebase FCM
Firebase FCM
25M–100M
1st of 5 02

From January 22nd to April 22nd, Knock routed 25M–100M notifications through Expo and 25M–100M through Firebase FCM. Expo reported 6 status page updates over the last 90 days, while Firebase FCM reported 2.

Response time

Response time measures how long each provider takes to accept a push API request from Knock, including connection overhead and any automatic retries. Lower values mean faster notification hand-off.

ProviderMedian (p50)p90p95p99
Expo
Expo
42ms
70ms93ms383ms
Firebase FCM
Firebase FCM
79ms
149ms171ms296ms

The chart above shows each provider's daily median response time (p50) from January 22nd to April 22nd. The top-line number is an average of these daily values: Expo averaged 42ms compared to 79ms for Firebase FCM. Expo's highest daily p50 was 46ms; Firebase FCM's was 97ms. Expo is 37ms faster at the median, which can add up at high volumes.

The 90th percentile (p90) captures the slowest 10% of requests, revealing how each provider handles moderate stress. Averaged across all days, Expo has a p90 of 70ms compared to 149ms for Firebase FCM. The highest daily p90 was 92ms for Expo and 158ms for Firebase FCM. Expo handles these slower requests 79ms faster, suggesting more consistent performance across the board.

The 99th percentile (p99) represents the long tail — the slowest 1% of requests. Averaged across all days, Expo reached 383ms at p99 while Firebase FCM reached 296ms. The highest daily p99 was 2076ms for Expo and 350ms for Firebase FCM, indicating the worst-case response time during spikes or provider-side congestion. Firebase FCM shows a tighter tail, which may matter for time-sensitive push notifications like real-time alerts where even rare delays can impact user experience.

Error rate

Error rate tracks the ratio of 5xx responses and timeouts to total push API requests. Knock automatically retries failed requests, so transient provider errors rarely affect end-user delivery.

ProviderAvg. daily error rateHighest daily ratePeak error dateZero-error daysDays above 0.01%
Expo
Expo
0.20%
10.72%Apr 94824
Firebase FCM
Firebase FCM
0.03%
0.08%Feb 31356

Averaged across the date range, Expo shows a 0.20% daily error rate compared to 0.03% for Firebase FCM. The highest single-day error rate was 10.72% for Expo This peak coincided with a major incident reported on Expo's status page (Some push notifications are not being delivered). and 0.08% for Firebase FCM. Firebase FCM demonstrates a lower error rate, indicating slightly more consistent availability during this period. Knock automatically retries failed requests to both providers, minimizing the impact of transient errors on end-user delivery.

About these metrics: Data represents notifications sent through Knock during the specified period. Response time measures time from Knock to provider acceptance. Error rate includes only provider 5xx responses and timeouts.

Recent Expo incidents

Recent status page incidents for Expo

Started Apr 13, 2026 — Resolved Apr 13, 2026

Push notification delivery has returned to normal.

Started Apr 9, 2026 — Resolved Apr 9, 2026

The Expo push notification service suffered from partial unavailability due to an outage of one of our cache servers. Specifically, we deployed a change that optimized our cache entries to be more compact to improve the performance and efficiency of our caches. However, the cache could not handle the load from evicting the old entries. Clearing the cache solved the problem.

Started Feb 24, 2026 — Resolved Feb 24, 2026

The issue with Android and iOS push notification delivery has been resolved. All queued notifications have been delivered.

Started Feb 18, 2026 — Resolved Feb 18, 2026

This incident has been resolved.

Started Feb 17, 2026 — Resolved Feb 21, 2026

Insights charts are receiving data once more as of February 20, 5:10pm PT.

Recent Firebase FCM incidents

Recent status page incidents for Firebase FCM

Started Mar 17, 2026 — Resolved Mar 17, 2026

404 error for Firebase Cloud Messaging clients sending to a URL with a trailing slash

Started Mar 8, 2026 — Resolved Mar 31, 2026

Minor Intermittent Latency Increases for Some Firebase Cloud Messaging Services

Pros and cons

Expo
Expo

Firebase FCM
Firebase FCM

Pros

  • Simplifies push for React Native apps by abstracting away APNS and FCM complexity
  • Free push notification delivery with no per-message costs
  • Receipt tracking enables monitoring delivery success and debugging failures
  • No need to manage platform-specific credentials or certificates

Pros

  • Free with no per-notification cost at any volume
  • Cross-platform support for Android, iOS, and web from a single API
  • Deep integration with the Firebase ecosystem including analytics and remote config
  • Topic and device group messaging simplifies broadcasting to subscriber segments

Cons

  • Tied to the Expo ecosystem; apps ejected from Expo lose some push conveniences
  • Platform features beyond push (EAS Build, EAS Update) require a paid plan at scale
  • Adds a proxy layer between your app and APNS/FCM, which can increase latency

Cons

  • iOS delivery still routes through APNS, adding a layer of indirection
  • Payload size limited to 4KB, which can be restrictive for rich content
  • Firebase console UI can be complex for teams not already using Firebase

Frequently asked questions

What is the difference between Expo and Firebase FCM?

Expo provides a unified push notification API for React Native apps, abstracting away APNS and FCM complexity with free delivery and built-in receipt tracking. Firebase Cloud Messaging (FCM) is Google's free, cross-platform push notification service supporting Android, iOS, and web with topic messaging and analytics integration. Expo is best suited for react native and expo apps, while Firebase FCM is geared toward cross-platform android and web notifications.

Which is cheaper, Expo or Firebase FCM?

Expo push notifications are free with no per-message cost. The broader Expo platform has paid tiers: Production at $99/month and Enterprise at $999/month, which include EAS Build, EAS Update, and priority support. Push notification delivery itself has no additional cost at any tier. Firebase Cloud Messaging is free to use with no per-notification cost. Google does not charge for message delivery regardless of volume. FCM is included in all Firebase plans, including the free Spark plan. The best value depends on your sending volume and target platforms.

Which is faster, Expo or Firebase FCM?

Based on real-world data from Knock, Expo has a median push API response time (p50) of 42ms compared to 79ms for Firebase FCM.

Which is more reliable, Expo or Firebase FCM?

From January 22nd to April 22nd, Expo showed an error rate of 0.20% while Firebase FCM showed 0.03%. Both rates are within acceptable thresholds for production push notification delivery, and Knock automatically retries failed requests to minimize the impact of transient errors.

Which is more popular, Expo or Firebase FCM?

On the Knock platform, Expo handled 25M–100M notifications from January 22nd to April 22nd compared to 25M–100M for Firebase FCM. Expo volume has remained stable, while Firebase FCM volume has remained stable.

Can I use both Expo and Firebase FCM together?

Yes. Knock enables you to integrate multiple push notification providers into a single notification workflow. You can use Expo and Firebase FCM side by side, route traffic between them, or migrate from one to the other without changing your application code.

What are the main pros and cons of Expo vs Firebase FCM?

Expo strengths include simplifies push for react native apps by abstracting away apns and fcm complexity and free push notification delivery with no per-message costs. Firebase FCM strengths include free with no per-notification cost at any volume and cross-platform support for android, ios, and web from a single api. On the other hand, Expo drawbacks include tied to the expo ecosystem; apps ejected from expo lose some push conveniences, while Firebase FCM drawbacks include ios delivery still routes through apns, adding a layer of indirection.

Use either provider with Knock

Knock enables you to integrate Expo, Firebase FCM, or any combination of push notification providers into a single notification workflow. Manage templates, orchestrate cross-channel delivery, and switch providers without changing your code.