Skip to content
IndSec Temp Mail

How does disposable email work?

· basics, technical

A disposable email service looks like a single web page, but behind it there are four moving parts: DNS, an inbound mail handler, storage, and a token scheme that controls who can read the result.

1. DNS decides whether mail arrives at all

Mail servers find the destination by looking up a domain’s MX record. For a disposable service, that record points at infrastructure the service controls. This is the step that most often fails silently: if the MX record is wrong or unverified, senders get a bounce that they may or may not report to you, and nothing appears in the inbox.

This is why a service can list a domain in its interface before that domain can actually receive mail. The domain exists; the routing does not yet.

2. A wildcard rule accepts any local part

A temporary service cannot pre-create a rule for every possible random address. It needs a catch-all: any local part at that domain is accepted and handed to a handler.

Without a catch-all, you can only receive at addresses explicitly configured, which defeats the point of generating a random one. On Cloudflare Email Routing the catch-all capability exists at the domain apex but not on subdomains, which is a real constraint when planning deployment.

3. The handler parses and stores

The raw message is MIME, not text. It can be multipart, base64-encoded, quoted-printable, have nested alternative parts, and carry attachments. The handler parses it into a subject, a sender, a plain-text body, an HTML body, and attachments, then stores what it needs.

This is where a service decides what “receiving an email” means. Storing the raw file forever is simplest and worst. Storing a sanitised body plus metadata, with a hard expiry, is defensible.

4. The access token decides who can read it

Here the two common designs diverge sharply, and the difference matters more than any feature list:

Address-based. The inbox is identified by its address. Type someone@domain into a URL and you read that inbox. It is easy to share and completely unprotected: addresses are guessable, and they appear in plaintext in signup forms and screenshots.

Token-based. Creation returns an address plus a secret token. Reading requires the token. An attacker who guesses an address gets nothing, because the address is not the credential.

An inbox holding a password-reset code is a credential. A design that lets anyone read it by typing the address is a design that leaks credentials.

Why expiry is not just cleanup

Expiry bounds the blast radius. If storage is compromised on day 400, a service that keeps mail forever loses everything; one that keeps mail for an hour loses an hour. Expiry is the difference between a bug and an incident.

What this means for you

When you evaluate a disposable service, forget the feature list for a moment and ask two questions: what happens if I type someone else’s address into the URL bar, and how long is my mail really kept? The answers tell you more than the FAQ does.

Need an address to try this with?

No account required — an address is created as soon as you open the inbox.

Open the inbox

← All guides