CMS
WordPress + Kawaa
Verify emails on your WordPress site
Download the Kawaa plugin for WordPress and install it on your site. It checks email fields as visitors fill them in and again when the form is submitted in Contact Form 7, WPForms, Gravity Forms, Elementor Pro forms and the WooCommerce classic checkout. The plugin is not listed on WordPress.org.
What the plugin does
- Real-time form validation
- Multiple form plugin support
- JavaScript and PHP integration
- Custom error messages
- WooCommerce classic checkout validation
Setup
How to set up
Create a key for the site
Sign up for Kawaa, then create a key just for this site under Settings > API keys. Choose Custom and tick only verification:write and account:read: the plugin uses the first to check addresses and the second for Test API Connection. A key with only these cannot change your settings, billing, team or keys, but it can spend credits and read your verification results, so keep it secret.
Install the plugin
Download the ZIP from this page, then in WordPress choose Plugins > Add New > Upload Plugin. Activate it and save your API key under Settings > Kawaa. The plugin keeps the key on your server and proxies form checks through a WordPress REST route, so the key is never exposed to the browser.
Configure form validation
Under Settings > Kawaa, turn on email verification and select the form integrations you use.
Customize messages
Set custom error messages for invalid or risky email addresses.
Use cases
What teams do with WordPress and Kawaa
Newsletter signup validation
Contact form spam prevention
User registration validation
WooCommerce classic checkout verification
FAQ
Frequently asked questions
- Which form plugins are supported?
- The plugin hooks Contact Form 7, WPForms, Gravity Forms, Elementor Pro forms and WooCommerce (the classic checkout, registration and account details) directly. Any other form, Ninja Forms included, can be checked by calling the plugin's WordPress REST route from your own code.
- Does this slow down my forms?
- Verification happens asynchronously, so the impact depends on your form configuration and the response path for that email.
- What if verification is unavailable or the daily limit is reached?
- The plugin allows the form to submit when Kawaa cannot return a verdict (including an address it rates unknown, which the minimum quality score does not apply to) or the site reaches its configured daily verification limit. It does not mark the address as verified. Change the daily limit under Settings > Kawaa.
- Does it work with full-page caching?
- Exclude pages with a checked form from your full-page cache, or keep cached copies younger than 12 hours. The in-page check sends a WordPress nonce that is part of the page and expires after 12 to 24 hours. With an expired one the check falls back to no verification: a native HTML form is sent unchecked, and a form from one of the supported form plugins is checked only when it is submitted.
- Can I validate emails on WooCommerce checkout?
- On the classic checkout, yes: the plugin checks the billing email when the order is placed. The Checkout block, the default for new stores since WooCommerce 8.3, is not supported yet. It places orders through WooCommerce's Store API, which does not run the checkout validation hook the plugin uses.
Verify emails from your WordPress forms
Get started with 100 free verifications. No credit card required.