We sent a message to about 300,000 devices and they were delivered almost instantly. Obviously, we do not have access to each of these devices, but judging by the selection of devices that subscribe to different topics at different times, everyone receives a message less than 10 seconds from the actual sending.
Single publishing to a device from the AWS console is amazingly fast. It appears on your device almost at the very moment you release the Publish button on the AWS console.
While the delay in the AWS delivery infrastructure is nominal and will undoubtedly approach zero as they improve and add to your infrastructure, the time between the user action that generates the message on your system and the actual AWS message in which It says that โsend this noticeโ is likely to be a major part of the delay in the end-to-end process. The limit for each topic is 10,000 devices, so if you send to a million users, you will have 100 (or more) topics to publish. The publication time of your software in all of these topics depends on how much parallelism you support in the operation. It takes about 50-100 ms to publish in a topic, so if you do this sequentially, it can take up to 10 seconds before you even post your message in the 100th topic.
UPDATE: As of August 19, 2014, the limit on the number of subscribers that you can get on one topic has been increased to 10,000,000: https://aws.amazon.com/blogs/aws/sns-large-topics-and -mpns-auth-mode /
source share