Lifetime - shaikhalvee/FCM GitHub Wiki

If the device is connected but in doze mode, a low priority message is stored by FCM until the device is out of doze mode. If the collapse key is not set, both the new and old messages are stored for future delivery (if collapse_key flag is set - the old message is discarded).

If the device is not connected to FCM, the message is stored until a connection is established.