A disposable email checker (also known as a fake email checker or disposable email detector) compares an email address or its domain against a maintained list of throwaway providers. Mailinator, Guerrilla Mail, YOPmail, 10MinuteMail, and tens of thousands more. The check is a fast string lookup. No DNS query, no probe message, no SMTP handshake. The result is a single boolean: temporary or not.Documentation Index
Fetch the complete documentation index at: https://docs.spotzee.com/llms.txt
Use this file to discover all available pages before exploring further.
Why this matters
Disposable signups are the cheapest abuse vector on the internet. A bot grabs a free trial, a fraudster claims a referral bonus, a competitor scrapes your gated content. Every one of them needs an email address that survives long enough to confirm the form. Throwaway providers exist to give them exactly that. An inbox that lasts ten minutes and disappears. Catching them at the form is much cheaper than catching them later. A blocked signup costs you nothing. A confirmed account that turns out to be a bot costs you a database row, a welcome email, a credit-card pre-authorisation hold, and a customer-service ticket when the abuse is discovered. The disposable email checker is a five-millisecond gate that prevents most of that downstream cost. It’s also the right shape for batch-list cleanup. If you receive a list from a vendor, partner, or an old marketing campaign, run the disposable check before the import. Anything on the blocklist gets dropped before it pollutes your sender reputation.How the check works
The lookup is local to the API. No DNS, no MX query, no probe. Each call resolves in single-digit milliseconds.Parse the input
user@example.com or a bare example.com. If there’s an @, the part after it is the domain. Either form keys the lookup on the same value.Lower-case and normalise
Run the blocklist lookup
mailchecker project. The list ships embedded in the API. No external call.What to watch for
The check returns a single boolean. Two patterns are worth thinking through.- False negatives are the main risk. New throwaway domains pop up every week. The blocklist has 55,000+ entries but isn’t exhaustive. Pair the disposable check with rate limiting on signups, CAPTCHA, and a behavioural check (rapid-fire signups from one IP, identical UA strings, etc.) to catch the long tail.
- False positives are rare but possible. A handful of domains in the blocklist were repurposed legitimately after the entry was added. If a real user reports being blocked, double-check before you trust the verdict — and make the block soft (re-enter or contact-support fallback) rather than hard.
- Bare domains and email addresses both work. Internally both reduce to the same domain lookup, so the answer is identical for
user@example.comandexample.com. - Plus-suffix tricks don’t fool the check.
user+test@mailinator.comkeys onmailinator.com, same asuser@mailinator.com. Sub-addressing is irrelevant to the lookup.
Where it fits in the email-validation workflow
Run the disposable check before any paid step. It’s the cheapest filter you have.- Step 1 — Email syntax validator. Filter obvious format failures. Runs in your browser, no API call.
- Step 2 — Disposable email checker. Drop throwaway domains. Five-millisecond lookup, single API call.
- Step 3 — Email provider check. Identify the mailbox host (Gmail, Microsoft 365, iCloud, custom). Useful for segmentation.
- Step 4 — Full email verification. Per-call cost, runs SMTP handshake. Save it for the addresses that survive steps 1–3.
FAQs
What does a disposable email checker actually do?
What does a disposable email checker actually do?
How is a disposable email checker different from full email verification?
How is a disposable email checker different from full email verification?
How big is the blocklist and how often is it updated?
How big is the blocklist and how often is it updated?
mailchecker blocklist, which contains over 55,000 known throwaway domains. The upstream repo accepts community pull requests and merges new domains regularly. Spotzee picks up upstream releases on each redeploy of the underlying API.Will the check catch newly-created throwaway domains?
Will the check catch newly-created throwaway domains?
Can I run the check on a bare domain without an `@`?
Can I run the check on a bare domain without an `@`?
user@mailinator.com, it splits on the @ and resolves mailinator.com. If you paste mailinator.com directly, it resolves the same way. Both produce the same verdict because the lookup is keyed on the domain.Does the check work for international domains?
Does the check work for international domains?
.co.uk, .de, .jp, or any other ccTLD and is in the list, the check catches it.Should I block disposable signups hard or soft?
Should I block disposable signups hard or soft?