Gravity Forms Email Validator
Level up your Email fields with automatic email address and domain validation.
What does it do?
Gravity Forms Email Validator enhances Email fields in Gravity Forms with automatic email and email domain validation. Additionally, it captures a variety of meta data about validated emails which can be used to filter entries; or in conditional logic for notifications and email feeds.
Features
- Email address validation.
Ensure submitted emails are real addresses. No more fake sign-ups. - Domain validation.
Allow or block email domains so they aren’t affected by validation results. - Easy access to validation details.
Get real-time insights on validation status and technical details straight from your WordPress dashboard. - Use email metadata in filters and conditional logic.
Send a notification every time a risky email is submitted. Use validation results to filter entries and email feeds (like MailChimp). - Boost your email campaigns.
Protect your sender reputation and improve deliverability by preventing bounces from risky emails at the source. - Catch typos as they happen.
Include a handy “Did you mean?” suggestion for potentially mistyped addresses via integration with Kickbox. - Automatic updates.
Get updates and the latest features right in your dashboard. - Legendary support.
We’re here to help! And we mean it.
Documentation
How do I enable this functionality?
GP Email Validator is automatically applied to all Email fields by default. It starts out with a local validator already set up with default rules (MX record check and blocking disposable emails). If that’s what you’re looking for, this one is plug and play!
For advanced email validation functionality, Email Validator is integrated with Kickbox and ZeroBounce.
To disable Email Validator for certain Email fields, go to the Perks tab in the field settings and uncheck Enable Email Validator.
Feature Details
Gravity Forms Email Validation
Any email entered into an Email field that has GP Email Validator activated is validated on submission. Validation ranges from basic mail exchange (MX) records checking to catching known spam addresses.
Validation Insights
Email Validator makes the validation status and technical details for successful validations accessible in the entry view.
Filtering by Validation Status
Email validation statuses and technical details are stored in the entry meta, making that data available for filtering entries and usable in conditional logic.
Example Use Cases:
- Manual Approval: For “risky” emails, configure notification conditional logic to only send out notifications after manual approval. (Available through snippet.)
- Entry Filtering: On the Entry List view, filter entries to display all those containing “risky” email statuses.
Validation Troubleshooting
When an email is rejected, form editors get an additional message—visible only to them—explaining why the email failed validation.
“Did You Mean?” Typo Suggestions
When integrated with Kickbox, Email Validator offers a handy “Did you mean?” suggestion. If Kickbox detects a potentially mistyped address, it will suggest an alternative email as a fix.
Settings
GP Email Validator’s settings are found in Forms > Settings > Email Validator. Changes made here will affect all instances of GP Email Validator across all forms.
Validator Services
GP Email Validator offers three different validator services that provide different sets of rules and technical details.
Lean more about each:
Domain Validator
Use this setting to validate emails based on specific domains. You can create a list of domains to be either blocked or allowed automatically regardless of the result of the email validation. List one email domain per line.
Domain Validator Mode
- None: Disables domain validation.
- Allow: Only accept emails from listed domains.
- Block: Reject emails from listed domains. Addresses from blocked domains will be blocked even if they pass email validation.
Validator Service: Basic
Basic is a built-in local email validation tool that uses PHP for simple email validation. With it, GP Email Validator can validate whether an email has MX records configured and if it’s from a disposable or free email provider.
Basic Validator Rules
You can choose between “Use default rules” and “Use custom rules.” Here’s a list of all rules:
- Require configured MX record (Default)
- Submitted address must have valid MX records configured.
- Block disposable emails (Default)
- Blocks disposable / temporary email addresses from being submitted.
- Example:
temp-email@trashmail.com
- Block free email accounts
- Blocks free email services (like Gmail, Yahoo, etc.) from being submitted.
- Example Use: Only allowing professional email addresses to sign up to your site.
- Flag Gmail accounts that use the “plus trick” and return a sanitized email address
- Removes the plus part from Gmail addresses.
- Example: User submits
dave+trash@gmail.com
. Entry capturesdave@gmail.com
. - Why is this useful? Gmail offers the ability to create unique email addresses within a Google account by adding a
+
and a unique identifier after the username portion of an email address. If not explicitly checked for, a user can create unlimited unique email addresses that belong to the same account.
Basic Technical Details
Once an entry is submitted, GP Email Validator collects the results from the validation and includes them in the entry meta. To view these technical details, navigate to the entry and mouse over the status icon.
Validator Service: Kickbox
To use Kickbox as a validator service, you need a Kickbox account. Kickbox is an email validation tool that aims to streamline the email verification process, emphasizing simplicity and ease of use. In line with this, they provide a numerical quality indicator through their proprietary Sendex™ score. Their pricing structure is pay-as-you-go for up to one million verifications.
Don’t have a Kickbox account? Sign up using our link!
(All links to Kickbox are affiliate links. We’ll receive a small kickback if you choose to sign up. 😄)
Generating Kickbox API key
We recommend creating your first key in Sandbox Mode to test GP Email Validator against mock results without deducting any verification credits from your account.
When using Sandbox Mode, you can simulate results by including certain keywords in the mock emails, like so: jane+invalid-email@awesome.com
For a full list of simulations, check out Kickbox’s Sandbox Mode documentation.
Kickbox Validator Service Settings
Mode
Choose between Live (”Production”) and Sandbox (”Sandbox”) mode according to your Kickbox API key. Live mode will use verification credits while Sandbox mode is for testing.
Keep in mind: results from Kickbox’s Sandbox Mode are not real.
Rejection Criteria
Select which Kickbox results should cause the email to be rejected:
- Risky: Submitted address has quality issues (like accept-all domains, disposable emails, or role addresses).
- Unknown: Validation was unable to get a response from the mail server.
- Undeliverable (Default): Submitted address does not exist.
As a rule of thumb, Kickbox recommends only rejecting Undeliverable emails and making your own judgement call about Risky and Unknown emails.
Read more details about validation results in Kickbox’s documentation.
Syntax & Typo Detection: Did You Mean?
Activate this checkbox to enable Kickbox’s syntax and typo detection, aka “Did you mean?” suggestions for misspelled emails.
Email suggestions are in beta with Kickbox. Contact Kickbox support to provide feedback.
Kickbox API Technical Details
A successful API call response from Kickbox discloses technical details about the validated email, which GP Email Validator includes in the entry meta. To view these details, navigate to the entry and mouse over the status icon.
- Result: One word summary of the verification outcome.
- Possible results:
deliverable
,risky
,unknown
,undeliverable
- Possible results:
- Reason: Specific reason behind the verification outcome.
- Example: Result:
undeliverable
Reason:rejected_email
- Example: Result:
- Role Address: “Yes” if the email address is a role address, “No” if it isn’t.
- Example:
support@gravitywiz.com
is a role address.
- Example:
- Free Email: “Yes” if the email address is from a free email provider, “No” if it isn’t.
- Example: Gmail and Yahoo are free email providers.
- Disposable: “Yes” if the email address is utilizing a disposable / temporary email service, “No” if it isn’t.
- Example: TrashMail and Mailinator are disposable email services.
- Accept All: “Yes” if the email address is from an “accept-all” email provider, “No” if it isn’t.
- Explanation: An “accept-all” (or “catch-all”) email domain is set to accept all emails sent to it, even if the email address doesn’t exist.
- Sendex™ Score: 0 (lowest) to 1 (highest).
- Explanation: A Sendex™ value is Kickbox’s proprietary indicator of the quality of an email address. Read more about Sendex™ here.
Validator Service: ZeroBounce
To use ZeroBounce as a validator service, you need a ZeroBounce account. ZeroBounce is an email validation service that focuses on data security and privacy. Additionally, they provide advanced tools like blacklist monitoring and activity tracking. They offer both monthly and pay-as-you-go pricing structures, as well as a subscription for their Deliverability suite.
Don’t have a ZeroBounce account? Sign up using our link!
(All links to ZeroBounce are affiliate links. We’ll receive a small kickback if you choose to sign up. 😄)
Generating ZeroBounce API Key
ZeroBounce does not differentiate API keys between Live Mode and Sandbox Mode.
ZeroBounce Validator Service Settings
Mode
Choose between Live and Sandbox mode. Live mode will use verification credits while Sandbox is for testing.
We recommend starting with Sandbox Mode to test GP Email Validator against ZeroBounce’s sandbox email addresses without deducting any verification credits from your account.
Rejection Criteria
Select which ZeroBounce statuses should cause the email to be rejected:
- Catch-all: Submitted address is from a “catch-all” (or “accept-all”) domain. These domains are set to accept all emails sent to them, even if the email address doesn’t exist.
- Unknown: Validation was unable to get a response from the mail server.
- Invalid (Default): Submitted address is invalid.
- Do Not Mail (Default): Submitted address is a company email, role address, or addresses that should be avoided (like known spammers and direct complainers).
- Spam Trap (Default): Submitted address is believed to be a spam trap (aka an email honeypot).
- Abuse (Default): Submitted address is known to frequently mark emails as spam or click on “Report Abuse” links.
Read more details about validation statuses in ZeroBounce’s documentation.
ZeroBounce API Technical Details
A successful API call response from ZeroBounce discloses technical details about the validated email, which GP Email Validator includes in the entry meta. To view these details, navigate to the entry and mouse over the status icon.
- Status: One word summary of the verification outcome. Possible statuses include
valid
,catch-all
,unknown
,invalid
,do_not_mail
,spamtrap
,abuse
- Sub Status: Specific reason behind the verification outcome.
- Example: Status:
do_not_mail
Sub Status:possible_trap
- Example: Status:
- Domain Age: The age of the email address’ domain in days.
- Free Email: “Yes” if the email address is from a free email provider, “No” if it isn’t.
- Example: Gmail and Yahoo are free email providers.
- MX Found: “Yes” if the email address’ domain has an MX record, “No” if it doesn’t.
- SMTP Provider: The email’s SMTP provider.
- Example: SendGrid and Google Workspace are SMTP providers.
- Processed At: The exact date and time the validation was processed.
Developer’s Notes
The Basic validation service is powered by the Email Validator PHP library created by stymiee.
FAQs
How can I use email validation statuses in conditional logic?
Install our Conditional Logic: Entry Meta snippet and you’re ready to go!
What happens if the validator encounters temporary issues with a mail server (e.g., server down)?
If you’re using either Kickbox or ZeroBounce, temporary issues with mail servers return an Unknown status. If rejection criteria allows for Unknown validation statuses to be submitted, the entry will go through and the reason will be specified in the technical details.
Neither service charges for Unknown results, so you can safely validate the email again manually.
If you’re using Basic validation, it does not attempt to communicate with mail servers, so the entry will go through.
Known Limitations
- If “Flag Gmail accounts that use the “plus trick” and return a sanitized email address” option is enabled, the No Duplicates field setting will not be honored.
- Example: If the email
original@gmail.com
already exists in an entry, another submission withoriginal@gmail.com
would be blocked, but a submission withoriginal+trash@gmail.com
would not. - We’re working with Gravity Forms to resolve this issue.
- Example: If the email
- Addresses from allowed domains will still be blocked if they don’t pass email validation.
- Example: If you want to block free domains but allow
gmail.com
, skip blocking them through the Email Validator and create a list of blocked domains in the Domain Validator.
- Example: If you want to block free domains but allow
Translations
You can use the free Loco Translate plugin to create translations for any of our Perks. If you’ve never used Loco translate before, here’s a tutorial written for beginners.
Hooks
No posts found.
Gravity Forms has hundreds of hooks. Check out our Gravity Forms Hook Reference for the most thorough guide to Gravity Forms’ many actions and filters.
Related Resources
No related resources found.