HubSpot Sequences: Verify Contacts Before You Enroll Them
Verify HubSpot contacts before you enroll them in a sequence, because sequences send from your own connected Gmail or Outlook inbox and every bounce counts against that mailbox. The simple setup is a verification status property, an import to fill it, and an enrollment list that only includes valid contacts.
This guide covers sales sequences specifically. For cleaning the whole HubSpot database for marketing email, see how to clean HubSpot contacts.
Why sequences are different from marketing email
HubSpot marketing emails go out through HubSpot's sending infrastructure. Sequences do not: they are sent from the rep's connected inbox, so they look like normal one-to-one email.
That has two consequences:
- Bounces hit your own mailbox. A sequence that bounces 8% of the time is your Google Workspace or Microsoft 365 account bouncing 8% of the time.
- Your everyday email shares the damage. The same mailbox sends proposals, follow-ups and replies to customers. If its reputation drops, those land in spam too.
Mailbox providers also limit how much a single inbox can send. A sequence that hammers dead addresses wastes that daily budget.
Step 1: Create a verification property
In HubSpot settings, create a contact property:
- Label: Email verification status
- Field type: Dropdown select
- Options: valid, catch-all, risky, invalid, unknown
- Optionally a date property: Email verified on
Having a date matters. A contact verified a year ago is not as safe as one verified last week.
Step 2: Export the contacts you plan to enroll
Build a list of contacts you want in the sequence, then export it with the record ID and email. Exporting only the target group is cheaper and faster than verifying the whole database each time. The HubSpot export guide shows which columns to include.
Step 3: Verify the file
Upload the export to the verify page. Each address comes back with a status. Map them to your property options:
| Result | Sequence handling |
|---|---|
| Valid | Enroll |
| Catch-all | Enroll later in small batches |
| Risky or unknown | Hold; re-check before enrolling |
| Disposable | Do not enroll |
| Invalid | Do not enroll; find a new address or use another channel |
Step 4: Import the results back
Import the verified file into HubSpot, matching on record ID or email, and map the status column to your new property. Matching on record ID updates existing contacts instead of creating duplicates; test with a small file first.
Step 5: Enroll only from a filtered list
Create an active list with:
- Email verification status is valid
- Email verified on is in the last 30 days (or whatever window you choose)
- Not currently enrolled in another sequence
Enroll from that list. Reps who enroll contacts one at a time from a record should check the property first; a visible card on the contact record helps.
Step 6: Automate it if you enroll often
If your team enrolls new contacts every day, manual exports get skipped. Options:
- A HubSpot workflow that calls a verification API when a contact is created, covered in verify emails with a HubSpot workflow.
- A Zapier or Make step between your lead source and HubSpot, so new contacts arrive already verified.
Catch-all contacts in sequences
Many B2B companies run catch-all mail servers, which accept every address during an SMTP check. You cannot confirm the mailbox exists until something bounces later. For sequences:
- Enroll valid contacts first, catch-all contacts afterwards.
- Cap catch-all enrollments per rep per day.
- Watch bounces closely during the first step of the sequence.
Should you send to catch-all emails goes deeper.
When a sequence starts bouncing anyway
If bounces climb mid-sequence:
- Pause new enrollments.
- Export bounced contacts with the bounce reason.
- Check whether bounces are "mailbox does not exist" (a list problem) or policy blocks (a reputation or authentication problem). The bounce message analyzer sorts pasted bounce text.
- Re-verify contacts that were enrolled from older data.
How often to re-verify sequence contacts
Business email decays steadily: people change jobs, companies change domains and mailboxes get shut down. A contact verified when they were first imported may not be valid six months later. Practical windows:
| Contact age since last check | Before enrolling |
|---|---|
| Under 30 days | Enroll |
| 1 to 3 months | Enroll; re-verify if the list came from a data vendor |
| 3 to 6 months | Re-verify first |
| Over 6 months | Re-verify, and expect more invalid results |
The email list decay calculator gives a rough estimate of how much of an older list may have gone bad, which helps decide whether a re-check is worth it.
Sharing the rules with the sales team
Verification only helps if reps follow it. A few things make it stick:
- Add the verification status to the default contact view, so reps see it before they click "Enroll".
- Explain why: the bounces land on their own inbox, and that inbox also carries their deals.
- Give managers a weekly report of sequence bounces by rep, so problems show up early.
- Make the enrollment list the default starting point for new sequences.
A sequence hygiene checklist
- Verification status and date properties exist
- Enrollment list filters on valid and recent
- Catch-all contacts enrolled separately and capped
- Contacts older than a few months re-verified before re-enrollment
- Bounce reasons reviewed weekly
Quick answers for reps
- Can I enroll a contact without a status? Verify first; it takes seconds for one address.
- The contact replied before, but now shows invalid. They may have left the company. Check LinkedIn before re-enrolling.
- The status is catch-all. Enroll only within the daily catch-all cap.
Verify before your next enrollment
Export the contacts you plan to enroll and upload them on the verify page. You get 100 free email checks when you sign in with Google, no card. If your team enrolls every day, monthly plans are on the pricing page.
Common questions
Do HubSpot sequences verify email addresses?
HubSpot does not run a full mailbox check before a sequence email goes out. It records bounces after they happen and typically stops the sequence for that contact. Verifying before enrollment prevents the bounce in the first place.
Why do bounces in HubSpot sequences matter so much?
Sequence emails go out from your own connected inbox, such as a Google Workspace or Microsoft 365 mailbox. Bounces count against that mailbox and domain, which also carries your normal one-to-one email.
How do I mark verified contacts in HubSpot?
Create a custom contact property such as 'Email verification status', import your verified file to update it, and build an active list or view that only includes contacts marked valid. Enroll from that list.
Should I enroll catch-all contacts in a sequence?
Carefully. Catch-all domains accept every address at the SMTP stage, so some will bounce later. Enroll them in smaller numbers, after your valid contacts, and watch the bounce rate.
Check your list before you send
Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.