Email infrastructure for developers

Ship email with complete confidence.

A developer-first email platform with a clean API, real-time event tracking, broadcast campaigns, and deliverability tools — all from one dashboard.

99.95%

Delivery reliability

<120ms

Median API response

3 SDKs

TypeScript, Python, Go

send-email.ts
1import { Sendr } from 'sendr';
2
3const sendr = new Sendr('sndr_live_...');
4
5await sendr.emails.send({
6 from: 'hello@yourapp.com',
7 to: 'user@example.com',
8 subject: 'Welcome aboard',
9 html: '<p>Thanks for signing up!</p>',
10});

Track every event

Real-time visibility into delivery, opens, and clicks.

email.delivered
+0.8s
email.opened
+4m 12s
email.clicked
+4m 38s

Webhooks built in

HMAC-signed payloads delivered to your endpoint for every event. Automatic retries with exponential backoff.

Everything you need to ship email

From sending to tracking to compliance — one platform, no duct tape.

REST API & SMTP relay

Send via clean REST endpoints or drop-in SMTP on port 2525. Same delivery pipeline, same tracking — your choice.

Analytics & reports

Delivery metrics, open rates, click rates, cohort analysis, and industry benchmarks. Schedule CSV reports to your inbox.

Open & click tracking

Automatic pixel and link tracking. Know when every email is opened and every link is clicked, in real time.

Webhooks

HMAC-signed event delivery for sends, bounces, complaints, opens, and clicks. Automatic retries with exponential backoff.

Inbound email

Receive and parse incoming email. Forward structured payloads to your systems via signed webhooks — close the loop on two-way email.

Teams & scoped keys

Multi-seat orgs with owner, admin, and member roles. Scoped API keys: full access, sending access, or read-only.

Broadcast campaigns

Schedule marketing campaigns to entire audiences. Tracks opens, clicks, bounces, and unsubscribes per campaign.

Dedicated IPs & warmup

Provision dedicated sending IPs with automated warmup scheduling. Protect your reputation on high-volume workloads.

Deliverability

Land in the inbox, not the spam folder

Domain authentication, suppression management, and compliance tooling work together to protect your sender reputation.

Learn more

Domain verification

SPF, DKIM, and DMARC checks

Suppression lists

Auto-suppress bounces & complaints

Unsubscribe management

RFC 8058 one-click unsubscribe

Blocklist monitoring

Real-time checks across 15+ RBLs

Bounce handling

Hard bounce detection & filtering

BIMI authentication

Brand logo in the inbox

Build emails with React

Use React Email components to build type-safe, responsive templates with Tailwind CSS. Preview locally, render server-side, and send via the API.

Component-based email templates
Tailwind CSS support in emails
Local preview with hot reload
welcome.tsx
1import { Html, Head, Body, Text } from '@react-email/components';
2import { Tailwind } from '@react-email/tailwind';
3
4export default function Welcome({ name }) {
5 return (
6 <Tailwind>
7 <Html>
8 <Body className="bg-white font-sans">
9 <Text className="text-xl font-bold">
10 Welcome, {name}!
11 </Text>
12 </Body>
13 </Html>
14 </Tailwind>
15 );
16}
Official SDKs

Your language, our infrastructure

Official SDKs for TypeScript, Python, and Go with typed responses, automatic retries, and full API coverage. Or use the REST API directly — it’s just HTTP.

TypeScript SDK with full type inference
Python and Go SDKs for backend teams
SMTP relay — works with any language or framework
Idempotency keys and automatic retry logic
Read the docs
send.tsTypeScript
import { Sendr } from 'sendr';
const sendr = new Sendr(process.env.SENDR_API_KEY);
await sendr.emails.send({
  from: 'noreply@yourapp.com',
  to: 'user@example.com',
  subject: 'Your order shipped',
  html: '<p>Track it at <a href="#">here</a>.</p>',
});
send.pyPython
import sendr
client = sendr.Sendr(api_key=os.environ["SENDR_API_KEY"])
client.emails.send({
  "from": "noreply@yourapp.com",
  "to": "user@example.com",
  "subject": "Your order shipped",
  "html": "<p>Track your order inside.</p>",
})
send.goGo
client := sendr.NewClient(os.Getenv("SENDR_API_KEY"))
_, err := client.Emails.Send(ctx, &sendr.EmailParams{
  From:    "noreply@yourapp.com",
  To:      []string{"user@example.com"},
  Subject: "Your order shipped",
  HTML:    "<p>Track your order inside.</p>",
})

Trusted by engineering teams

Sendr's API is exactly what we needed — clean, predictable, and the tracking just works out of the box. We were sending in production within an hour.

Maya R.

Engineering Lead · Series A SaaS

We replaced our in-house SES wrapper with Sendr. The webhook reliability and real-time analytics alone saved us a sprint every quarter.

Daniel K.

CTO · B2B Fintech

Scoped API keys and suppression lists meant we could give our client teams access without worrying about them nuking our sender reputation.

Priya S.

Platform Engineer · Agency & Tooling

Start free. Scale without surprises.

3,000 emails/month free, forever. Upgrade to Pro for $18/mo and unlock 50,000 emails, broadcast campaigns, analytics exports, and more. Up to 69% cheaper than the competition.

Free

$0

3k emails/mo

Side projects & prototypes

Pro

$18/mo

50k emails/mo

Growing products

Business

$79/mo

200k emails/mo

Production workloads

Enterprise

Custom

Unlimited

High-volume & compliance

Your next email is one API call away.

Create a free account in 60 seconds. No credit card required. Upgrade when you’re ready to scale.