Using an SQS queue as an intermediary between SNS and Lambda has several benefits: In summary, using an SQS queue between SNS and Lambda gives you more control over message batching, rate limiting, retries, scaling and ordering. The trade-off is some additional latency and complexity. But for most use cases, the benefits outweigh the downsides. Sources