Mailbay for indie hackers
Every side project needs email. Set it up once.
Mailbay keeps every product in one workspace: its own project, domain, inboxes and keys. Sign up emails, receipts and support@ all live in the same place.
What gets in the way
Each product needs auth emails, a support@ address, DNS records and another bill. Then you start the next one.
How it goes
- 1
A project per product
Each one keeps its own domain, inboxes, keys and send log.
plantpal · shipfast · invoicely - 2
Connect its domain
Paste the domain. The wizard reads its DNS, lists the records and checks them live.
MX SPF DKIM DMARC verified - 3
Paste the SMTP settings
Into Supabase Auth or your framework. Auth emails leave from your domain; support@ lands in the shared inbox.
smtp.mailbay.dev:465
Three ways in, one key
Auth emails through Supabase, app emails from code. Pick whichever your stack already uses.
Enable custom SMTP on
Sender email noreply@yourproduct.com
Host smtp.mailbay.dev
Port number 465
Username mailbay
Password mb_live_... (a Sending only key)Tested with Supabase Auth v2.180.0; the guide has the run.
RESEND_BASE_URL=https://api.mailbay.dev/v1
RESEND_API_KEY=mb_live_xxxxxxxxx # a Mailbay Sending only keyMailbay takes Resend's request body. Tested with resend 6.32.1.
await fetch("https://api.mailbay.dev/v1/emails", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.MAILBAY_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
from: "Acme <noreply@acme.com>",
to: "ada@example.com",
subject: "Your receipt",
html: "<p>Thanks for your order.</p>",
}),
}); // { id: "eml_..." }Works with what you use
Every tool, with what we tested, is in the integrations directory.
What you get
Projects, not accounts
One workspace, a project per product. Each has its own domain, inboxes, API keys and send log, and plan limits are pooled across them.
support@ that works
A shared inbox per product with open and closed conversations, replies sent as support@, and keyboard shortcuts.
Support email on your own domainYour existing mail stays
Domain already receives mail? Pick sending only or a mail. subdomain and nothing about your current mailboxes changes.
Free while in beta
3 inboxes, 3,000 emails a month and 3 custom domains, no card. Received mail never counts.
PricingErrors that say what to do
Every API and SMTP error comes with a fix you can act on, such as the domain to verify.
Questions
Can I keep the email I already have on my domain?
Yes. When you add a domain that already receives mail, choose sending only or the mail. subdomain option, and your existing mailboxes keep working exactly as before.
What does it cost?
Mailbay is free during the private beta: 3 inboxes, 3,000 emails a month and 3 custom domains, with no card. The paid plans on the pricing page are planned, not live.
Do I need to write code?
Not for auth emails: Supabase Auth and most frameworks take SMTP settings. For your own emails, such as receipts, one HTTP request or the Resend SDK is enough.
Does received mail count toward the limit?
No. Only email you send counts toward the monthly allowance; support mail and replies you receive do not.
Want the long version? Read email for indie hackers with many projects and the Supabase Auth custom SMTP guide and how agencies run a project per client, or see who else Mailbay is for.
Join the beta
Mailbay is in private beta and free while the beta runs: inboxes, sending, your own domains and MCP. We invite people in small batches and read every note on the form.