ZapBounce and HubSpot
To add email verification to HubSpot, check the address before the contact is created. ZapBounce does that three ways: your form handler calls the ZapBounce API on submit, a Zapier step checks each new contact, and a CSV export goes through a bulk upload.
The timing matters because HubSpot bills by marketing contact and marks an address as bounced after a hard failure. Both make a dirty import expensive, and both are slow to undo once they've happened.
A bounced contact stays bounced and stays billable
HubSpot flags a contact as bounced after a hard failure and leaves it out of marketing email from then on. If the address was a typo at a form, the real person behind it never hears from you again.
Marketing contacts are HubSpot's billing unit, and a contact set to non-marketing stops counting at the next renewal, not straight away. So a dead address you imported in January stays on the bill until the cycle turns.
Workflows enroll on contact creation, which means one import can start every enrollment at once. Our HubSpot bounce-rate guide covers what those bounces do to the account.
How the data moves
Check at the form, before HubSpot sees it
Your form handler sends the address to
POST /v1/verifyand gets an answer in one call. An invalid status or adisposableflag goes back to the visitor, which lets them fix a typo. See real-time verification.Check new contacts in a Zap
A Zap on HubSpot's new-contact trigger runs a ZapBounce check and writes the result to a contact property. Your workflows can then branch on that property.
Clean the existing database by file
Export contacts as CSV, upload the file on the bulk page, and import the results back. Your script polls the job status to know when the file is ready.
Set invalid contacts to non-marketing
That stops the sending and takes them off the billable count at the next renewal, while you keep the record and its deal history.
Setting it up
- Create a dropdown contact property for the result with four values (valid, invalid, catch_all, unknown), a checkbox each for the role and disposable flags, and a date property for the check.
- Export existing contacts as CSV with the properties you care about.
- Verify the file and import the results back, matching on email so contacts update rather than duplicate.
- Build an active list filtered on the result property for marketing sends, and use the same property as a workflow branch.
- Set contacts marked invalid to non-marketing rather than deleting them.
- Add the verify call to your form handler, or a Zapier step on new contacts, so every new record arrives with a result.
HubSpot: common questions
How do I add email verification to a HubSpot form?
Call ZapBounce's verify endpoint from your form handler before the submission reaches HubSpot. Reject an invalid result or a disposable address, and ask the visitor to retype it. Each check costs one credit, and unknown results cost nothing.
Can a HubSpot workflow branch on the verification result?
Yes. Store the result in a dropdown contact property, from a Zapier step or a file import, and use that property as the branch condition. Valid contacts go to the email path and catch_all contacts to a slower one.
Does setting a contact to non-marketing reduce the bill immediately?
It takes effect at the next renewal. Plan the clean before a billing cycle turns if the saving matters.
Should the result be a property or a list?
A property. Lists are built from properties, and a property can sit beside a check date that tells you when to verify again.
Check a HubSpot export today
100 free checks a month, no card. Unknown results are refunded.