New FCM Quota System and Its Impact on Message Delivery

Prev Next

Google's migration to the new Firebase Cloud Messaging (FCM) HTTP v1 APIs has brought new quota limits. Google dynamically sets these limits for each application based on its internal assessment. The lowest threshold for standard applications is 600,000 requests per minute. Larger applications with higher traffic and volume may have higher limits, such as 1 million or 2 million requests per minute.

Due to these limits, it is essential to note that exceeding the quota in a given minute will trigger Insider One's retry systems. When the quota is reached, Firebase will signal that the limit has been hit, and our system will pause sending additional requests until the time limit resets. This process will continue until all queued messages are successfully delivered. While this might cause slight delays in message delivery, it is an expected part of the new Firebase structure.

Quota Management

Firebase manages each application's quota, and Insider One has no control over these limits. If an application frequently reaches its quota and experiences delays, the application owner can contact Firebase for a quota increase. This interaction is realized between the app owner and Firebase, and Insider One cannot intervene in this process.

To illustrate the impact of the new quota system, let’s go through a few examples:

Example 1Normal Application
Quota Limit600,000 requests per minute
Current Minute Usage590,000 requests
New Requests20,000 requests

In this example, the first 10,000 requests will be processed within the current minute, and the remaining 10,000 requests will trigger Insider One's retry system. Once the minute resets, these requests will be queued and sent.

Example 1High Traffic Application
Quota Limit1,000,000 requests per minute
Current Minute Usage980,000 requests
New Requests50,000 requests

Here, the first 20,000 requests will be processed, and the remaining 30,000 requests will be queued for the next minute.

Impact on Delivery Time

While the retry system ensures that all messages are eventually delivered, it is essential to understand that reaching the quota limit may cause slight delays in message delivery. This is a regular operation under the new FCM structure and should not be a cause for concern.

For further information, you can refer to the following resources:
Best practices when sending FCM messages at scale
Firebase support ticket page

See how to configure Firebase Cloud Messaging API.