SimAWSby ShahriarLabs
Search

Amazon Simple Notification Service

SNS

You need to broadcast notifications or event messages to multiple subscriber services and protocols simultaneously.

Regional serviceConcept reference · no service console simulation

Reach for it when

  • Publishing a "New Order" event that triggers inventory updates, email alerts, and shipping processes at the same time.
  • Sending SMS text alerts, push notifications, and email updates directly to end-user mobile devices.
  • Routing system alerts from CloudWatch alarms to both PagerDuty and a Slack webhook queue.

Do not reach for it when

  • Queueing messages for a single backend worker application to process sequentially — use SQS instead.
  • Routing messages based on complex state transitions or orchestrating sequential task workflows — use Step Functions instead.
  • Streaming raw log files or clickstream events that need persistent storage and replay capabilities — use Kinesis instead.

Alternatives, and how to choose

ServicePick it instead when
SQSChoose it when you need point-to-point message delivery where only one worker processes each message.
EventBridgeChoose it when you need advanced JSON payload filtering and routing to dozens of AWS targets.

How you pay

The model
Pay per million notifications published, with varying rates based on the delivery protocol (HTTP, SMS, SQS).
The line item that surprises people
Sending SMS messages through SNS can quickly run up high costs due to global telecom carrier termination fees.

What trips people up

  • Subscribed HTTP endpoints must perform a handshake confirmation step before they can receive any event payloads.
  • SNS does not buffer messages; if an HTTP subscriber is down, SNS retries for a limited time and then discards the message.
  • Standard SNS topics do not guarantee message delivery order; you must use FIFO topics if ordering is strictly required.

Verify the live service

This page is a concept reference. Cost models are qualitative; confirm the current offering, Region and pricing before deploying.