Amazon SES or Amazon SNS: Choosing the Right Messaging Service for Your Needs

Amazon Web Services (AWS) offers a various messaging services, two of the most used messaging services are Amazon Simple Email Service (SES) and Amazon Simple Notification Service (SNS).

Both services are designed to send messages to users or customers, but both differ in their functionality, target audience, and use cases.

💡 As an aside, check out the AWS Well-Architected Framework, which describes key concepts, design principles, and architectural best practices for designing and running workloads in the cloud.

1. Functionality

SES is an email service which can be integrated with any of the application for sending emails in bulk.

While Amazon Simple Notification Service (SNS) is used for sending push notifications, SMS messages and emails.

2. Purpose of use

SES is generally used by developers/engineers and business persons to send transactional emails and marketing emails.

While SNS is used to send real-time SMS messages, emails or push notifications to subscribers.

3. Protocol support

SES provides Simple Mail Transfer Protocol (SMTP) interface to send emails.

While SNS supports protocols such as HTTP/s, email, email-JSON, SMS, SQS etc.

4. Message format

SES allows sending emails in an HTML and text format.

While SNS messages are generally plain text.

5. Attachments

Email attachment meme

Using SES messages with attachments can be sent.

But using SNS messages with attachments cannot be sent.

💡 Speed up your blog creation with DifferAI. Available for free exclusively on the free and open blogging platform, Differ.

6. Content size

SES accepts messages up to 10MB in size including any images and attachments that are part of the message. Also customers can now request a limit increase to send and receive emails with a message size of up to 40MB.

While SNS accepts messages up to 256 KB in size.

7. Targeting recipients

SES can send emails to an individual email addresses or a group of recipients.

While SNS sends messages to topics that are subscribed to by one or more subscribers.

8. Subscription management

In SES, the recipient is added directly to the email list. Also you can get your domain verified to send emails to that domain email without getting verified them.

While in SNS, subscribers are added to a topic and receive all messages sent to that topic.

9. Cost

Photo by Mackenzie Marco on Unsplash

SES pricing is based on a pay-as-you-go model, which means you only pay for what you use

Under AWS free tier, SES offers free 62,000 outbound messages/month to any recipient when you call Amazon SES from an Amazon EC2 instance directly or through AWS Elastic Beanstalk, and free 1,000 inbound messages/month.

After free tier ends SES charges are as below:

  • $0.10 per 1,000 emails sent
  • $0.12 per GB of attachments sent

The cost of using AWS SNS is based on the number of messages you send and any additional features you use. The pricing for AWS SNS is also based on a pay-as-you-go model.

Under AWS free tier, SNS allows 1 million free mobile push notifications, 1,000 free notifications email/email-JSON notifications and 100,000 free HTTP/s notifications.

After free tier ends Amazon SES charges are as below:

  • $0.50 per million mobile push notifications
  • $2.00 per 100,000 email,email-JSON notifications
  • $0.60 per million HTTP/s notifications

Thank you for reading, hope this article will help you in deciding which one to use for your use case.

Subscribe to stay tuned for upcoming articles.

Enjoyed this article?

Share it with your network to help others discover it

Continue Learning

Discover more articles on similar topics