Transactional email
at legacy prices.
At a tenth the cost.
Self-hosted deliverability, a single API, and pricing that doesn't punish scale. Send a million emails for $79 — not $250.
3,000 emails/mo free · no credit card · ship in 4 lines of code
import { VoltMail } from '@voltmail/node';const vm = new VoltMail({ apiKey: process.env.VM_KEY });await vm.emails.send({from: 'noreply@acme.io',to: 'user@example.com',subject: 'Welcome to Acme',html: welcomeTemplate({ name }),});// → 200 OK · id: em_01j… · 47ms
Trusted by engineering teams at
Everything you actually need.
None of the enterprise bloat.
We run on self-hosted Postal with rotated IPs and real warming. You get the dashboard. We take the 3am pages.
One API, four SDKs
REST + native clients for Node, Python, Go, and Ruby. Idempotency keys, batch sending, and retry semantics baked in.
Bring your domain
SPF, DKIM, DMARC — verified in under 90 seconds. Live reputation score per domain. Dedicated IPs on Pro Max.
Logs you'll actually read
Search every email for 30 days. Per-recipient timelines. Click + open tracking. Export as CSV, forever.
Scoped API keys
Separate test + live. Permission scopes per key. Rotate without downtime. Last-used tracking to audit what's stale.
Webhooks, but sane
Signed payloads. Exponential retry. Replay from the dashboard. Full delivery logs so you know exactly what fired.
Teams + roles
Invite engineers as members, marketers as viewers, ops as admins. SSO coming to Pro Max next quarter.
Built for the terminal tab, not the sales call.
No dashboard tours. No onboarding calls. Read the docs, paste a key, ship.
Idempotent sends
Every Idempotency-Key is cached for 24 hours. Retry the same job a hundred times, deliver exactly once.
First-class type safety
TypeScript SDK ships with full response types, discriminated-union errors, and Zod schemas for every webhook payload. Autocomplete everywhere.
View the typesStream every event
Delivered. Opened. Bounced. Clicked. Deferred. Complained. Unsubscribed. Streamed with HMAC signatures and exponential retry.
Reply handling, parsed
Inbound messages parsed into structured JSON: headers, stripped signatures, attachments, quoted history. Build support ticketing in an afternoon.
Inbound docsOne API. Every runtime.
Pick your language. The feature set is identical. The docs don't lie.
// npm i @voltmail/nodeimport { VoltMail } from '@voltmail/node';const volt = new VoltMail(process.env.VOLTMAIL_KEY);const { id } = await volt.send({from: 'team@acme.dev',to: 'dev@customer.io',subject: 'Your receipt',react: <Receipt order={order} />,idempotencyKey: `receipt:${order.id}`});
Batteries included.
Types included.
Drop @voltmail/node into your project and you get response types, webhook schemas, retry policies, and a mock client for tests.
1import { VoltMail } from '@voltmail/node';2import { Welcome } from './emails/welcome';34const volt = new VoltMail(process.env.VOLTMAIL_KEY!);56// Fully typed. Full retry, exponential backoff, idempotency.7export async function sendWelcome(user: User) {8 const res = await volt.send({9 from: 'team@acme.dev',10 to: user.email,11 subject: `Welcome, ${user.name}`,12 react: <Welcome name={user.name} />,13 idempotencyKey: `welcome:${user.id}`,14 tags: ['onboarding', 'v2']15 });16 return res.id; // → "em_01HQ7X9KVZT…"17}
Same delivery. 10× less spend.
We run our own Postal nodes on bare-metal VPS. No per-email markup. We pass the savings to you.
| Emails / month | Provider A | Provider B | Provider C | VoltMail |
|---|---|---|---|---|
| 50,000 | $20 | $20 | $15 | $9 |
| 200,000 | $50 | $50 | $35 | $29 |
| 1,000,000 | $250 | $150 | $165 | $79 |
Engineers who hate email use it daily.
We built it for ourselves. Turns out everyone else wanted it too.
“Migrated from Postmark in an afternoon. API is cleaner, pricing is better, and the deliverability numbers are identical.”
“We send 400k transactional emails a month. VoltMail costs us $29. That's it.”
“The webhook replay alone saved us six engineering hours after an outage. Worth every cent.”
“Finally an email API that feels like a developer tool, not a marketing platform.”
“DKIM setup took 80 seconds. I literally timed it.”
“Type safety on the webhook payloads is a blessing. No more 'what fields does this event actually have?'”
“Migrated from Postmark in an afternoon. API is cleaner, pricing is better, and the deliverability numbers are identical.”
“We send 400k transactional emails a month. VoltMail costs us $29. That's it.”
“The webhook replay alone saved us six engineering hours after an outage. Worth every cent.”
“Finally an email API that feels like a developer tool, not a marketing platform.”
“DKIM setup took 80 seconds. I literally timed it.”
“Type safety on the webhook payloads is a blessing. No more 'what fields does this event actually have?'”
- 1 API key
- Shared sending domain
- 24-hour log retention
- Open + click tracking
- Webhooks (3 endpoints)
- Custom domains
- Dedicated IP
- 5 API keys, scoped
- 2 custom domains
- 7-day log retention
- React Email + templates
- Idempotent sends
- Email support · 48h SLA
- Everything in Pro
- 15 API keys
- 5 custom domains
- 30-day log retention
- Webhook replay + signing
- Priority support · 8h SLA
- Unlimited keys + domains
- Dedicated IP (auto-warmed)
- 90-day log retention
- SSO + SCIM (beta)
- Priority + chat · 1h SLA
- Custom data residency
Need more than 1M/mo?
Custom contracts, dedicated IP pools, custom SLAs, private regions — all on the table.
Ship your first email in
four lines of code.
Free forever up to 3,000 emails / month. No credit card. No sales call.