# The Amazon SES alternative for transactional email | Bird

Amazon SES is the cheapest way to push email if you have the engineering to run it. Bird trades a higher per-message price for managed deliverability, a simple bearer-token API, webhooks delivered to your URL, and SMS and voice on the same account, on the SparkPost network that carries about 40% of the world’s commercial email. If you live in AWS and want the lowest raw cost, SES is the better pick. See the Bird Email API for the full surface.

- By the numbers: Bird
- Deliverability scale: ~40% of commercial email
- Message retention: 30 days
- Proven at peak: 19.9B emails, BFCM 2025

## What Amazon SES is great at. Where Bird is different.

### What Amazon SES is great at

- The lowest raw price. A flat $0.10 per 1,000 emails, unchanged for years, with no monthly minimum. Nothing beats that headline send rate. It is raw send only, though: bandwidth, dedicated IPs, and the event and metrics pipelines are billed on top.
- Deep AWS integration. IAM, SNS, Lambda, and the rest of the stack are right there. If your infrastructure already lives in AWS, SES is the path of least resistance.
- Configuration Sets. A named bundle of behaviours (event destinations, IP pool, reputation tracking, suppression overrides) applied per send, so different traffic classes run different operational profiles in one account.
- Regional isolation you choose. A separate endpoint per AWS region, each with independent reputation, for senders who want to pin traffic to specific geographies.

### Where Bird is different

- Managed, not assembled. SES gives you primitives. With Bird, webhooks arrive at your URL signed (no SNS or SQS to wire up), message bodies are stored for 30 days (SES stores none by default), and dedicated-IP warm-up and deliverability are managed for you.
- A simpler API. A bearer-token HTTP call with an error-as-value SDK, idempotency keys, and a hosted MCP server. SES signs every request with AWS SigV4 and IAM, which is power you pay for in setup.
- Built on SparkPost. Bird’s email runs on SparkPost, the deliverability platform Bird acquired in 2021, carrying about 40% of the world’s commercial email with a decade-plus of IP-reputation engineering and human deliverability support.
- Channels beyond email. Send email, SMS, and voice from one API and one auth model. With SES, SMS and voice are separate AWS services you integrate on their own.

## Capability by capability.

Amazon SES wins on raw price and per-region isolation, and it is the natural pick if you already live in AWS. Bird wins on a simpler API, managed deliverability, native webhooks, stored message history, and channels beyond email, and matches SES on SMTP submission and address validation. Both readings are accurate today.

| Capability | Bird | Amazon SES | Who wins |
| --- | --- | --- | --- |
| Send API | Bearer-token HTTP API (POST /v1/email/messages) with an error-as-value SDK. | SES v2 SendEmail signed with AWS SigV4 and IAM; no simple bearer-token endpoint. | Bird |
| Raw send price | From $0.30 per 1,000 emails. | $0.10 per 1,000 raw send; bandwidth, IPs, and pipelines metered on top. | Amazon SES |
| SMTP relay | Customer-facing relay at eu1 and us1.smtp.bird.com. Implicit TLS on 465, STARTTLS on 587 and 2525, authenticated with a normal API key. | Customer-facing SMTP relay at email-smtp.<region>.amazonaws.com. | Even |
| Email address validation | Real-time validation: a deliverability verdict, a 0-100 confidence score, role, disposable and free-provider flags, and a typo correction. One address per call. | Native recipient-validation feature plus Auto Validation gating. | Even |
| Event webhooks | Native webhooks delivered to your URL, signed (Standard Webhooks). | No native HTTP webhook; events publish to SNS, Kinesis Firehose, CloudWatch, or EventBridge that you wire up. | Bird |
| Stored message retention | Stored message body available for 30 days. | No stored bodies by default; archiving is a paid Mail Manager add-on. | Bird |
| Idempotency on send | Idempotency-Key header, reused across retries. | No idempotency key on the send path; consumers dedupe on messageId. | Bird |
| Dedicated IPs and warm-up | Dedicated IPs and pools with roughly 30-day automated warm-up. | Standard ($24.95/IP/mo, automatic ~45-day warm-up) or managed auto-warm-up. | Even |
| Deliverability heritage | Runs on SparkPost (acquired 2021): roughly 40% of the world’s commercial email, with human deliverability support. | AWS-scale infrastructure; deliverability tuning is largely the sender’s job. | Bird |
| Channels beyond email | SMS and voice in the same API, plus a wider omnichannel platform. | Email only; SMS and voice live in separate AWS services. | Bird |

## One send, two levels of plumbing.

Sending one HTML email. SES routes through the AWS SDK with SigV4 credentials and a nested command shape. Bird is a bearer-token call that returns a typed result. The fields are the same underneath.

**Amazon SES** · send.ts

```typescript
import { SESv2Client, SendEmailCommand } from "@aws-sdk/client-sesv2";

const ses = new SESv2Client({ region: "us-east-1" });

await ses.send(
  new SendEmailCommand({
    FromEmailAddress: "onboarding@yourdomain.com",
    Destination: { ToAddresses: ["customer@example.com"] },
    Content: {
      Simple: {
        Subject: { Data: "Your March invoice" },
        Body: { Html: { Data: "<p>Attached.</p>" } },
      },
    },
  }),
);
// Credentials resolve from the AWS provider chain (env, IAM role, profile).
```

**Bird** · send.ts

```typescript
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

const { data, error } = await bird.email
  .send({
    from:    { email: "onboarding@yourdomain.com", name: "Acme" },
    to:      ["customer@example.com"],
    subject: "Your March invoice",
    html:    "<p>Attached.</p>",
  })
  .safe();

if (error) console.error(error.message);
else console.log(data.id);
```

## Pricing at a glance

Amazon SES bills a flat $0.10 per 1,000 emails with no monthly fee, so the figures below are raw send only. SES meters the rest separately: $0.12/GB of attachment data, $24.95/mo per dedicated IP, plus the event, metrics, and message-archiving pipelines you assemble on SNS, CloudWatch, and Mail Manager. Bird’s price bundles those in.

| Emails / month | Bird | Amazon SES |
| --- | --- | --- |
| 50,000 | $20/mo (Starter) | ~$5/mo (pay as you go) |
| 250,000 | $170/mo (Premier) | ~$25/mo (pay as you go) |
| 1,000,000 | $525/mo (Premier) | ~$100/mo (pay as you go) |

## Switching cost: Low.

Most of the move is deleting code. The AWS SDK, SigV4 signing, and the SNS or SQS pipeline you built to receive events are replaced by a bearer-token call and a signed webhook to your URL. Domain authentication and the suppression list map across directly.

If you run a dedicated IP on SES, plan for a warm-up window on Bird to carry the reputation over. The migration guide covers domain auth, IP warm-up, and event mapping.

## Bird vs Amazon SES: common questions

### Is Bird cheaper than Amazon SES?

No, not on raw send price. SES bills a flat $0.10 per 1,000 emails with no monthly fee, which is lower than Bird’s rate. The trade is what SES leaves to you: receiving events through SNS or SQS, storing your own message history, and paying separately for AWS Support. Bird’s price includes managed deliverability and support.

### Why move off Amazon SES if it’s cheaper?

Teams move when the engineering around SES costs more than the send savings: building and maintaining the SNS/SQS event pipeline, the lack of stored message bodies for debugging, and deliverability tuning that is entirely your responsibility. Bird hands those back as managed features.

### Does Bird offer an SMTP relay like SES?

Yes. Point your client at eu1.smtp.bird.com or us1.smtp.bird.com, on port 465 for implicit TLS or 587 and 2525 for STARTTLS. The username is bird and the password is a normal API key with the emails scope, so there are no separate SMTP credentials to generate. Mail submitted over SMTP goes through the same pipeline as the API, with the same domain verification, IP pools, DKIM signing, suppressions, tracking, and events.

### How does Bird’s deliverability compare to SES?

Bird’s email runs on SparkPost, the platform it acquired in 2021, which carries about 40% of the world’s commercial email and comes with human deliverability support. SES gives you the raw infrastructure; reputation and inbox placement are largely the sender’s job.

### Does Bird have native webhooks like the SNS setup on SES?

Yes, and they are simpler. Bird delivers signed event webhooks (delivered, bounced, opened, clicked, and more) straight to your URL using the Standard Webhooks scheme. There is no SNS topic or SQS queue to provision.

## Compare Bird to other platforms

See how Bird compares to the other transactional email platforms.

- [Bird vs SendGrid](/products/email/vs/sendgrid): Lower cost at scale, idempotency, and channels beyond email.
- [Bird vs Mailgun](/products/email/vs/mailgun): Cheaper at every tier, with idempotency and longer history.
- [Bird vs Postmark](/products/email/vs/postmark): Much lower cost at scale, with omnichannel and idempotency.
- [Bird vs MailerSend](/products/email/vs/mailersend): Global omnichannel and deliverability heritage on SparkPost.
- [Bird vs Brevo](/products/email/vs/brevo): Transactional depth and a developer-first API.
- [Bird vs Resend](/products/email/vs/resend): The same modern DX, plus omnichannel and SparkPost scale.
- [All email comparisons](/products/email/vs): See every Bird email comparison in one place.