BounceLens Email Check for Craft CMS
A free plugin that stops bad email addresses before they reach your user list or your inbox. It checks new users and changed addresses (registration and profile) and the sender of the official Contact Form plugin.
- Typos:
[email protected]gets "Did you mean [email protected]?" - Dead domains: domains that don't exist, have no mail server, or accept no email.
- Throwaway addresses: Mailinator, 10minutemail and thousands more.
- Optional: shared inboxes (info@, sales@) and free providers (for work-address-only sites).
It runs on your own server. No account, no API key, no limits, and nothing is sent to BounceLens.
Install
In the control panel: Settings → Plugins → Plugin Store, search for BounceLens and install. Or with Composer:
composer require bouncelens/craft-email-check
php craft plugin/install bouncelens
Version 1.0.0. Craft CMS 4 and 5. License: GNU GPL version 2 or later. Public user registration needs Craft Pro (a Craft rule, not ours).
Settings
| Setting | Default | What it does |
|---|---|---|
| User registration and profile | On | New users and changed email addresses. Existing accounts can still be saved. |
| Contact Form plugin | On | The sender address of the official Contact Form plugin, when it is installed. |
| Also check in the control panel | Off | When off, administrators can still enter any address. |
| Domains that can't receive email | On | The domain does not exist, has no mail server, or says it accepts no email. |
| Typos of big providers | On | Shows the corrected address, e.g. gmail.com for gmial.com. |
| Disposable (throwaway) addresses | On | Blocks throwaway services, including their subdomains. |
| Shared addresses | Off | info@, sales@, support@ and similar team inboxes. |
| Free email providers | Off | Gmail, Yahoo, Outlook.com and others, for sites that want work addresses. |
| Always allow these domains | empty | One per line. These domains (and their subdomains) skip every check except the basic format. |
Your own forms
- Twig:
{% set problem = craft.bouncelens.check(email) %}gives the message to show, or nothing when the address is accepted. - PHP models: add the rule
['email', \bouncelens\craft\validators\EmailCheckValidator::class].
How it works
- The domain is looked up with your server's normal DNS (the MX record, then the A record). If DNS doesn't answer, the address is accepted, so a slow resolver never locks people out.
- It can't tell whether a mailbox really exists. That needs a conversation with the receiving mail server, which this plugin does not do.
Privacy
Addresses are checked on your own server and are not sent to BounceLens or anyone else. Only the domain name is looked up through your server's DNS resolver. The plugin stores nothing and adds no links or tracking to your site. See the Privacy Policy.
Support
Questions, a wrong result, or a form that isn't checked? Email [email protected] with your Craft version and the form you use. If a result looks wrong, the domain (the part after the @) is enough.
License
BounceLens Email Check is free software under the GNU General Public License version 2 or later. The list of disposable domains comes from disposable-email-domains (CC0, public domain).
Changelog
- 1.0.0 (October 2026): first release, for Craft CMS 4 and 5.