# emails.sh vs Sendinblue

Sendinblue is now Brevo: same company, renamed in 2023. Here is the honest comparison against the platform, and where a transactional API fits instead.

Also searched as: Sendinblue alternative, Sendinblue vs emails.sh, is Sendinblue now Brevo.

## What Sendinblue is

Start with the thing people are usually here to confirm: Sendinblue is Brevo. The company rebranded in 2023, existing accounts carried over, and there is no separate Sendinblue product still being sold. If you are evaluating Sendinblue today you are evaluating Brevo: an all-in-one platform with email campaigns, SMS, WhatsApp, a CRM, chat, landing pages, and marketing automation, plus a transactional email API and SMTP relay underneath it. The old API host and the old SDK package names still turn up in codebases, which is why the name persists.

## Where Sendinblue is the better choice

The advice is the same as for Brevo. If you want marketing email, SMS, and a light CRM from one vendor at a low price, it is a strong choice, especially because it prices by monthly email volume rather than by contacts stored, so a large list is not punished. For a small business without engineers it is a better answer than a developer API, including ours.

## Where emails.sh differs

Our case is about the transactional half only. Mail your code triggers has different requirements from mail a marketer schedules: a per-message log you can search when a customer says the reset never arrived, webhooks signed so you can trust them, an SDK in the language your backend is written in, and reputation kept away from campaign complaints. That is the whole product here, and inbound MX means replies come back rather than disappearing into a mailbox someone checks.

### One job instead of a suite

There is no CRM, no SMS, no chat widget, and no landing page builder here. One endpoint sends, one dashboard shows what happened to each message, and one key format authenticates. That is a narrower product on purpose, and the narrowness is the feature when you are debugging.

### Reputation split from campaigns

If a platform sends your promotions and your password resets, a bad campaign moves the reputation both depend on. We send only transactional mail and separate pools by send type, so the mail people are actively waiting for is not queued behind mail they might report.

### Written for the assistant doing the work

Every page here is markdown at the same URL plus .md, there is an /llms.txt, and there is an installable skill for Cursor and Claude Code. An assistant integrating a marketing platform has to work out which of several APIs it is meant to be calling before it writes a line.

## Moving off Sendinblue, or off Brevo

If your integration still points at the old Sendinblue hosts and package names, it is doing so through compatibility rather than by design. Treat this as a Brevo migration.

1. **Find the old integration** Look for legacy Sendinblue package names, the old API host, and the api-key header. Those call sites are your transactional sends. Campaigns scheduled in the UI are a separate concern and are not moving.
2. **Rewrite the send** Their body takes sender and to as objects with email and name fields, plus htmlContent and textContent. Ours takes from as a formatted string, to as an array, html and text, and Authorization: Bearer esh_.... Attachments become filename and content_base64 pairs.
3. **Verify a transactional subdomain** Leave the domain that signs campaigns where it is. Authenticate a separate subdomain here with our SPF, DKIM, and return-path records, so campaign complaints and transactional delivery stop sharing a reputation.
4. **Cut over by percentage and keep suppression in sync** Move 5% of transactional sends, compare bounce and complaint rates for a week, then move the rest. Feed email.bounced and email.complained into the same suppression logic the marketing platform reads, so nobody is emailed after they complain.

## Side by side (checked July 2026)

| | emails.sh | Sendinblue |
| --- | --- | --- |
| Pricing shape | Two prices, bought separately. Transactional is per email sent and counts no contacts. Marketing is per contact stored, in tiers from 5,000, with no per-email charge on sends to your own audiences. Neither plan requires the other, so a product that sends receipts to 200,000 users and mails a 4,000-person list pays for 4,000 contacts. | Brevo pricing, by monthly email volume rather than contacts stored. |
| Free tier | Two free tiers that do not require each other: 3,000 transactional emails a month, and 1,000 contacts with unsubscribe handling and broadcast sending included. | A permanent free plan built around a daily send cap of a few hundred emails. |
| Sending domains | One screen: add the domain, copy SPF, DKIM, and return-path records, watch them go green. Unlimited domains on every plan. | Domain authentication with DKIM, shared across the platform account. |
| Deliverability posture | Transactional mail never shares a pool with a campaign, because a receipt landing in spam behind a promotion is the failure that costs you. | Established at scale, tuned for marketing sending patterns. |
| Receiving mail | Inbound MX, parsed MIME, and In-Reply-To threading, so a reply arrives as part of a conversation you can query rather than as a raw webhook body. | An inbound parsing webhook exists. Storage and threading are not the product. |
| Logs and retention | Every message searchable in the dashboard and readable at GET /v1/emails/:id, with its delivery, bounce, and complaint events attached. | Campaign statistics plus a transactional activity view, with retention by plan. |
| Templates | Hosted templates with immutable versions, published separately from saving, referenced by slug from a send, a broadcast, or an automation step. Merge syntax is {{ variable }} with no conditionals or loops, and there is no drag-and-drop editor. If a non-developer needs to lay out an email without touching HTML, that is a real reason to pick the other product. | A drag-and-drop editor plus transactional templates with substitution. |
| SDKs and frameworks | Nine clients (node and typescript, python, php, ruby, go, rust, java, .net, elixir) plus curl, and framework guides from Next.js to Laravel, Rails, and Django. | Brevo API clients, with the older Sendinblue packages deprecated. |
| Marketing and lifecycle | Audiences with double opt-in, flat-rule segments, scheduled broadcasts, and automations built on a canvas that is also a YAML file you can review in a pull request. No A/B testing, no visual builder, no signup forms. | The same product as Brevo since the 2023 rename: contacts, lists, segments, campaigns, and Automations with delays, event waits, and conditional splits, all built in the console. |
| Webhooks | email.delivered, email.bounced, and email.complained, each signed with x-emailssh-signature so you can verify the body before you act on it. | Transactional and marketing event webhooks. |
| Path for a coding agent | Every page served as markdown at the same path plus .md, an /llms.txt index of the whole site, and a Cursor and Claude Code skill you install once. | Human documentation across a broad platform. No installable assistant skill. |
| Support | Email support on every plan including the free one, answered by the people who wrote the API. We are small, and that cuts both ways. | Tiered by plan, with phone and account management at the top. |

## Questions

### Is Sendinblue still a product?

No. Sendinblue rebranded to Brevo in 2023. The company, the platform, and the accounts are the same, and the name changed to reflect a scope beyond email. Anything you read about Sendinblue applies to Brevo unless it is describing pricing, which has moved since.

### Do old Sendinblue API keys still work?

Existing accounts carried over to Brevo, so integrations kept running, but the current SDKs and documentation are published under the Brevo name and the older packages are deprecated. If your code still references Sendinblue packages, that is technical debt worth clearing whether or not you move.

### Should I use Brevo for transactional email?

You can, and its volume-based pricing is good value. What you give up is the developer surface: a per-message log built for debugging, signed webhooks, nine language clients, inbound that stores and threads, and reputation separated from your campaigns.

### What does emails.sh not do?

Campaigns, segmentation, automation, SMS, chat, a CRM, and a visual editor. If any of those is why you are on the platform, keep it. Move the mail your application sends and leave the marketing where it belongs.

All comparisons: https://emails.sh/vs
Docs: https://emails.sh/docs.md
Pricing: https://emails.sh/pricing.md