All posts

How to Clean a Keap Email List: Export, Verify and Re-Import

··5 min read

To clean a Keap email list, export your contacts with their Keap IDs, take out opted-out and bounced contacts, verify the remaining addresses, and re-import the results into a custom field or tag. Then send broadcasts only to the valid group. Keap calls a hard bounce rate above 5% per email provider excessive, and an import never changes a contact's email status, so the field is how you act on the results.

Keap's help for Keap Pro and Max is now hosted on Thryv's help centre, and Max Classic help is still on help.infusionsoft.com. Both were read on 2 November 2026.

Keap's thresholds

Rule What Keap says Source
Hard bounces "above 5% per email provider to be excessive" Email bounce types
Consequence At risk of being contacted by the Keap Email Compliance Team Same page
Spam complaints Over 0.1% per provider over 30 days Spam complaints
Purchased lists Not allowed; importing one puts the account at risk of suspension Best practices for importing
Old contacts 91+ days of no engagement: "Do not import" Same page

"Per email provider" is the detail to notice. A list can bounce 3% overall and still cross 5% at one provider, often a company domain group or an old ISP address set. A disabled Broadcast Builder is Keap's sign that there is a compliance issue.

How Keap handles bounces

From the same bounce article: hard bounces are "automatically disabled", and soft bounces go into a "12-hour retry queue" before being recorded as "Hard Bounce (Timeout)" if they keep failing. Keap's list hygiene guide suggests suppressing addresses after three to five soft bounces.

Each address only gets disabled after it has already bounced. Verification finds the dead ones without sending.

Step 1: Export contacts with their IDs

Keap Pro or Max (export contacts):

  1. Go to Contacts, then People.
  2. Filter if you want a subset, then select contacts or Select All.
  3. Click Export at the bottom of the page.
  4. Up to 1,000 contacts download immediately as CSV. Above that, Keap emails a link from noreply@keap.app that is valid for 24 hours, and the person opening it must be able to log in to Keap.

Notes and tags are not included in the export. If you need tags, Keap points to the Tag Tracker report.

Max Classic (export data):

  1. Go to CRM, then Contacts, and run a saved or new search.
  2. Select the results, choose Actions, then Export.
  3. Tick the fields. Keap's own tip: "If you plan to do an update import, include the ID field."
  4. Choose CSV, Excel or ZIP and click Process.

Step 2: Find and remove unmailable contacts

Use Keap's Email Status Search report to see who you should not be checking (email statuses). In Pro/Max it is under Reports; in Max Classic, Marketing, then Reports, then Email Status Search.

Keap's statuses include Confirmed, Unconfirmed (Single Opt-In), Invalid Email, Non-Marketable, Soft Bounce, Hard bounce, Unengaged Marketable, Unengaged Non-Marketable, Opt-Out, Reported SPAM and List Unsubscribe (email status explained). Leave out:

  • Hard bounce, Invalid Email and Soft Bounce contacts that keep failing
  • Opt-Out, Reported SPAM and List Unsubscribe contacts
  • Non-Marketable contacts you have no permission to email

Then remove duplicates with remove duplicate emails. Max Classic runs no duplicate check on import, so duplicates there are common.

Step 3: Verify

Upload the file on the verify page. Each address gets a live mailbox check and the Contact ID column stays next to it. Try a sample with the CSV email verifier if you want to see the split first.

Result What to write back
Valid Email check = Valid
Catch-all Email check = Catch-all; send in smaller batches after the valid group
Unknown Email check = Unknown; re-check later
Invalid Email check = Invalid; exclude from broadcasts
Disposable Email check = Invalid

Small-business lists in Keap often mix free-mail addresses with company and old ISP domains. Should you email catch-all addresses covers the company domains that cannot be confirmed.

Step 4: Re-import the results into a field or tag

Because Keap never changes email status through an import, create a custom field (for example Email check, a dropdown) or a set of tags, and import the results into that.

Keap Pro or Max (import contacts):

  1. Build a CSV with Email and Email check only. Keep it to 5,000 contacts per file; the email list splitter splits larger files.
  2. Go to Contacts, then People, then Import contacts, then My spreadsheet.
  3. Map Email and map the result column to your custom field, or use Add as custom field.
  4. Apply a tag such as Email check 2026-11. Keap also adds its own import tag with the date and time.
  5. Keap matches duplicates on email and updates the existing contact. Email status is never overwritten.

Max Classic (update contacts with a CSV):

  1. Go to Admin, then Data Cleanup, and use the Modify Existing Records import, matched on Contact ID.
  2. Include the Keap Contact ID column and the result column only. Empty fields are skipped.
  3. Do not map anything to "Your Systems Contact ID".

Keap warns that these overwrites are permanent and cannot be reversed. Map only the result field so nothing else changes.

Step 5: Filter every broadcast on the field

  • Build a saved search of Email check is Valid and use it for broadcasts.
  • Send to Email check is Catch-all separately, in smaller groups.
  • For invalid contacts you never want emailed again, opt them out with a mass update. Keap's mass update action works on a search result.

Watch hard bounces per provider in the broadcast report for the first few sends after a clean-up.

Before importing new contacts

Keap's best practices for imports line up with the same clean-up: only contacts who gave explicit permission, no purchased lists, and remove opted-out, hard-bounced, spam-reported and non-marketable contacts first. Verify the file before it goes in, and leave contacts with no engagement for over 91 days out, as Keap advises, or send them a re-permission email from elsewhere first.

Checklist

  • Export includes Contact ID and Email
  • Opted-out, bounced and spam-reported contacts left out
  • Duplicates removed
  • Every address verified
  • Results imported into a custom field or tag, 5,000 per file on Pro/Max
  • Broadcasts filtered to Email check = Valid

Verify your Keap export

Upload your Keap export on the verify page. You get 100 free email checks when you sign in with Google, no card, enough to check a sample before you clean the whole list. For bigger lists, monthly plans are on the pricing page.

Common questions

What bounce rate is too high in Keap?

Keap's help centre says it considers a hard bounce rate above 5% per email provider excessive, and that such accounts are at risk of being contacted by the Keap Email Compliance Team. For spam complaints, it treats more than 0.1% per provider over 30 days as excessive.

How do I export contacts from Keap?

In Keap Pro or Max, go to Contacts, then People, select contacts or Select All, and click Export at the bottom of the page. Up to 1,000 contacts download immediately as CSV; above that Keap emails a link that is valid for 24 hours. In Max Classic, run a contact search, select the results, choose Actions, then Export, tick the fields including ID, and click Process.

Does re-importing contacts change their email status in Keap?

No. Keap's import guide says email status is never automatically overwritten by an import, and Max Classic says re-importing will not change the status of opted-out contacts. Store the verification result in a custom field or tag instead, and use it to filter broadcasts.

Can I import a purchased list into Keap?

No. Keap says you cannot import purchased, rented or shared lists, and that an account known to have imported a purchased or scraped list is at risk of suspension. It also advises not importing contacts with more than 91 days of no engagement.

How many contacts can I import into Keap at once?

Keap Pro and Max accept up to 5,000 contacts per file and check duplicates by email automatically. Max Classic accepts CSV files up to 10MB and does not run a duplicate check during import.

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.