SQS provides support for managing retries, and also makes it easier to horizontally scale services if there is high demand. AWS split these into two parts that are designed to work together. In google cloud’s PubSub they combine them, so a subscription has all the capabilities of SQS built in (retries, dead letter queues etc.) but you can’t push a message directly to a google cloud subscription, you have to push it to the corresponding topic. In AWS it’s pretty much always a good idea to create both the SNS and SQS parts.