Email Validation Integration for Klaviyo Forms
The ZeroBounce Klaviyo Form integration adds real-time email validation to Klaviyo onsite sign-up forms (embedded, popup, flyout, and full-page).
This page covers the Klaviyo Form widget. For cleaning and scoring existing Klaviyo lists, see the official Klaviyo Integration documentation.
Prerequisites
You must have an active Klaviyo account and an active ZeroBounce account.
If you do not have access to the mentioned accounts, you can create them using the following links:
How to set up the Klaviyo Form integration
Once you have access to Klaviyo and ZeroBounce, proceed with the following steps:
Step 1
Go to https://www.zerobounce.net/members/signin and sign in with your ZeroBounce account. Then, go to the left menu, open Email Validation, and click Integrations.
Step 2
On the Integrations page, select Klaviyo Form from the integration list. You can find it under the Form Builder category.
Step 3
A Redirect to Klaviyo Form modal appears. This step sends you to Klaviyo’s authentication site. After you authenticate, you are redirected back to ZeroBounce.
Click Connect to continue.
Step 4
Klaviyo may show a standard screen stating that the ZeroBounce Forms app has not been reviewed by Klaviyo’s partner team. This is expected, because it is a new integration.
You can continue the setup by clicking Continue — it is entirely secure.
Step 5
On the next screen, Klaviyo asks you to allow ZeroBounce Forms to access your account’s information. The requested permission is Accounts — View account details.
Click Allow to complete the connection. You can remove access later from the integration settings in Klaviyo.
Step 6
After you click Allow, Klaviyo redirects you back to ZeroBounce. You land on the Klaviyo Form integration, which has three views: Dashboard, Settings, and Logs. Use the Connected integrations dropdown at the top to switch between installs, or click + New Integration to connect another Klaviyo account.
Dashboard
The Dashboard view shows the connection status from Klaviyo.
- Status — Connected when OAuth completed successfully
- Klaviyo account — The Klaviyo account name you authorized
- Install date — When this integration was connected
Click Disconnect to remove the connection. OAuth alone does not validate emails on your forms; you still need to add the widget snippet (see Install below).
Install
On the Dashboard, the Install section explains how to add the ZeroBounce widget to your website.
OAuth install is not enough. Visitors only get validation when both klaviyo.js and the ZeroBounce widget script are present on the same pages as your Klaviyo forms.
Widget snippet
Click Copy snippet. The snippet includes your install accountToken and the CDN script. Do not put your ZeroBounce API key in the browser.
The copied snippet looks like this (your apiUrl and accountToken are unique to this install):
The snippet values follow your Settings → Validation options. After you change those settings, copy the snippet again.
Setup Steps:
- Verify Klaviyo is installed — Confirm that klaviyo.js is already on the site (theme, Shopify/WooCommerce app, or tag manager). You need Klaviyo’s public site ID (company_id), not an OAuth secret.
- Add the ZeroBounce snippet — Paste it on the same pages as the Klaviyo forms (theme footer, a custom HTML tag, or the equivalent in your tag manager).
- Test validation live — Publish, open a Klaviyo signup form, and type an email. You should see validation feedback.
- Handle embedded forms separately — Embedded forms also need the Klaviyo embed div from the form editor. Popups and full-page forms usually only need klaviyo.js plus display rules.
Settings
Open Settings (next to Dashboard and Logs). Settings has two tabs: Configuration and Forms. Click Save Changes after you edit either tab.
Configuration — General
- Throttle — Max validations per minute per visitor.
- Allowed domains — Required. Add the domains where the widget is allowed to run (for example example.com). Requests from any other domain are rejected. Add one entry per domain and remove an entry with its x.
- Debug mode — When enabled, API usage limits are bypassed, so you can freely test and configure your form. Credits are still charged for each API request.
- API timeout behavior — What happens when the API does not respond within the allowed time: Allow all submissions or Block all submissions.
- API timeout (milliseconds) — The allowed time to wait for the API to respond before the timeout behavior is applied. Default is 8000.
- Custom invalid email message — Optional inline error in the widget when the email does not pass. Maximum 500 characters.
- Show disclaimer on possible typo — When on, the widget shows a suggested correction when ZeroBounce detects a likely typo. The custom error message you provide is added before the suggested correction.
- Show ZeroBounce logo — Shows the ZeroBounce logo on validated forms. Turn it off to hide it.
Configuration — Validation
Next to When to validate, choose how the widget triggers a validation: Validate on blur (default) or Validate after idle typing.
- When to validate — Validate on blur checks the address as soon as the visitor leaves the email field. Validate after idle typing waits until the visitor stops typing, then validates after a set delay.
- Idle delay (milliseconds) — Shown when you select Validate after idle typing. Milliseconds to wait after typing stops before validating. Default is 500.
- Email will pass on status — Emails matching any of the selected statuses are treated as valid (Valid, Invalid, Catch-All, Unknown, Spamtrap, Abuse, Do Not Mail). Unchecked statuses do not pass.
- Block free email services — When on, addresses from Gmail, Yahoo, Outlook, and similar free providers do not pass.
If you save these changes, you must use the updated widget snippet from the Dashboard tab.
Forms
The Forms tab is an optional allowlist. Forms are auto-discovered on the storefront via klaviyoForms events — no embed code is required here.
- Leave the list empty to validate every discovered Klaviyo form.
- Search by name or form ID, then select only the forms that should be validated.
- Click Refresh forms if a new form does not appear yet.
Logs
The Logs view shows validation activity returned by the ZeroBounce API: a monthly chart, a table of recent validations, and a details panel for each row.
Validations this month
The chart counts each validation status returned by the API for the current month.
- The title shows the total for the month (for example Validations this month: 146).
- Series in the legend: Valid, Invalid, Catch-All, Unknown, Spam Trap, Abuse, Do Not Mail, Block Free Services.
- Scroll horizontally to see earlier dates.
- Use + and − to zoom the timeline.
Recent validations
Below the chart, Recent validations lists the latest 50 results, 10 per page. Click Export all to download the log.
- ColumnWhat it shows
- EmailThe address that was validated
- StatusThe ZeroBounce status (valid, invalid, catch-all, unknown, abuse, and others)
- Sub-statusExtra detail when the API returns one (for example dns_error, disposable)
- Validated atDate and time of the validation
- DetailsOpens the full record
Validation details
Click View details on a row to open the record for that email.
- Email — The address that was checked
- Status — The ZeroBounce status
- Sub-status — Extra detail from the API, or empty
- Passed — Yes if the result matched your Email will pass on status settings; otherwise No
- Credits used — Whether a credit was charged (for example Yes — 1 credit)
- Validated at — Date and time of the validation
- Free email — Yes for Gmail, Yahoo, Outlook, and similar providers; otherwise No
- Did you mean — A suggested correction when the API detects a typo; otherwise —
- Account — The local part of the address
- Domain — The domain part of the address
Was this page helpful?
