Mailinator Alternative for Private Test Inboxes

Mailinator's public inboxes are readable by anyone and deleted within hours. How private test inboxes on your own domain compare with Mailinator's paid plans.

Most people know Mailinator for its public inboxes: send to any name at mailinator.com, then open that inbox on the website. No signup, nothing to set up. By Mailinator's own description, public email can be read by anyone and is deleted after a few hours.

That's fine for a throwaway signup on someone else's site. It's the wrong place for your own app's mail. A password reset link or an invite in a public inbox works for whoever opens it first. Public inboxes also drop attachments, so an invoice or an export email can't be tested there at all.

Mailinator's private plans solve this with your own domain, an API, and webhooks. For testing, the comparison that matters is between those plans and private accounts here.

At a Glance

Mailinatorsmtp.dev
FreePublic inboxes. Or Verified Pro: 1 private domain, 10 MB of storage, 2,000 emails a month, 60 a dayLite: 1 domain, 50 accounts, messages kept 7 days
PaidBusiness, $79 a month billed yearly: 1 domain, 50 MB, 100,000 emails a month. Business Plus, $159: 3 domains, 100 MB, 300,000 emails a monthPro, $7 a month: 5 domains, 25,000 accounts, 30 days. Max, $20: unlimited domains and accounts, 90 days
Who can read a messagePublic inboxes: anyone. Private domains: your teamWhoever has the account's password or your API key
AddressesAny name on your private domainAccounts you create and their plus aliases. Any name with a catch-all on Pro and Max
Kept untilPublic: a few hours. Private: until storage fills, oldest out first7, 30, or 90 days by plan
AttachmentsNot on public inboxesYes
Reading mailWeb, API, webhooks, routing rulesWeb, REST API, SSE, IMAP, POP3
SendingReceive-onlyBetween accounts in your sandbox
SMSPrivate numbers from Business up, on request and at extra costNo
Users1 on Verified Pro, 5 on Business, 10 on Business Plus, with SSOSingle user

When Mailinator Fits

For a one-off check on a site you don't run, where it doesn't matter who else reads the message, a public inbox is the quickest option: no signup, no DNS.

If your team already pays for a private plan and builds on its webhooks and routing rules, there's little reason to move. Webhooks have no direct equivalent here. Tests subscribe over SSE or poll the API.

Mailinator also receives SMS, and from Business up, private numbers are available on request at extra cost. smtp.dev only receives email.

Reasons to Switch

  • Signup forms that block disposable domains. mailinator.com is on the open-source disposable-email-domains blocklist. If your app validates addresses against it, a public Mailinator address fails at the form. An address on your own domain doesn't.
  • Messages that aren't public. Each account has its own password. Reading it takes that password or your API key.
  • Attachments. Invoices, exports, and calendar invites arrive with their files.
  • IMAP and POP3. Every account opens in Thunderbird or Apple Mail, on every plan.
  • More domains for less. Five domains are $7 a month on Pro. Three private domains on Mailinator are Business Plus, at $159 a month billed yearly.
  • Sending, kept inside the sandbox. Accounts can mail each other through send.smtp.dev, so the app's own SMTP path gets tested too. Any address outside your sandbox is refused.

Moving Tests

Replace name@mailinator.com with an address on a test domain. Add the domain, point its MX record at mx.smtp.dev, and create the accounts your tests use. To keep making up addresses the way tests did on Mailinator, use plus aliases of one account, like qa+run42@test.example.com, on any plan. On Pro and Max, a catch-all accepts any name.

A private Mailinator domain moves the same way: point it, or a subdomain of it, at mx.smtp.dev.

Tests that fetch a message from Mailinator's API fetch it from the account's INBOX, newest first:

curl "https://api.smtp.dev/accounts/{accountId}/mailboxes/{mailboxId}/messages" \
  -H "X-API-KEY: $SMTP_DEV_API_KEY"

The API quickstart has a wait-and-assert helper, and the Playwright and Cypress guides use it in browser tests.

Mailinator's plans and limits are from its pricing page, and public inbox behavior from its FAQ and public inbox documentation. The blocklist is disposable-email-domains on GitHub. All checked November 9, 2026.