Discounts and news by email. Unsubscribe in one click.
For the email your app sends one person because of something they did: sign-ups, password resets, receipts, alerts. One HTTPS request sends it from a domain you have verified, signed with DKIM, and the delivery log and your webhooks say what happened.
For developers.
You sign up and pay for Mail separately from hosting.
Prices are without VAT: VAT is added at checkout, where it applies. Plans renew each month or year until you cancel. Ask within 30 days of your first payment, or 14 days of a renewal, and you get it back in full. Sold by our reseller Paddle, which handles payment, VAT and invoices. Terms · Refunds
Pick Mail and a plan, name your project and pay.
Add it on the Domains tab or through the API, then create the DNS records it gives you. We check them every 15 minutes.
Make one in the project's settings. It starts with mb_live_ and is shown once.
POST /emails with the key as a Bearer token. The delivery log shows what happened to each recipient.
| Starter€9 a month€90 a year | Team€19 a month€190 a year | Business€39 a month€390 a year | |
|---|---|---|---|
| Sending domains | 1 domain | 2 domains | 5 domains |
| API keys | 2 keys | 4 keys | 10 keys |
| Emails a month | 10,000 emails | 20,000 emails | 50,000 emails |
At the month's limit an email is refused whole with 429 monthly_limit_reached until the 1st (UTC), and a new domain or key past the plan is refused.
Bodies, custom headers and attachments are encrypted while they wait to be sent and deleted after; the API never returns them. Each domain's DKIM private key is encrypted. API keys are stored only as a hash and shown once. Email goes out only from domains you have proven with DNS.
Each recipient counts as one email, and a suppressed one does not. At the month's limit an email is refused whole with 429 monthly_limit_reached, and nothing waits to be sent later. The count starts again on the 1st at 00:00 UTC. A new sending domain or API key past your plan is refused until you delete or revoke one.
No. There is no free plan and no test mode: every key sends real email, and each recipient counts towards the month.
Environment variables and secrets in one place, pulled where they are needed.
For developers, operations and security
Any that can send JSON over HTTPS. The docs show every call in curl, Node.js, PHP and Python. There are no SDKs yet.
On our servers in Germany. The delivery log (addresses, subjects, tags and what happened) is kept for 3 months. An email's body and attachments are deleted once every recipient is sent or has failed. Sending domains and the suppression list have no time limit.
No. It is a REST API only: your app sends each email with POST /emails and an API key.
No. Mail is for transactional email only: what your app sends one person because of something they did, such as a sign-up, a password reset, a receipt or an alert. Newsletters, marketing and bulk email are not allowed.
Adding a domain returns them at once: an MX and an SPF record on its return-path subdomain, a DKIM key, and a DMARC record, which is recommended. We check a new domain every 15 minutes for 72 hours, then a verified one once a day.