Dung (Donny) Nguyen

Senior Software Engineer

Amazon Simple Notification Service (AWS SNS)

Amazon Simple Notification Service (AWS SNS) is a fully managed, highly scalable pub/sub messaging service from AWS. It enables applications to send messages (notifications) instantly to multiple recipients or systems in a decoupled way.

It supports both:

Core Concept: Topics + Publish/Subscribe Model

  1. You create a topic (a logical communication channel).
  2. Publishers send messages to that topic (one publish → many deliveries).
  3. Subscribers register interest in the topic by subscribing their endpoints.
  4. When a message is published, SNS automatically pushes (fan-out) copies to all valid subscribers.

This pattern is ideal for decoupling producers from consumers.

Supported Subscription Protocols / Endpoint Types

Two Types of Topics (2025–2026 era)

Feature Standard Topics FIFO Topics
Ordering Best-effort (usually preserved) Strictly first-in-first-out
Exactly-once delivery At-least-once (possible duplicates) Exactly-once (with deduplication)
Throughput Virtually unlimited Lower (but still high – ~300 msg/s)
Use case Most applications, alerts, fan-out Order-sensitive workflows, transactions
Message group ID Not required Required for ordering & deduplication

Key Features

Common Use Cases

Pricing (Pay-as-you-go, no upfront fees)

AWS offers a generous free tier:

Beyond free tier (very approximate US pricing in 2025–2026):

FIFO topics are slightly more expensive than Standard.

SNS vs Similar AWS Services (Quick Comparison)

Service Best for Delivery style Ordering guarantee Typical pairing
SNS Fan-out, notifications, push Push (immediate) Best-effort / FIFO SNS → Lambda / SQS
SQS Message queue, decoupling, buffering Pull Best-effort / FIFO SNS → SQS (fan-out queue)
EventBridge Event bus, SaaS integrations, schema Push + advanced routing Varies Complex event routing

In short: SNS is the “push fan-out” service — great whenever you want to broadcast one message to many destinations quickly.

If you’re just starting, the AWS console makes creating a topic and subscribing an email or Lambda function very straightforward — you can test it end-to-end in under 5 minutes.