MAILSTEIN FOR SIDE PROJECTS

Email that just works for the thing you built this weekend

Signup confirmations, password resets, magic links, receipts — the boring plumbing every project needs. One clean API, no credit card, and a free tier that outlives most weekend ideas.

Start in the time it takes to make coffee

Free means free: 50 emails a month and one verified domain, no card on file, no trial clock counting down.

01 / FREE

No credit card

50 emails a month and 1 domain on the free plan. Enough to launch, demo to friends, and let your first real users kick the tires — without ever entering a card.

02 / SIMPLE

One API, one call

A single REST endpoint (or SMTP if you already have a mailer). Send your first email today; you don't need to understand SPF, DKIM, or DMARC to do it — we handle those for you.

03 / DELIVERABLE

It lands in the inbox

Automatic SPF, DKIM, and DMARC setup plus bounce and complaint suppression, so your password resets don't quietly die in a spam folder while a user rage-quits your app.

SEND YOUR FIRST EMAIL

Copy, paste, ship

Grab an API key, verify your domain, and send. The SDK reads exactly how you'd hope — no queues to configure, no MTA to babysit, no AWS console detour. When your side project sprouts a CLI or an AI agent, the same API is there via SDK, CLI, and MCP.

// npm i mailstein const mailstein = new Mailstein(process.env.MAILSTEIN_KEY) await mailstein.emails.send({ from: "hello@yourapp.dev", to: user.email, subject: "Confirm your email", html: `<a href="${link}">Verify →</a>` })

The kind of email a real project needs

Transactional and broadcast on one platform, billed per send — never per contact. So the newsletter you add later doesn't come with a second bill.

TRANSACTIONAL

The 3am stuff that has to work

Magic links, receipts, and reset emails go out through a real MTA with logs you can actually read when a user says "I never got it."

A user requests a password reset at midnight. The email lands in seconds, and you can see exactly when it was delivered and opened.
BROADCAST

Your first launch email, same account

Contacts, audiences, and campaigns live right alongside your transactional sends. When you're ready to email your waitlist, there's nothing new to sign up for.

Fifty people join your waitlist. You import them, write one broadcast, and hit send — no separate "marketing" product to buy.

Free to start, yours when it grows

mailstein freeTypical free tier
Credit card to startNoneOften required
Transactional + broadcast on one planYesUsually separate
Billed per send, not per contactYesPer contact
Auto SPF / DKIM / DMARCYesDIY
Same API from weekend to scaleYesTier-gated

If your project takes off, paid plans scale by volume — roughly $130 at 125K emails a month. You keep the same code, the same domain, and the same dashboard. Nothing to migrate.

Your project deserves email that shows up

50 emails a month, one domain, no credit card. Send your first one before the coffee's cold.

Start free