Summary:
- AWS SNS provides two distinct topic types. Standard topics optimize for maximum throughput, while FIFO topics provide strict ordering and support exactly-once delivery. The new 2025 high-throughput FIFO mode bridges the gap between reliability and scale.
- Understanding region-specific quotas, message delivery guarantees, retry policies, and dead-letter queue configurations is essential for building resilient pub/sub architectures that survive real-world failure scenarios.
- This guide covers advanced patterns including cross-region disaster recovery, archive and replay policies, cost optimization strategies, and monitoring best practices that separate production-grade implementations from tutorial-level deployments.
When a single misconfigured retry policy causes your payment notification system to hammer a downstream service with 50,000 duplicate messages in under a minute, you quickly learn that Amazon SNS is far more than a simple message broadcaster. AWS SNS sits at the heart of event-driven architectures across millions of production systems. Yet most engineering teams operate with only surface-level understanding of its delivery semantics, throughput boundaries, and failure modes.
This deep dive moves beyond introductory tutorials to examine the architectural decisions, regional constraints, and operational patterns that distinguish robust SNS implementations from fragile ones. Whether you are preparing for an interview or architecting a mission-critical notification pipeline, the following sections will equip you with the technical depth required to make informed trade-offs.
The following diagram illustrates the core components of an SNS-based pub/sub architecture and how messages flow from publishers through topics to various subscriber endpoints.
Standard versus FIFO topics in AWS SNS
Amazon SNS offers two fundamentally different topic types, each optimized for distinct use cases. Standard topics prioritize maximum throughput and best-effort ordering, making them ideal for high-volume scenarios like application alerts, fan-out patterns, and broadcast notifications where occasional message reordering or duplication is acceptable. FIFO topics provide strict ordering and can achieve exactly-once delivery when used with SQS FIFO queues and proper deduplication configuration. This proves essential for financial transactions, inventory updates, and any workflow where processing sequence directly impacts correctness.
The architectural distinction extends beyond delivery guarantees into how AWS manages internal message routing. Standard topics leverage a distributed architecture that can sustain nearly unlimited publish throughput. FIFO topics historically imposed a 300 messages per second limit to maintain ordering guarantees. This constraint forced architects to choose between reliability and scale until the January 2025 introduction of high-throughput FIFO mode fundamentally changed the calculus.
Key differentiators for topic selection
Selecting between standard and FIFO topics requires evaluating several technical dimensions beyond the obvious ordering guarantees. Consider the following decision factors:
- Deduplication requirements: FIFO topics provide content-based or MessageDeduplicationId-based deduplication within a 5-minute window, eliminating duplicate processing without application-level logic.
- Subscriber compatibility: FIFO topics integrate with SQS queues as subscribers. Standard topics can fan out to Lambda, HTTP endpoints, email, SMS, and mobile push.
- Regional availability: FIFO topics are available in fewer regions than standard topics, which impacts multi-region architecture decisions.
- Cost structure: FIFO topics cost approximately $0.50 per million requests compared to $0.50 for standard. However, the reduced subscriber flexibility may require additional architectural components.
Understanding these trade-offs prepares you for the throughput enhancements covered in the next section, where high-throughput FIFO mode addresses the historical scalability limitations.
High-throughput FIFO mode and the 2025 enhancements
The January 2025 release of high-throughput mode for SNS FIFO topics represents a significant architectural evolution. This feature increases the publish throughput from 300 messages per second to 3,000 messages per second per message group. You can scale further by distributing messages across multiple message groups. The enhancement addresses the primary objection enterprises had against FIFO adoption, which was the inability to handle burst traffic without complex sharding strategies.
Enabling high-throughput mode requires setting the FifoThroughputScope attribute at the topic level. When configured to MessageGroup, the throughput limit applies per MessageGroupId rather than per topic. This enables horizontal scaling through intelligent message group design. This architectural pattern mirrors database sharding strategies where you partition workloads across logical boundaries to achieve aggregate throughput beyond single-resource limits.
Implementation with infrastructure as code
Deploying high-throughput FIFO topics through infrastructure as code ensures reproducibility and version control. The following Terraform configuration demonstrates enabling high-throughput mode with content-based deduplication:
For teams using CloudFormation, the equivalent configuration leverages the FifoThroughputScope property introduced in the 2025 schema updates. Both approaches integrate with existing CI/CD pipelines and enable GitOps workflows for topic management. With throughput constraints addressed, the next consideration becomes understanding the hard limits AWS imposes across different regions.
Quotas, limits, and regional considerations
AWS SNS quotas vary by region and topic type, creating constraints that architects must account for during capacity planning. The following table consolidates the critical limits from the AWS General Reference documentation, including the 2025 high-throughput additions not covered in most competitor guides:
| Quota type | Standard topics | FIFO topics (default) | FIFO topics (high-throughput) |
|---|---|---|---|
| Publish requests per second | Soft limit: 30,000 (varies by region) | 300 per topic | upto ~3,000 per message group |
| Topics per account | 100,000 | 1,000 | 1,000 |
| Subscriptions per topic | 12,500,000 | 100 | 100 |
| Message size | 256 KB | 256 KB | 256 KB |
| Batch size (PublishBatchRequest) | 10 messages | 10 messages | 10 messages |
| Filter policies per topic | 200 | 100 | 100 |
Regional availability and quota variations
Not all AWS regions support identical SNS features or quotas. US East (N. Virginia), US West (Oregon), and EU (Ireland) typically receive new features first and maintain the highest default quotas. Newer regions like Middle East (Bahrain) or Africa (Cape Town) may have lower soft limits and delayed feature availability. Before architecting multi-region deployments, verify feature parity through the AWS Regional Services List and request quota increases proactively for production workloads.
The following diagram shows how quota boundaries interact with message flow and where throttling occurs in the publish path.
With quota boundaries established, the next critical area involves understanding how SNS handles message delivery failures and the retry mechanisms that determine eventual consistency.
Message delivery guarantees and retry policies
SNS delivery semantics differ substantially based on subscriber endpoint type, creating nuanced reliability characteristics that impact application design. For SQS and Lambda subscribers, SNS provides at-least-once delivery with automatic retries managed entirely by AWS infrastructure. HTTP/HTTPS endpoints receive a configurable retry policy with exponential backoff. Email and SMS endpoints operate on best-effort delivery without application-visible retry mechanisms.
SNS applies a multi-phase retry policy for HTTP/S endpoints consisting of immediate, pre-backoff, backoff, and post-backoff phases. The exact number of retries and delay intervals are configurable via delivery policies and can vary based on endpoint requirements. The phases break down as follows:
- Immediate phase: 3 retries with no delay between attempts, targeting transient network failures.
- Pre-backoff phase: 2 retries at 1-second intervals, allowing brief endpoint recovery.
- Backoff phase: 10 retries with exponential backoff from 1 to 20 seconds, accommodating longer outages.
- Post-backoff phase: 35 retries at a fixed interval before final failure.
Dead-letter queue configuration
When all retry attempts exhaust without successful delivery, messages route to a configured dead-letter queue (DLQ) for later analysis and reprocessing. DLQ configuration occurs at the subscription level, not the topic level, enabling different failure handling strategies per subscriber. The DLQ must be an SQS queue in the same AWS account and region as the SNS subscription.
Effective DLQ strategies include setting up CloudWatch alarms on queue depth, implementing automated replay mechanisms for transient failures, and maintaining separate DLQs per subscription to isolate failure domains. The IAM resource-based policy on the DLQ must grant sqs:SendMessage permission to the SNS service principal. Understanding delivery mechanics leads naturally to broader resilience patterns for surviving regional failures.
Resilience patterns and disaster recovery
SNS provides inherent durability by storing messages across multiple Availability Zones within a region. However, regional failures require explicit architectural planning. Cross-region disaster recovery for SNS-based systems typically follows one of three patterns, each with distinct trade-offs in complexity, cost, and recovery time objectives.
The active-passive pattern maintains a standby topic in a secondary region with subscriptions pre-configured but disabled. During failover, you update publisher endpoints and enable secondary subscriptions. This approach minimizes steady-state cost but introduces recovery time measured in minutes. The active-active pattern publishes messages to topics in multiple regions simultaneously, with subscribers in each region processing independently. This eliminates recovery time but requires idempotent subscribers and increases messaging costs proportionally.
Archive and replay policies
The 2024 introduction of archive and replay capabilities for SNS topics addresses a long-standing gap in event sourcing architectures. By configuring an ArchivePolicy on a topic, messages are retained for a specified duration (up to 365 days), enabling replay to new or existing subscriptions. The ReplayPolicy specifies the time window for replay operations, allowing subscribers to reprocess historical messages after deployment changes or failure recovery.
These resilience mechanisms add operational complexity and cost, making it essential to understand the pricing model before committing to specific patterns.
Cost optimization and pricing analysis
SNS pricing follows a request-based model with additional charges for specific delivery types. The base cost of $0.50 per million publish requests, while FIFO topics use a different pricing model that includes publish requests, subscription deliveries, and payload-based charges. However, total cost varies dramatically based on subscriber composition. HTTP/HTTPS deliveries incur $0.60 per million, while SQS deliveries cost $0.00 (included in SQS pricing). SMS and mobile push notifications carry significantly higher per-message costs that vary by destination country and carrier.
Cost optimization strategies for high-volume SNS implementations include:
- Message batching: Using PublishBatchRequest to send up to 10 messages per API call reduces request counts by up to 90%.
- Filter policies: Implementing subscription filter policies prevents unnecessary deliveries to subscribers that would discard messages anyway.
- Payload optimization: Compressing message bodies and using the claim-check pattern for large payloads reduces data transfer costs.
- Regional consolidation: Centralizing topics in cost-effective regions when latency requirements permit.
With cost structures understood, the final operational consideration involves monitoring SNS performance and implementing observability best practices.
Monitoring, security, and operational best practices
Effective SNS monitoring combines CloudWatch metrics, CloudTrail logging, and application-level instrumentation. The critical metrics to alarm on include NumberOfMessagesPublished, NumberOfNotificationsFailed, PublishSize, and SMSSuccessRate. For FIFO topics, monitor NumberOfMessagesFilteredOut to validate filter policy effectiveness and identify potential message loss from overly aggressive filtering.
Security hardening for SNS topics requires a defense-in-depth approach combining IAM resource-based policies, KMS encryption, and VPC endpoints. The following security checklist represents production-grade configuration:
- Enable server-side encryption using AWS KMS customer managed keys for sensitive message content.
- Configure IAM resource-based policies restricting
sns:Publishto specific principals and source VPCs. - Deploy VPC endpoints for SNS to eliminate public internet exposure for publishers within your VPC.
- Enable CloudTrail logging for all SNS API calls to maintain audit trails.
- Implement subscription confirmation for HTTP/HTTPS endpoints to prevent unauthorized subscription attacks.
Conclusion
AWS SNS has evolved from a simple notification service into a sophisticated messaging backbone capable of supporting enterprise-scale event-driven architectures. The 2025 high-throughput FIFO mode eliminates the historical trade-off between ordering guarantees and scalability. Archive and replay capabilities enable event sourcing patterns previously requiring additional infrastructure. Understanding regional quota variations, delivery retry semantics, and dead-letter queue configurations separates production-ready implementations from tutorial-level deployments.
For senior engineers and architects, the key insight is that SNS design decisions cascade through your entire system. Topic type selection impacts subscriber flexibility. Message group design determines throughput ceilings. Retry policy configuration defines your failure domain boundaries. As serverless and event-driven patterns continue dominating modern architectures, deep SNS expertise becomes increasingly valuable for interviews and production system ownership.
Start by auditing your existing SNS topics against the quotas table and security checklist in this guide. Then progressively adopt high-throughput FIFO and archive policies where your use cases demand them.