How to Verify an Email Address Without Sending an Email to It
Sending a message to verify an email address isn't ideal. Instead, check if the email address is valid without sending one. This article explains why and how.
Why You Should Always Verify Email Addresses Without Sending Emails
When you attempt to send an email to an invalid address, your message will bounce back like a boomerang. While this confirms that the address is really invalid (maybe it contains a typo or is no longer in use), it also has a very tiny impact on your sender's reputation.
You see, internet service providers (ISPs) keep a score of every email you send, and they don't look kindly on high bounce rates. A few bounces here and there aren't really a problem, but an attempt to send messages in bulk to a whole list full of invalid addresses could easily result in your ISP labeling you as a spammer.
Once you're tagged with the dreaded "spammer" label, your emails might start landing in spam folders instead of inboxes, or worse, they might not be delivered at all. And since it can be a huge pain in the butt to get rid of the label, it's much much better to always validate email addresses without sending emails to them.
3 Best Methods to Check If an Email Address Is Valid Before Sending
There are several ways how to verify an email address without sending an email message to it, and they all have specific pros and cons. Let's take a closer look at three methods that I consider the most useful: syntax validation, MX record checks, and mail list verification tools like VerifiedEmail.
Method 1: Perform Syntax Validation
The simplest check you can perform is to verify if the email address in question is in the correct format. Specifically, you can:
- Check for the presence of an "@" symbol.
- Verify that there's text before and after the "@".
- Make sure the domain has at least one period (".") after the "@".
- Check that there are no invalid characters in the email address, such as #$^&*() and so on.
This is very easy to do for a single or even a handful of addresses, but what if you need to check hundreds or thousands of addresses at the same time? That's actually no problem as well if you create a script with a regular expression based on the HTML5 specification. Here's how such a script may look like:
Windows (PowerShell):
$regex = '^[a-zA-Z0-9.!#$%&''*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$'
Get-Content emails.txt | ForEach-Object {
if ($_ -match $regex) {
Write-Output "Valid: $_"
} else {
Write-Output "Invalid: $_"
Linux/macOS (Bash):
#!/bin/bash
regex='^[a-zA-Z0-9.!#$%&'\''*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$'
while IFS= read -r email
do
if [[ $email =~ $regex ]]; then
echo "Valid: $email"
else
echo "Invalid: $email"
fi
done < emails.txt
macOS (ZSH):
#!/bin/zsh
while IFS= read -r email
do
if [[ "$email" =~ ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ ]]; then
echo "Valid: $email"
else
echo "Invalid: $email"
fi
done < emails.txt
To use these scripts, you need to save them as executable script files (use the .ps1 extension for PowerShell and .sh for Bash), place your addresses in a text file named "emails.txt" located in the same directory as the script, and, finally, execute the script in a terminal emulator.
The script will output all valid and invalid addresses. Of course, you could make the script even more useful by adding the ability to output only valid addresses into a new text file or even categorize the results so that it's clear why each address has been marked as invalid.
Unfortunately, just because an address is syntactically valid doesn't guarantee that it will functionally receive emails, so you should always go beyond just syntax checks.
Method 2: Perform MX Record Check
While syntax validation is a good start, it doesn't guarantee that an email address is actually functional. So, if you really want to learn how to check if an email is valid without sending, then familiarizing yourself with MX (Mail Exchanger) record checks should be your next step.
An MX record is a type of DNS record that specifies which mail servers are responsible for handling email for a domain. If such a record is present, then you know that the domain is set up to receive emails.
To perform an MX record check, you can use tools like the SuperTool by MXToolBox. You just need to enter the domain (such as davidmorelo.com) and click the MX Lookup button.
If MX records are found, then the likelihood of your messages to the address bouncing back is much smaller. And if a DMARC (Domain-based Message Authentication, Reporting, and Conformance) record is published as well (something SuperTool checks automatically), then it's almost certain.
The only problem is performing MX record checks one domain at a time can take a huge amount of time, and the automation of the process requires a library for DNS lookups or API services, such as those provided by MXToolBox. If you need to validate many email addresses without sending email and want to do so as effortlessly as possible, then the last method is the best option for you.
Method 3: Use an Email Verification Tool
Email list verification tools, also referred to as verifiers or checkers, are designed to validate email addresses without sending emails by combining multiple verification methods to give you the most accurate results possible.
Many mail verification tools are available, and they typically share the following features:
- Bulk processing: Validate email addresses without sending email in bulk
- Multiple checks: Combine syntax validation, domain checks, and other advanced methods
- Automation: Automate the verification process at the point of address collection for efficiency
- Reports: Gain insights into your email list with detailed reports
- Integrations: Easily integrate with email platforms and marketing tools
Best Tools to Verify Emails Without Sending Them
If you've decided that a third-party mail verification tool is the best way how to check if an email address exists without sending an email to it, then you're probably interested in knowing what your options are. Let's take a look at our favorite mail verification tools, starting with an option I've already recommended in the previous section of this article.
1. ZeroBounce
Price: ZeroBounce provides 100 monthly credits upon sign-up, with paid plans starting at $18 per month for 2,000 verifications, scaling up to $390 per month for 100,000 verifications.
ZeroBounce is a well-established mail verifier known for its high accuracy and comprehensive feature set. You can use it on the web or a mobile device to quickly identify more than 30 different types of invalid addresses, including spam traps, catch-all addresses, misspelled addresses, and more.
In addition to mail verification, ZeroBounce boasts a whole host of other tools that people who send a lot of emails are guaranteed to appreciate, including mail deliverability testing tools, a mail finder that makes it possible to search out new business contacts with nothing but a name and domain, or DMARC monitoring functionality for increased fraud protection.
Best for: Those who are interested mostly in established solutions even if it means paying a bit more.
2. Captain Verify
Price: Captain Verify offers 100 free credits upon sign-up, with paid plans starting at $7 per 1,000 verifications, and bulk pricing available at $200 for 100,000 verifications.
Captain Verify is a French-based service that's fully compliant with GDPR and ISO 27001 certified, making it a great choice for businesses that handle the personal information of customers from the European Union.
Besides all the standard features you might need to clean an email list, Captain Verify stands out with its unique HLR (Home Location Register) Lookup feature for mobile phone number verification. This capability allows businesses to check the validity of mobile numbers before initiating contact, and it even accounts for number portability.
Best for: EU-based businesses who naturally see GDPR compliance as one of their top priorities.
Conclusion
Verifying email addresses without sending emails is not just a best practice—it's a necessity. As we've explored, there are several methods to achieve this, ranging from simple syntax checks to sophisticated verification tools. Ultimately, the method you choose should align with your specific needs, budget, and the scale of your email operations.
Verify 500 emails for free. For lists over one-million emails, we will beat the price of any competitor, guaranteed.